An NDIS rostering software Xero integration takes each approved shift and sends it to Xero twice: once as a draft timesheet for the pay run, and once as a line on a draft invoice for the participant, their plan manager or the NDIA. ShiftCare and Deputy both handle the core sync themselves. Most of the lost time sits around the sync, in shift notes, approvals, name mismatches, plan manager emails and audit exports.
So before you buy another connector, work out what has to be true about a shift before it's allowed into Xero, and who checks it. Get that right and the integration you already pay for does most of the work. Skip it and Xero fills up with drafts nobody trusts.
Below: how the pieces fit for an Australian provider, what the tools do natively (checked against their help docs and a ShiftCare trial account in October 2026), and where small automations beat custom software.
The short version: let your rostering tool own award interpretation and NDIS prices, let Xero own payroll and the ledger, and use the native connector between them. Then add automations only for the gaps it leaves: notes and approvals before the pay run, plan manager email, remittances and audit exports.
How an NDIS rostering software Xero integration works
Every shift becomes two financial records: what you owe the worker and what someone owes you. Both start from the same clock-in and clock-out, but they follow different rules.
| Worker pay | Participant billing | |
|---|---|---|
| Rules that apply | SCHADS award, employment type, time bands, allowances | NDIS support item, price book, how the plan is managed |
| Worked out in | The rostering tool's pay groups and pay items | The rostering tool's price books and billing report |
| Lands in Xero as | A draft timesheet under Payroll | A draft sales invoice |
| Checked by | Payroll, before the pay run | Admin, before invoices go out or claims are lodged |
| Usually breaks on | Wrong pay item mapping, pay period mismatch, worker not linked | Missing NDIS number, wrong account code, name mismatch, no billing contact |
The rostering tool does the thinking. It knows the shift was Saturday night, the worker is casual and the support was personal care. Xero receives the result.
That split matters. In the ShiftCare and Xero setup, timesheets arrive already divided across earnings rates. If the Sunday band was mapped to the weekday rate, the timesheet still looks normal when it lands, and nobody in Xero will spot it.
What the ShiftCare Xero integration does out of the box
ShiftCare's help centre describes a direct Xero connection. It imports staff and clients from Xero and pushes timesheets and invoices back. The main pieces, as documented:
- Pay groups mapped to Xero pay items. Each time band in a ShiftCare pay group (weekday bands, Saturday, Sunday, public holidays) is matched to a Xero earnings rate. Our trial account's pre-loaded "Default Casual" pay group showed exactly this, with a Xero Pay Item column to fill in.
- Timesheets as Xero drafts. Exported timesheets land as draft timesheets under Payroll. You can send approved timesheets only.
- Invoices as Xero drafts. Invoices created in ShiftCare go to Xero as drafts. The Xero Reference field carries the client's NDIS number and reference number. You can also invoice to the client's Billing Contact, which is how a plan manager gets the invoice instead of the participant.
- Account codes per price book. Each price book has an External ID that has to match a Xero account code. It defaults to 100. ShiftCare says this has to be set on every price book, including new ones and ones imported from the NDIS.
- Tracking categories. Up to two Xero tracking categories on invoices and one on timesheets, mapped to client, price book, shift type, facility or location.
A few documented rules catch people out:
- Staff have to be imported from Xero, matched by email, before their timesheets will sync.
- The date range you export has to match a pay period already set up in Xero. If it doesn't, you get "Provided period doesn't correspond with a pay period."
- Contractors are left out of the Xero timesheet export, because Xero doesn't accept their timesheet details.
- Client import matches on exact name. "Margaret Smith" in one system and "Marg Smith" in the other becomes two people.
- An invoice addressed to more than one email address fails when it's imported into Xero.
Plan level matters too. ShiftCare lists SCHADS warnings in the roster as a Premium feature, invoicing on approved clock times as Pro and Premium, and PRODA claim submission as Premium. Check the current plans before you choose, because these change.
What Deputy's Xero integration covers
Deputy is a general workforce tool rather than an NDIS system. Its Xero integration page says employee details sync between the two systems, timesheets collected on the kiosk or phone app push into Xero, and Xero leave requests show up in Deputy. It also says Deputy "calculates overtime, penalty rates, leave loading, and salary costing with every shift," and that you can export hours to Xero to create invoices for billing clients.
The page doesn't mention NDIS billing: support item numbers, plan manager contacts or claims. If Deputy runs your pay, you'll usually need something else to turn shifts into NDIS invoices. That's a common split and it works. Someone just has to design the hand-off between Deputy and billing.
SCHADS and casual pay: get it right before Xero sees it
For disability support work, the award to know is the Social, Community, Home Care and Disability Services Award [MA000100], usually called SCHADS. Fair Work's summary says it covers personal care and domestic and lifestyle support for people with disability in the community, in residential settings and in respite and day services, plus personal care workers working for a person with disability in their home.
Fair Work also says casuals are entitled to a casual loading or a specific casual pay rate under their award or agreement. Add evenings, weekends, public holidays and broken shifts, and a single week of casual shifts can touch a lot of pay lines.
So the award logic has to live in the roster, and the mapping has to be checked once, properly, by someone who knows the award. ShiftCare's SCHADS feature is a good example of what that setup involves. You set the default industry award to SCHADS, set each worker's employment type to full time, part time or casual, and tag your broken shift allowances. Then the roster warns you when a shift you're creating may breach the award.
Before the first live pay run, do these four things:
- Run a past fortnight through the roster and compare it, line by line, with what payroll actually paid.
- Test a public holiday, a shift that crosses midnight, a broken shift and a sleepover.
- Confirm every worker's employment type and pay group matches their contract.
- Get your bookkeeper or payroll adviser to sign off the pay item mapping. That decision belongs with them.
We don't give award advice, and a vendor's setup screen shouldn't be your only check. If you're unsure how a shift should be paid, ask Fair Work or an IR adviser.
NDIS invoicing in Xero: three ways funding is managed
The NDIS gives participants three management options: self-managed, plan-managed and NDIA-managed. A plan can mix them, for example core supports self-managed and capital supports NDIA-managed. Each option changes who pays you, so each needs its own path out of your roster.
| Funding type | Who pays the provider | Where your invoice or claim goes | What usually needs a person |
|---|---|---|---|
| Self-managed | The participant, their nominee or representative | An invoice to the participant or nominee | Chasing payment, explaining line items |
| Plan-managed | A registered plan manager | An invoice to the plan manager, quoting the participant's NDIS number | Remittances, rejected lines, "can you resend that?" emails |
| NDIA-managed | The NDIA | A claim against the participant's plan | Rejected claims, missing service bookings, matching payments back to invoices |
In ShiftCare, plan-managed invoices go to the plan manager as the billing contact. NDIA-managed claims can go through the PRODA integration on the Premium plan, listed under Invoices > NDIS Claims, with the rejection reason shown against each rejected claim.
Our preference is to keep all three as sales invoices in Xero, with the contact set to whoever actually pays. That way aged receivables tell the truth. One way to report by funding type is to map Client to a Xero tracking category with an option for each management type.
Where providers lose time around an NDIS rostering software Xero integration
Once the connector is set up, these are the spots where admin hours go.
Shift notes holding up approvals
By default, ShiftCare gives workers a soft reminder if they clock out without a progress note, and they can dismiss it. A coordinator then chases missing notes before signing off timesheets. ShiftCare has a setting that blocks clock-out until a note is done, with an optional minimum word count. Turn it on, and the chasing happens at the end of each shift instead of at approval time.
Rostered time versus actual time
ShiftCare invoices on rostered time by default. Its own example: a shift rostered 10am to 4pm runs to 4:45pm, and the worker is approved for the extra 45 minutes. Without the invoice based on approval status setting, the client is billed 6 hours while the worker is paid 6.75 hours. With it on, the invoice follows the approved clock times. The setting doesn't cover shifts with more than one worker or split shifts with several charges, so those still need a manual look.
Names, emails and drafts
Exact-name matching and one-email-per-contact rules sound minor. In practice they mean duplicate contacts, failed imports and plan managers who never got the invoice. Clean up contact names and billing emails before go-live. And remember both timesheets and invoices land in Xero as drafts, so someone still has to approve them.
Plan manager email
Remittances, queries and "please reissue" requests arrive in a shared inbox from many plan managers, each in their own format. Someone reads each one, finds the invoice in Xero and records the payment. None of the ShiftCare or Deputy Xero documentation we read covers this part.
Audit exports
ShiftCare lets you export a client's communications and progress notes to PDF, and an Event Details Report gives you notes for all clients as a CSV. The client export needs a start and end date (our trial refused to export without both), and it filters by the date a note was recorded, not the shift date. That matters when an auditor asks for notes against specific shifts. If participant data is going anywhere near an AI tool during all this, read is ChatGPT safe for NDIS participant data first.
When setup and a few automations beat custom software
Use what the tools already have first. Then fill the gaps with small automations. Custom software comes last, if at all. Here's how that looks for the most common problems.
| Problem | Fix it in settings first | Then a small automation | Custom software only if |
|---|---|---|---|
| Shifts approved without notes | Mandatory progress notes, minimum word count | A daily list of finished shifts with no note, sent to the coordinator | You need note rules the tool can't express |
| Billed hours don't match paid hours | Invoice based on approval status, where your plan has it | A pre-invoice report of shifts where approved time differs from rostered time | Multi-worker or split shifts are a big share of your work |
| Timesheet export fails | Fix pay frequencies and staff links in Xero | A pre-pay-run check that every worker is linked and the period matches | Almost never. This is configuration |
| Plan manager emails and remittances | One billing contact per plan manager, one email each | An inbox watcher that logs remittances and suggests the Xero match for a person to approve | Matching has become a full-time job |
| Audit requests for notes | Event Details Report and date-range exports | A scheduled monthly export into a locked folder | Your auditor needs a format no export produces |
| Award interpretation | The rostering tool's award settings | An alert at approval time for any shift carrying an award warning | Your enterprise agreement differs a lot from SCHADS and no tool models it |
Custom software makes sense when your process really is different from what every rostering product assumes. For most small and mid-sized providers it isn't. The sync is solved. The checking around it is a handful of small automations on top of tools you already pay for.
Those automations touch pay and participant data, so they need the same care as anything else in production: a named owner, alerts that reach someone who can fix the problem, and a documented way to switch them off. Our n8n production checklist covers that in detail, and our workflow automation service is how we build them.
Worked example: one fortnight, start to finish
Here's how it could run for a made-up provider. This is an illustration, not a client. Say 16 support workers (12 casual, 4 part time) supporting 30 participants: 18 plan-managed, 8 NDIA-managed and 4 self-managed. Rostering is in ShiftCare. Payroll and accounts are in Xero.
- During the fortnight. Workers clock in and out on the app, and mandatory notes stop anyone clocking out without one. Shifts inside the attendance threshold approve themselves. Pick that threshold carefully: in ShiftCare's own example, a worker who clocks 8:45 to 10:15 on a 9am to 10am shift, inside a 15-minute threshold, is recorded as one hour.
- The day after the period ends. A small automation lists every shift with an award warning, a gap between rostered and approved time, or no note.
- Pay run. Payroll exports approved timesheets to Xero for the matching pay period. They land as drafts. Payroll spot-checks a Sunday, a public holiday and any broken shifts, then approves.
- Billing. Admin generates invoices from the billing report in batches (ShiftCare suggests around 50 records at a time). Plan-managed invoices go to each plan manager as billing contact, self-managed ones to the participant or nominee, and the 8 NDIA-managed participants are claimed through PRODA. Every invoice reaches Xero as a draft with the NDIS number in the reference.
- The following week. An inbox watcher logs each plan manager remittance and lists the Xero invoices it appears to pay. Admin approves the matches. Rejected NDIA claims show their reason in ShiftCare and get fixed and resubmitted.
- Month end. The month's notes are exported to a locked folder, so the next audit request is a search instead of a scramble.
Nothing in that list is custom software. Three parts are small automations: the exception list, the remittance watcher and the monthly export. The rest is settings and the native connector. The time comes back because people check a short list instead of building it.
What we've built that's close to this
Two of our public case studies use the same patterns.
For an NDIS-registered disability services provider, we built a compliance automation layer while they were mid-audit. It includes an obligations register with a six-point reminder cadence, a regulator inbox watcher that writes each email into a timestamped evidence log, and AI assistants that draft things like shift notes, using participant codes instead of names. If an automation fails, it retries and then emails us, not the client. It all runs in their own Microsoft 365, n8n and Claude accounts. The register side is written up in how NDIS providers stop missing compliance deadlines.
For a mortgage brokerage, we built a two-way sync between HubSpot and their loan-origination system on n8n. It runs 412 syncs a week and replaced about 11 hours a week of manual data entry (case study).
Neither is a rostering or Xero build, but the patterns carry over: watch an inbox, log what arrives, match records between two systems, and alert a person when something doesn't line up. For the wider picture, see AI and automation for NDIS providers.
Questions to ask before you connect anything
- Which system is the source of truth for staff, participants and prices?
- Who signs off the pay item mapping?
- How many participants are self-managed, plan-managed and NDIA-managed, and who is the Xero contact for each?
- Who approves draft timesheets and invoices in Xero, and how often?
- Where do plan manager emails land, and who matches remittances today?
- What does your auditor ask for, and can you produce it quickly?
- When the sync fails, who finds out, and how?
If two or three of those get a shrug, start there. For invoicing outside the NDIS side of the business, see our guide to automating invoicing in Australia.
Roster, pay run and invoices not lining up? We'll map how a shift gets from your roster into Xero, show you where it breaks, and give you a fixed scope for the settings and automations that fix it. Everything is built in your own accounts. Book a short call.
Sources and further reading
- ShiftCare Help Center, Getting Started with Xero Integration
https://help.shiftcare.com/en/articles/9704468-getting-started-with-xero-integration - ShiftCare Help Center, Import Pay Groups, Pay Items and Allowances from Xero
https://help.shiftcare.com/en/articles/9704142-import-pay-groups-pay-items-and-allowances-from-xero - ShiftCare Help Center, Setting the Account Code for Xero Invoices
https://help.shiftcare.com/en/articles/7043531-setting-the-account-code-for-xero-invoices - ShiftCare Help Center, SCHADS Interpretation in Scheduler/Roster
https://help.shiftcare.com/en/articles/9990558-schads-interpretation-in-scheduler-roster - ShiftCare Help Center, Invoice based on Approval Status
https://help.shiftcare.com/en/articles/9894809-invoice-based-on-approval-status - ShiftCare Help Center, Auto-Approve Timesheets Using the Attendance Threshold
https://help.shiftcare.com/en/articles/3689217-auto-approve-timesheets-using-the-attendance-threshold-in-account-settings - ShiftCare Help Center, Generate Invoices Through Client Billing Report
https://help.shiftcare.com/en/articles/3022432-generate-invoices-through-client-billing-report-shifts-breakdown - ShiftCare Help Center, How do I send invoices to multiple recipients?
https://help.shiftcare.com/en/articles/3022538-how-do-i-send-invoices-to-multiple-recipients - Deputy, Xero integration
https://www.deputy.com/integrations/xero - Fair Work Ombudsman, Social, Community, Home Care and Disability Services Award [MA000100] summary
https://www.fairwork.gov.au/employment-conditions/awards/awards-summary/ma000100-summary - Fair Work Ombudsman, Casual employees
https://www.fairwork.gov.au/starting-employment/types-of-employees/casual-employees - NDIS, Guide to your management options
https://www.ndis.gov.au/participants/using-your-funding/plan-implementation-meeting/guide-your-management-options
