Authenticate with the payroll.au scope and resolve the tenant ID via GET /connections
List pay calendars via GET /payroll.xro/1.0/PayrollCalendars and select the correct CalendarID for the pay period
POST to /payroll.xro/1.0/PayRuns with the PayrollCalendarID to create a DRAFT pay run; Xero auto-populates employee pay items and superannuation lines based on the employee setup
Optionally update individual employee pay run details via PUT /payroll.xro/1.0/PayRuns/{PayRunID} to adjust earnings or leave taken before finalising
Change the pay run Status to POSTED via PUT /payroll.xro/1.0/PayRuns/{PayRunID} to lock it and trigger payslip generation
Retrieve superannuation lines per employee from the payslip detail to verify the Superannuation Guarantee (SG) amount before disbursing to the fund
Known gotchas
Xero Payroll AU uses a different API version prefix (/payroll.xro/1.0/) compared to Payroll UK (/payroll.xro/2.0/); mixing them will return 404 or schema errors
Superannuation lines are auto-calculated based on the employee's super fund and rate settings; manually overriding SG amounts requires updating the employee's pay template first
Once a pay run is POSTED it cannot be edited; you must REVERT it to DRAFT, make corrections, then re-post — note that reverting after bank file generation may require manual bank reversal
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