Xero API
POST /payroll.xro/2.0/employees/{EmployeeID}/tax now requires KiwiSaverStatus
Stops workingSubscribe to Xero APIShare
Starting December 3, 2026, requests to POST /payroll.xro/2.0/employees/{id}/tax will fail if they omit the body parameter KiwiSaverStatus for affected tax codes. Calls lacking this parameter will return a 400 Bad Request error.
Calls it hits
POST /payroll.xro/2.0/employees/{id}/taxbody parameter KiwiSaverStatus
What to use instead of these calls
Update your integration to explicitly send KiwiSaverStatus for every affected tax code.
In Xero API's words
Requests to POST/payroll.xro/2.0/employees/{EmployeeID}/tax that omit KiwiSaverStatus for affected tax codes will return a 400 Bad Request.
Facts
Questions
When does this change take effect?
Calls to POST /payroll.xro/2.0/employees/{id}/tax, body parameter KiwiSaverStatus on Xero API stop working on December 3, 2026.
What happens to calls after December 3, 2026?
They fail from that day.
How do I find the calls this hits in my code?
Okapi reads your repository, finds the calls this change hits and opens a pull request with the fix. It never commits to your branches: every change comes as a pull request you review.
More from Xero API 8
-
GET /finance.xro/1.0/AccountingActivities/*Removal Stopped working -
/practicemanager/3.1/lead.api/*Removal Stopped working -
/practicemanager/3.0/purchaseorder.api/*Removal Stopped working -
/practicemanager/3.1/supplier.api/*Removal Stopped working -
POST /payroll.xro/1.0/PayItemsBehaviour change Stopped working -
/api.xro/2.0/ExpenseClaims*Endpoint removal Stops workingin 87 days -
/practicemanager/3.0/*Version retirement Stops workingin 181 days -
No date
/api.xro/2.0/Receipts*Endpoint removal Deprecated, no date
Is your code calling this?
Okapi finds the calls this change hits in your repo and opens the pull request with the fix before December 3, 2026.