# Create contribution **POST /api/v2/household/{HouseholdGUID}/savings/{SavingsGUID}/contributions** This endpoint allows users to create a new savings contribution. When the parent savings has the DefaultAccount set to 1, you cannot create savings contributions. ## Servers - https://api.fincalc.co.uk: https://api.fincalc.co.uk () ## Authentication methods - Bearer auth ## Parameters ### Path parameters - **HouseholdGUID** (string(uuid)) The HouseholdGUID of the client. - **SavingsGUID** (string(uuid)) The SavingsGUID you want to create a contribution for. ### Body: application/json (object) - **TransactionType** (integer) If SavingsType is any of the following: 7, 8, 9, 10, 14, 16, 21 or 22 then the allowed types are 2, 3, 12 and 13. Otherwise, if SavingsType is any of the following: 11, 12, 17, 18, 19 then the allowed types are 2, 3 and 12. Otherwise, if SavingsType = 3 then the allowed types are 2, 11, and 12. Otherwise, if SavingsType = 6 then the allowed types are 2, 3, 11, and 12. Finally, if none of the above conditions are met then the allowed types are 2 and 12. - **LinkedSavingsGUID** (string(uuid) | null) This field is required if the value of TransactionType = 11 or the value of TransactionType = 12. The value of LinkedSavingsGUID can not be the same as the SavingsGUID that this contribution is linked to. To retrieve a comprehensive list of acceptable values and their corresponding formatted values, you may make a request to the designated endpoint: /api/v2/household/{HouseholdGUID}/savings/contributions/options - **TransactionAmount** (number(float) | null) This field is required unless one of the following conditions is met: - 'TransactionType' is '11', or - 'TransactionType' is '3' and 'TransactionPercentage' is not '0' or 'NULL', or - 'TransactionType' is '12', 'LinkedSavingsGUID' is not equal to '00000000-0000-0000-0000-000000000000', and 'TransactionPercentage' is not 0 or NULL. If none of these conditions are met, the field is required and must be greater than 0. - **TransactionPercentage** (number(float) | null) This field is required and must be greater than 0 if any of the following conditions are met: - `TransactionType` is `3` and `TransactionAmount` is not '0' or 'NULL', or - `TransactionType` is `12`, `LinkedSavingsGUID` is not equal to `00000000-0000-0000-0000-000000000000`, and `TransactionAmount` is not '0' or 'NULL'. - **Frequency** (integer | null) This field is required if TransactionType is not = 11. This field must be set to 1 if TransactionType = 13. To retrieve a comprehensive list of acceptable values and their corresponding formatted values, you may make a request to the designated endpoint: /api/v2/household/{HouseholdGUID}/savings/contributions/options - **StartBasis** (integer) To retrieve a comprehensive list of acceptable values and their corresponding formatted values, you may make a request to the designated endpoint: /api/v2/household/{HouseholdGUID}/savings/contributions/options - **StartEventGUID** (string(uuid) | null) This field is required if the value of StartBasis = 4. To retrieve a comprehensive list of acceptable values and their corresponding formatted values, you may make a request to the designated endpoint: /api/v2/household/{HouseholdGUID}/savings/contributions/options - **StartAge** (integer | null) This field is required if the value of StartBasis = 2 or 7. - **StartDate** (string | null) This field is required if the value of StartBasis = 3. Dates should be provided in the format "Y-m-d", where "Y" represents the year, "m" represents the month and "d" represents the day. For example, "2023-07-24" represents 24th July, 2023. - **EndBasis** (integer | null) This field is required if the value of Frequency is not = 120. To retrieve a comprehensive list of acceptable values and their corresponding formatted values, you may make a request to the designated endpoint: /api/v2/household/{HouseholdGUID}/savings/contributions/options - **EndEventGUID** (string(uuid) | null) This field is required if the value of EndBasis = 4 and the value of Frequency is not = 120 and the value of TransactionType is not = 8. Event end must be after starting. To retrieve a comprehensive list of acceptable values and their corresponding formatted values, you may make a request to the designated endpoint: /api/v2/household/{HouseholdGUID}/savings/contributions/options - **EndAge** (integer | null) This field is required if the value of EndBasis = 2 or 7 and the value of Frequency is not = 120 and the value of TransactionType is not = 8. EndAge must be after starting. - **EndDate** (string | null) This field is required if the value of EndBasis = 3 and the value of Frequency is not = 120 and the value of TransactionType is not = 8. EndDate must be after starting. Dates should be provided in the format "Y-m-d", where "Y" represents the year, "m" represents the month and "d" represents the day. For example, "2023-07-24" represents 24th July, 2023. - **BackOfficeID** (string | null) - **BackOfficeSync** (integer | null) An integer representing the status of the back office sync: - 1: Yes - 2: No - 3: Only update from back office - **ExcludeFormattedValues** (string | null) If set to any value, formatted values will be excluded from the response. ## Responses ### 201 Success #### Body: application/json (object) - **success** (boolean) - **data** (object) ### 403 Permission error. #### Body: application/json (object) - **success** (boolean) - **message** (string) ### 404 Household not found #### Body: application/json (object) - **success** (boolean) - **message** (string) ### 422 Validation error. #### Body: application/json (object) - **success** (boolean) - **message** (string) - **data** (object) Example validation error message. ### 500 Internal server error. #### Body: application/json (object) - **success** (boolean) - **message** (string) [Powered by Bump.sh](https://bump.sh)