Creates a new deduction category by importing from external data. The API validates the import model and maps it to the appropriate deduction category structure based on the deduction type.
Deduction Types: - PreTax: Deducted before tax calculations (requires PensionImpact and NationalInsuranceImpact) - PostTax: Deducted after tax calculations (PensionImpact and NationalInsuranceImpact must be null) - PreCis: CIS deduction before tax (requires PensionImpact and NationalInsuranceImpact, MinimumWageDeductionImpact must be null) - PostCis: CIS deduction after tax (all impact fields must be null)
Example requests:
PostTax Deduction:
{
"name": "Union Dues",
"externalId": "UNION_001",
"deductionType": "PostTax",
"minimumWageDeductionImpact": "NoImpact",
"pensionImpact": null,
"nationalInsuranceImpact": null
}
PreTax Deduction:
{
"name": "Salary Sacrifice Pension",
"externalId": "PENSION_001",
"deductionType": "PreTax",
"minimumWageDeductionImpact": "ReduceMinimumWage",
"pensionImpact": "ReducesPensionableEarnings",
"nationalInsuranceImpact": "AffectsNationalInsurance"
}
PreCis Deduction:
{
"name": "CIS Materials Deduction",
"externalId": "CIS_PRE_001",
"deductionType": "PreCis",
"minimumWageDeductionImpact": null,
"pensionImpact": "NoImpactOnPensionableEarnings",
"nationalInsuranceImpact": "NoImpactOnNationalInsurance"
}
PostCis Deduction:
{
"name": "CIS Labour Deduction",
"externalId": "CIS_POST_001",
"deductionType": "PostCis",
"minimumWageDeductionImpact": null,
"pensionImpact": null,
"nationalInsuranceImpact": null
}
Validation Rules: - name: Required, cannot be empty - deductionType: Must be a valid enum value - minimumWageDeductionImpact: Required for non-CIS types (PreTax, PostTax), must be null for CIS types (PreCis, PostCis) - pensionImpact: Required for PreTax types (PreTax, PreCis), must be null for PostTax types (PostTax, PostCis) - nationalInsuranceImpact: Required for PreTax types (PreTax, PreCis), must be null for PostTax types (PostTax, PostCis) - externalId: Optional external reference identifier
On success, returns the mapped DeductionCategoryEditModel with appropriate CIS type and tax exempt flags set. On validation failure, returns 400 Bad Request with detailed validation errors.
POST http:///api/v2/business/{businessId}/import/deduction-categories
| Parameter name | Value | Description | Additional |
|---|---|---|---|
| businessId | string | Required |
The request body takes a complete ImportDeductionCategoryModel resource, containing the following writable properties:
{
"deductionType": "string",
"externalId": "string",
"minimumWageDeductionImpact": "string",
"name": "string",
"nationalInsuranceImpact": "string",
"pensionImpact": "string"
}
| Name | Type | Description |
|---|---|---|
| deductionType | string |
UkImportDeductionCategoryType
Possible values are:
|
| externalId | string | String |
| minimumWageDeductionImpact | string |
Nullable Possible values are:
|
| name | string | String |
| nationalInsuranceImpact | string |
Nullable Possible values are:
|
| pensionImpact | string |
Nullable Possible values are:
|
The following HTTP status codes may be returned, optionally with a response resource.
| Status code | Description | Resource |
|---|---|---|
| 200 | OK OK |
DeductionCategoryEditModel |
| 400 | Bad Request Bad Request |
ProblemDetails |
Powered by DapperDox