# AU Payroll pay item and earnings rate writes require IsQualifyingEarnings (v2 earningsRates)

- **Provider:** Xero
- **Endpoint:** `POST /payroll.xro/2.0/earningsRates`
- **Effective:** 2026-09-10
- **Severity:** critical
- **Change:** required-field
- **Status:** verified

## What changed

Since 2026-09-10, AU Payroll create and update requests for Earnings Rates and Pay Items must include IsQualifyingEarnings. Requests without it return a 400 validation error, and when it is true the matching super flag must agree. This advisory covers the v2 endpoint POST /payroll.xro/2.0/earningsRates; xero-au-payroll-isqualifyingearnings-required covers POST /payroll.xro/1.0/PayItems.

## What to do

Add IsQualifyingEarnings to every earnings rate sent to POST /payroll.xro/1.0/PayItems, and isQualifyingEarnings to POST /payroll.xro/2.0/earningsRates. Keep it consistent with the super flags: when it is true, Pay Items need IsExemptFromSuper false and Earnings Rates need IsSubjectToSuper true. For rates you read and write back, keep the value Xero returned.

## Sources

- Provider notice (2026-09-10): https://developer.xero.com/changelog
- https://developer.xero.com/documentation/api/payrollau/payitems
- https://developer.xero.com/documentation/api/payrollau/earningsrates

## Machine-readable

- Advisory: https://github.com/SriVarshini09/shapi-advisories/blob/main/advisories/xero-au-payroll-isqualifyingearnings-required-earningsrates.json
- OSV: https://shapi.dev/osv/xero-au-payroll-isqualifyingearnings-required-earningsrates.json
