How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Xero PayrollAu API

Operations available to regular developers

Xero PayrollAu API is one of 10 APIs that Xero publishes on the APIs.io network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification.

Tagged areas include PayrollAu. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an AsyncAPI specification.

This API exposes 32 operations across 19 paths, and defines 83 schemas. It is described by OpenAPI 3.2.0, at version 11.1.0.

Requests are made against a single base URL, https://api.xero.com/api.xro/2.0.

32 operations 19 paths 83 schemas 17 GET15 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
11.1.0
Base URL
https://api.xero.com/api.xro/2.0
Authentication
OAuth 2.0
Terms of Service
Resource Areas
1

Authentication & Security 1

Xero PayrollAu API declares 1 security scheme for authenticating requests. It supports OAuth 2.0 (OAuth2) using the authorizationCode flow, exposing 16 scopes.

  • OAuth2 — For more information

Paths & Operations 32

Across 19 paths, the API surfaces 32 operations — 17 GET, 15 POST. Each is listed below with its method, path, parameters, and response codes.

PayrollAu 32

Operations available to regular developers

GET
/Employees
Searches payroll employees
getEmployees 5 params → 200400
POST
/Employees
Creates a payroll employee
createEmployee 2 params body → 200400
GET
/Employees/{EmployeeID}
Retrieves an employee's detail by unique employee id
getEmployee 2 params → 200
POST
/Employees/{EmployeeID}
Updates an employee's detail
updateEmployee 3 params body → 200
GET
/LeaveApplications
Retrieves leave applications
getLeaveApplications 5 params → 200400
POST
/LeaveApplications
Creates a leave application
createLeaveApplication 2 params body → 200400
GET
/LeaveApplications/v2
Retrieves leave applications including leave requests
getLeaveApplicationsV2 5 params → 200400
GET
/LeaveApplications/{LeaveApplicationID}
Retrieves a leave application by a unique leave application id
getLeaveApplication 2 params → 200
POST
/LeaveApplications/{LeaveApplicationID}
Updates a specific leave application
updateLeaveApplication 3 params body → 200400
POST
/LeaveApplications/{LeaveApplicationID}/approve
Approve a requested leave application by a unique leave application id
approveLeaveApplication 3 params → 200400
POST
/LeaveApplications/{LeaveApplicationID}/reject
Reject a leave application by a unique leave application id
rejectLeaveApplication 3 params → 200400
GET
/PayItems
Retrieves pay items
getPayItems 5 params → 200400
POST
/PayItems
Creates a pay item
createPayItem 2 params body → 200400
GET
/PayrollCalendars
Retrieves payroll calendars
getPayrollCalendars 5 params → 200400
POST
/PayrollCalendars
Creates a Payroll Calendar
createPayrollCalendar 2 params body → 200400
GET
/PayrollCalendars/{PayrollCalendarID}
Retrieves payroll calendar by using a unique payroll calendar ID
getPayrollCalendar 2 params → 200400
GET
/PayRuns
Retrieves pay runs
getPayRuns 5 params → 200400
POST
/PayRuns
Creates a pay run
createPayRun 2 params body → 200400
GET
/PayRuns/{PayRunID}
Retrieves a pay run by using a unique pay run id
getPayRun 2 params → 200
POST
/PayRuns/{PayRunID}
Updates a pay run
updatePayRun 3 params body → 200
GET
/Payslip/{PayslipID}
Retrieves for a payslip by a unique payslip id
getPayslip 2 params → 200
POST
/Payslip/{PayslipID}
Updates a payslip
updatePayslip 3 params body → 200
GET
/Settings
Retrieves payroll settings
getSettings 1 param → 200
GET
/Superfunds
Retrieves superfunds
getSuperfunds 5 params → 200400
POST
/Superfunds
Creates a superfund
createSuperfund 2 params body → 200400
GET
/Superfunds/{SuperFundID}
Retrieves a superfund by using a unique superfund ID
getSuperfund 2 params → 200
POST
/Superfunds/{SuperFundID}
Updates a superfund
updateSuperfund 3 params body → 200
GET
/SuperfundProducts
Retrieves superfund products
getSuperfundProducts 3 params → 200400
GET
/Timesheets
Retrieves timesheets
getTimesheets 5 params → 200400
POST
/Timesheets
Creates a timesheet
createTimesheet 2 params body → 200400
GET
/Timesheets/{TimesheetID}
Retrieves a timesheet by using a unique timesheet id
getTimesheet 2 params → 200
POST
/Timesheets/{TimesheetID}
Updates a timesheet
updateTimesheet 3 params body → 200

Schemas 83

The contract defines 83 schemas that model the data the API accepts and returns. The most detailed are Employee (35 properties), TaxDeclaration (22 properties), EarningsRate (21 properties), Payslip (19 properties). Each schema is shown below with its type and property counts.

SuperMembership
object
3 properties 2 required
TimesheetObject
object
1 property
PayrollCalendar
object
8 properties
HomeAddress
object
6 properties 1 required
Account
object
4 properties
ValidationError
object
1 property
PayrollCalendars
object
1 property
SuperFunds
object
1 property
EmployeeStatus
string
Employee Status Types
LeaveLine
object
9 properties
AllowanceCategory
string
Payslips
object
1 property
SuperannuationCalculationType
string
LeaveBalance
object
4 properties
TimesheetStatus
string
TimesheetLines
array
SuperFund
object
13 properties 1 required
PayItems
object
1 property
EmploymentType
string
SuperFundProducts
object
1 property
Employees
object
1 property
PayRunStatus
string
PayslipLines
object
8 properties
PayRun
object
16 properties 1 required
SuperFundType
string
EarningsLine
object
9 properties 1 required
Payslip
object
19 properties
SuperannuationContributionType
string
State
string
State abbreviation for employee home address
SuperannuationLine
object
9 properties
RateType
string
WorkCondition
string
EarningsRate
object
21 properties
SuperLine
object
8 properties
ReimbursementLine
object
4 properties
BankAccount
object
6 properties
ReimbursementType
object
5 properties
LeavePeriodStatus
string
PayOutType
string
How the requested leave will be paid out, e.g. cashed out.
TaxLine
object
6 properties
DeductionLine
object
5 properties 1 required
IncomeType
string
Timesheet
object
9 properties 3 required
Employee
object
35 properties 3 required
Settings
object
4 properties
LeaveAccrualLine
object
3 properties
PayslipSummary
object
12 properties
LeaveApplications
object
1 property
TimesheetLine
object
4 properties
TaxScaleType
string
LeavePeriod
object
4 properties
SuperFundProduct
object
4 properties
PayItem
object
4 properties
LeaveLineCalculationType
string
Calculation type for leave line for Opening Balance on Employee
EmploymentBasis
string
OpeningBalanceLeaveLine
object
2 properties
TaxDeclaration
object
22 properties
SettingsObject
object
1 property
CalendarType
string
EntitlementFinalPayPayoutType
string
DeductionType
object
9 properties
APIException
object
The object returned for a bad request
3 properties
LeaveApplication
object
11 properties
TFNExemptionType
string
SeniorMaritalStatus
string
PayRuns
object
1 property
LeaveEarningsLine
object
4 properties
AllowanceType
string
EarningsType
string
AccountType
string
See Account Types
LeaveCategoryCode
string
Code used to identify the Leave Category
PayslipObject
object
1 property
PaidLeaveEarningsLine
object
5 properties 2 required
EarningsRateCalculationType
string
EmploymentTerminationPaymentType
string
ResidencyStatus
string
LeaveType
object
12 properties
CountryOfResidence
string
Country of residence as a valid ISO 3166-1 alpha-2 country code e.g. "AU", "NZ", "CA". Only applicable, and mandatory if income type is WORKINGHOLIDAYMAKER.
OpeningBalances
object
8 properties
Timesheets
object
1 property
DeductionTypeCalculationType
string
PayTemplate
object
5 properties
ManualTaxType
string

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

xero-payrollau-api-openapi.yml Raw ↑

Other APIs Xero publishes across the network.

Xero Accounting API
Xero Asset API
Xero BankFeeds API
Xero Files API
Xero Finance API
Xero Identity API
Xero PayrollNz API
Xero PayrollUk API
Xero Project API
Where this information came from

This is an independent, third-party profile of Xero PayrollAu API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.