Table of Contents
Payroll Items
Supported Endpoints and Methods
The endpoint can be found at: https://api.reckon.com/R1/{BOOKID}/payroll/payrollitems
Methods supported: GET, PUT, POST, DELETE
The Book ID represents the unique GUID of the Book the user wants to write data to. For example c1b3da90-e9df-4d57-8cfb-71a1d7bfe401
Endpoint | Additional Parameter(s) | HTTP Method | Description | API Portal | Countries |
payrollitems | Retrieve the list of payroll items | AU | |||
payrollitems | Add a payroll item | AU | |||
payrollitems | /payroll-item-id | Update a payroll item | AU | ||
payrollitems | /payroll-item-id | Delete a payroll item |
Get the list of Payroll Items
Endpoint: https://api.reckon.com/R1/{BOOKID}/payroll/payrollitems
Method: GET
Filter: If you want to filter the response by a specific payroll Item type, then add ?$filter= PayItemTypeId eq '{PayItemTypeId value, for example, 1 for Earnings}' at the end of the endpoint.
Sample response
{
"Id": "0218c4ab-299a-4f69-960e-4a403b2f6fb9",
"PayItemTypeId": 1,
"PayItemTypeName": "Earnings",
"SubTypeId": 8,
"SubTypeName": "OTE",
"FullName": "Salary",
"Description": null,
"Multiplier": null,
"PayRateBasis": 1,
"TerminationType": null,
"ExpenseAccountId": "85fb81f7-e755-43a7-8200-e7f0f5999e0b",
"ExpenseAccountName": "Salaries & Wages",
"LiabilityAccount": null,
"LiabilityAccountName": null,
"IncludeInTimeAccruals": false,
"Status": 1,
"TaxApplicableName": "Gross payments",
"CalculationBasisType": null,
"DefaultRate": null,
"IsPercentValue": false,
"LimitAmount": null,
"LimitType": null,
"ShowAsAllowancePS": null,
"PayeeId": null,
"Payee": null,
"IsDeductedForTax": null
},
{
"Id": "3701952b-d790-4726-a693-c38a81868d28",
"PayItemTypeId": 1,
"PayItemTypeName": "Earnings",
"SubTypeId": 8,
"SubTypeName": "OTE",
"FullName": "Hourly",
"Description": null,
"Multiplier": null,
"PayRateBasis": 2,
"TerminationType": null,
"ExpenseAccountId": "85fb81f7-e755-43a7-8200-e7f0f5999e0b",
"ExpenseAccountName": "Salaries & Wages",
"LiabilityAccount": null,
"LiabilityAccountName": null,
"IncludeInTimeAccruals": true,
"Status": 1,
"TaxApplicableName": "Gross payments",
"CalculationBasisType": null,
"DefaultRate": null,
"IsPercentValue": false,
"LimitAmount": null,
"LimitType": null,
"ShowAsAllowancePS": null,
"PayeeId": null,
"Payee": null,
"IsDeductedForTax": null
},
{
"Id": "5b9154e9-92f4-4cb9-8b81-7e2e642877b3",
"PayItemTypeId": 1,
"PayItemTypeName": "Earnings",
"SubTypeId": 9,
"SubTypeName": "Overtime",
"FullName": "Time and Half",
"Description": null,
"Multiplier": 1.50000000,
"PayRateBasis": 2,
"TerminationType": null,
"ExpenseAccountId": "85fb81f7-e755-43a7-8200-e7f0f5999e0b",
"ExpenseAccountName": "Salaries & Wages",
"LiabilityAccount": null,
"LiabilityAccountName": null,
"IncludeInTimeAccruals": true,
"Status": 1,
"TaxApplicableName": "Gross payments",
"CalculationBasisType": null,
"DefaultRate": null,
"IsPercentValue": false,
"LimitAmount": null,
"LimitType": null,
"ShowAsAllowancePS": null,
"PayeeId": null,
"Payee": null,
"IsDeductedForTax": null
},
{
"Id": "cd5435d4-f2da-490b-a2fb-179a006ab883",
"PayItemTypeId": 1,
"PayItemTypeName": "Earnings",
"SubTypeId": 9,
"SubTypeName": "Overtime",
"FullName": "Double Time",
"Description": null,
"Multiplier": 2.00000000,
"PayRateBasis": 2,
"TerminationType": null,
"ExpenseAccountId": "85fb81f7-e755-43a7-8200-e7f0f5999e0b",
"ExpenseAccountName": "Salaries & Wages",
"LiabilityAccount": null,
"LiabilityAccountName": null,
"IncludeInTimeAccruals": true,
"Status": 1,
"TaxApplicableName": "Gross payments",
"CalculationBasisType": null,
"DefaultRate": null,
"IsPercentValue": false,
"LimitAmount": null,
"LimitType": null,
"ShowAsAllowancePS": null,
"PayeeId": null,
"Payee": null,
"IsDeductedForTax": null
}
]Details of each object
Data Field | Description | Data Type | Mandatory? |
ID | The unique ID of the item | GUID | No |
PayItemType | The Type of Payroll Item | Set data types:
| Yes |
PayItemTypeName | The text name of the payroll item type | Text | No |
SubTypeId | The subtype of the payroll item | Set data types: For PayItemType '1' (Earnings):
For PayItemType '4' (Deductions):
For PayItemType '3' (Allowance):
| Yes |
SubTypeName | The text name of the subtype | Text | No |
FullName | Text name of the item | Text | Yes |
Description | The description for the item | Text | No |
Multiplier | The multiplier applied to the item | Numeric | Yes if item is Overtime based item |
PayRateBasis | The PayRate basis of the item | Set data types:
| Yes if item is Earnings or Overtime |
TerminationTypeId | The type of termination linked to termination items | Set data types (GUID across all books):
| Yes if item is Termination type |
ExpenseAccountId | The expense account linked to the item | GUID | No (unless ExpenseAccount name is not used and you choose to send the GUID instead) |
ExpenseAccountName | The name of the expense account linked to the item | Text | Yes if ExpenseAccount is not included (This is used instead of the GUID when using the Text to GUID feature of the API) |
LiabilityAccountId | The liability account linked to the item | GUID | No (default account will be used if you don't pass it) |
LiabilityAccountName | The liability account name in text linked to the item | Text | No |
IncludeInTimeAccruals | Whether the item is included in time accural calculations | Boolean true/false | No |
Status | Whether the item is active or not | Set data types:
| No |
TaxApplicableName | The name of the tax applicable to the item | Set data types:
| Yes |
CalculationBasisType | The type of the calculation basis type | Set data types:
| Yes if allowance item type |
DefaultRate | The default rate to be applied to the item | Numeric | No |
IsPercentValue | If the default value is percent or dollar | Boolean (true/false) | No, only required if have passed DefaultRate |
LimitAmount | The limit to be applied to the item | Numeric | No |
LimitType | If a limit exists, the type of the limit | Set data types:
| No |
ShowAsAllowanceOnPS | Whether a allowance item will display on the payment summary as a allowance | Boolean true false | No |
PayeeID | The GUID of a payee linked to the payroll item | GUID | No |
Payee | The text name of a payee linked to the payroll item | Text | No |
Minimum Post
Endpoint: https://api.reckon.com/R1/{BOOKID}/payroll/payrollitems
Method: POST/PUT
Create an Earnings (Normal)
{
"PayItemType": "1",
"SubTypeId": "8", //see the above table for the options
"Name": "Earnings",
"PayRateBasis": "2",
"TaxApplicableName": "Gross Payments"
}Create an Earnings (Overtime)
{
"PayItemType": "1",
"SubTypeId": "9", //see the above table for the options
"Name": "Overtime",,
"RateMultiplier":"1.75",
"PayRateBasis": "2",
"TaxApplicableName": "Gross Payments"
}Create an Earnings (Variable)
{
"PayItemType": "1",
"SubTypeId": "10", //see the above table for the options
"Name": "Earnings",
"PayRateBasis": "2",
"TaxApplicableName": "Gross Payments"
}
Create an Earnings (Termination)
{
"PayItemType": "1",
"SubTypeId": "11", //see the above table for the options
"Name": "Termination",
"PayRateBasis": "4",
"TaxApplicableName": "Termination",
"TerminationTypeId": "087B68E5-B059-4459-A2A6-A12BA0EB442D" //see the above table for the options
}Create an Allowance
{
"PayItemType": "3",
"Name": "Car Allowance Car",
"SubTypeId": "29", //see the above table for the options
"CalculationBasisType": "1",
"DefaultRate": "30",
"IsPercentValue": false,
"TaxApplicableName": "Gross Payments"
}Create a Deduction
{
"PayItemType": "4",
"SubTypeId": "17", //see the above table for the options
"Name": "Deduction Union",
"LiabilityAccountId": "54f1be48-526a-4fc7-8e0f-5051450fc527",
"CalculationBasisType": "3",
"IsDeductedForTax" : "false",
"DefaultRate": "30",
"IsPercentValue": false
}
Create a Reimbursement
{
"PayItemType": "5",
"Name": "Reimbursement"
}Delete a Payroll Item
Endpoint: https://api.reckon.com/R1/{BOOKID}/payroll/payrollitems/{payroll-item-id}
Method: DELETE