Authenticate with the payroll.nz scope and retrieve the active tenant ID from GET /connections
List employees via GET /payroll.xro/2.0/Employees to obtain the EmployeeID for each worker
Fetch a specific employee's current pay template via GET /payroll.xro/2.0/Employees/{EmployeeID}/PayTemplates to view earnings rates, deductions, and KiwiSaver lines
Construct an updated pay template object with changed earnings lines (e.g., updated hourly rate or added allowance) and PUT to /payroll.xro/2.0/Employees/{EmployeeID}/PayTemplates
Confirm changes by re-fetching the pay template and verifying the updated values before the next pay run is created
Known gotchas
KiwiSaver employee and employer contribution lines are mandatory for eligible employees; removing or zeroing them without a valid opt-out status will cause pay run validation errors
Pay template changes apply only to future pay runs; they do not retroactively alter a pay run already in DRAFT or POSTED state
Xero Payroll NZ uses the same /payroll.xro/2.0/ prefix as Payroll UK but serves different resource types (e.g., KiwiSaver vs PAYE); always scope your OAuth token to payroll.nz
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp