v51

latestOpenAPI 3.0.0MITraw.githubusercontent.com2026-07-213287185.4 KB
PayrollAu

Creates a pay run

post/PayRuns

Headers

Idempotency-Keystring

This allows you to safely retry requests without the risk of duplicate processing. 128 character max.

Request body

PayrollCalendarIDstring uuid required

Xero identifier for pay run

PayRunIDstring uuid

Xero identifier for pay run

PayRunPeriodStartDatestring

Period Start Date for the PayRun (YYYY-MM-DD)

PayRunPeriodEndDatestring

Period End Date for the PayRun (YYYY-MM-DD)

PayRunStatus'DRAFT' | 'POSTED'
PaymentDatestring

Payment Date for the PayRun (YYYY-MM-DD)

PayslipMessagestring

Payslip message for the PayRun

UpdatedDateUTCstring

Last modified timestamp

Wagesnumber double

The total Wages for the Payrun

Deductionsnumber double

The total Deductions for the Payrun

Taxnumber double

The total Tax for the Payrun

Supernumber double

The total Super for the Payrun

Reimbursementnumber double

The total Reimbursements for the Payrun

NetPaynumber double

The total NetPay for the Payrun

Example request

[
  {
    "PayrollCalendarID": "bfac31bd-ea62-4fc8-a5e7-7965d9504b15",
    "PayRunID": "bba1d10f-63b1-4692-b5c5-a99f869523a4",
    "PayRunPeriodStartDate": "/Date(322560000000+0000)/",
    "PayRunPeriodEndDate": "/Date(322560000000+0000)/",
    "PaymentDate": "/Date(322560000000+0000)/",
    "PayslipMessage": "Thanks for being awesome",
    "UpdatedDateUTC": "/Date(1583967733054+0000)/",
    "Payslips": [
      {
        "EmployeeID": "4729f087-8eec-49c1-8294-4d11a5a0a37c",
        "PayslipID": "f3c0874d-7cdd-459a-a95c-d90d51decc42",
        "FirstName": "Karen",
        "LastName": "Jones",
        "EmployeeGroup": "Marketing",
        "Wages": 1060.5,
        "Tax": 198,
        "Super": 75.6,
        "NetPay": 862.5,
        "UpdatedDateUTC": "/Date(1583967733054+0000)/"
      }
    ],
    "Wages": 1060.5,
    "Tax": 198,
    "Super": 75.6,
    "NetPay": 862.5
  }
]

Response

A successful request

Example response

{
  "PayRuns": [
    {
      "PayrollCalendarID": "bfac31bd-ea62-4fc8-a5e7-7965d9504b15",
      "PayRunID": "bba1d10f-63b1-4692-b5c5-a99f869523a4",
      "PayRunPeriodStartDate": "/Date(322560000000+0000)/",
      "PayRunPeriodEndDate": "/Date(322560000000+0000)/",
      "PaymentDate": "/Date(322560000000+0000)/",
      "PayslipMessage": "Thanks for being awesome",
      "UpdatedDateUTC": "/Date(1583967733054+0000)/",
      "Payslips": [
        {
          "EmployeeID": "4729f087-8eec-49c1-8294-4d11a5a0a37c",
          "PayslipID": "f3c0874d-7cdd-459a-a95c-d90d51decc42",
          "FirstName": "Karen",
          "LastName": "Jones",
          "EmployeeGroup": "Marketing",
          "Wages": 1060.5,
          "Tax": 198,
          "Super": 75.6,
          "NetPay": 862.5,
          "UpdatedDateUTC": "/Date(1583967733054+0000)/"
        }
      ],
      "Wages": 1060.5,
      "Tax": 198,
      "Super": 75.6,
      "NetPay": 862.5
    }
  ]
}