Skip to main content

Problems

Splitting Cliniko revenue by location in Xero

Cliniko sends no location to Xero. Its integration maps sales accounts by billable item, product or practitioner and pushes no tracking category, so revenue arrives with no site on it. Three ways out: a Xero organisation per site, a paid add-on that writes tracking categories, or a sales account per site. Each costs something different.

Key facts

What Cliniko sends about a site
Nothing. The Xero setup article walks through sales accounts and clearing accounts and names no tracking category at any point5
What the sync does carry
Invoices as soon as they are created in Cliniko, and payments once they are allocated to an invoice1
The constraint stated plainly
The native integration does not support Xero tracking categories for splitting revenue and costs by Cliniko location or business inside one Xero organisation2
One to one
One Cliniko instance maps to one Xero organisation, which settles the question for a practice already running a Cliniko per site2
The mapping levels that do exist
A billable item setting overrides the default sales account and any practitioner sales account, and the default still has to be set or invoices do not sync6
Where a practitioner mapping sits
It overrides the default Xero account setting and loses to any sales account already set on the item7
The slot budget in Xero
A line item carries at most two tracking category elements, and the profit and loss report endpoint accepts two tracking categories and no third10
What a second organisation costs
Another Xero subscription. The Australian plans start at A$37 a month for Ignite, with Grow at A$78, Comprehensive at A$107 and Ultimate 10 at A$143 at the standard price11
Who the introductory price is for
A customer in Australia buying their first organisation on xero.com, so the second site starts at the standard price11
Where the site cut lives today
Cliniko's own revenue reports, which take a date range, a practitioner and a business8

What Cliniko sends, and what it leaves at the door

Cliniko pushes an invoice to Xero when it is created and a payment once it is allocated. The contact, the lines, the amounts and the tax rate all travel. What does not travel is anything saying where the session happened. The Xero setup article walks an owner through sales accounts and clearing accounts and names no tracking category at any point, and the help centre collection covers billable items, products, payment types and practitioner invoice items with no article on businesses or locations.

  • A default sales account, which has to be set or invoices do not sync.
  • A sales account per billable item, which overrides the default and any practitioner account.
  • A sales account per practitioner, which overrides the default and loses to the item.
  • A sales account per product, for the retail lines.
  • A clearing account per payment type, which is the settlement side rather than the revenue side.
  • No tracking category, at any of those levels.

So the question is not how to switch site reporting on. It is which of three substitutes a practice is willing to pay for, because Xero will only show a cut of revenue that something put on the line.

The three places a site can actually live

A site can live in the organisation, in a tracking option, or in the account code. Cliniko can write to one of those three by itself, and it is the one with the worst side effects. The fourth row below is the fallback a practice with none of the three is on, which is keeping the split outside Xero entirely. Tagging each synced invoice by hand in Xero is left off the table because it is not somewhere the site lives, it is somebody retyping it every week.

Where the site can live, what it needs, and what it costs26811
Where the site livesWhat it needsWhat it costs
A Xero organisation per siteA Cliniko instance per site, because the native integration maps one to oneAnother Xero subscription per site, and a group view assembled outside Xero
A tracking option written by a paid add-onA third party integration in the sync path in place of the native oneA price the vendor does not publish, and one of the two tracking slots
A sales account per siteA billable item or a practitioner per site, mapped to that account in ClinikoThe chart multiplies: every payer account repeated once per site
Cliniko's own revenue reportsNothing in XeroThe split stays off the profit and loss, so it is not in the accounts

One Xero organisation per site

This is where the Cliniko constraint pushes a multi site group first. If a group already runs a Cliniko per site, the native integration maps each of those to its own Xero organisation and the split falls out for free. The cost is a subscription per file. The Australian plans start at A$37 a month for Ignite, with Grow at A$78, Comprehensive at A$107 and Ultimate 10 at A$143, and the introductory discount is for a customer buying their first organisation on xero.com, so site two starts at full price.

The bill is the easy part. The harder cost is that every group level number becomes a consolidation job: one chart maintained twice, one contact list duplicated, and a profit and loss for the practice as a whole that lives in a spreadsheet rather than in Xero. Where the sites sit under one ABN, the activity statement has to be assembled from two ledgers rather than run off one.

A paid add-on that writes the tracking option

The second option replaces the native integration with a third party one that can write a tracking option onto each line as it syncs. The vendor of the best documented of these states the gap it is filling in its own words, which is also the clearest public statement of what the native integration does not do.

The Cliniko provided integration to Xero Accounting can only map one Cliniko instance to one Xero Accounting organization. It also does not support Xero Tracking Categories for splitting revenue and costs by Cliniko location or business within a Xero organization.2

Two cautions about that quote. It comes from the seller of the alternative, so it is an interested party, and the corroboration for it is the silence of Cliniko's own documentation rather than a second positive source. And no price is published, so the option can be described and cannot be costed here. What it buys is real: the site rides on a tracking option, the chart of accounts stays the size it was, and many Cliniko instances can point at one Xero organisation.

Folding the site into the account code

The third option is the only one Cliniko can drive on its own. Because a billable item or a practitioner can carry its own Xero sales account, a practice can create a set of revenue accounts per site and point each site's items or practitioners at them. It works, and the precedence is documented: the item setting wins, the practitioner setting comes next, the default catches the rest.

What it costs is the chart. A practice that already separates Medicare, private health fund, NDIS, DVA and private fees is carrying five or more revenue accounts before the site question is asked, and a second address doubles them. Add a third site and the profit and loss gets hard to read. The practitioner route has a second catch: it holds only while a practitioner works at one address, and it breaks the day someone covers a shift at the other rooms.

Site in the account code beside Site on a tracking optionThe same site split recorded two ways, once in the account code and once on a tracking option, with the number of revenue accounts doubling in the first column and a tracking slot spent in the second.Site in theaccount codeSite on atrackingoptionWhere the siteis recordedThe accountA trackingoptionRevenueaccounts fortwo sitesDoubledUnchangedWhat Clinikohas to pushAn accountcodeA trackingoptionCan the nativesync push itYesNoOpening a thirdsiteMore accountsOne moreoptionTracking slotsspentNoneOne of thetwo
Plate 1The site in the account code, or the site on a tracking option, and what each one uses up.

Why the standing map does not carry a site

It is worth being precise about what a coding rule can and cannot decide, because that is where the confusion usually sits. A standing map answers where a line posts and at what tax rate, and it answers it from the payer and the service category. Both of those are properties of the money. A site is a property of the room, and no rule in the excerpt below reads one.

Standing map rulesFive rows of a standing rules map, each keyed on the payer and the service category, with the revenue account and the Xero tax rate on the right and no column anywhere for a clinic address.What was billedWhere it postsPrivate400 Clinicalservices, privatepatientsPractice defaultGST Free IncomeA client paying their own account. The rulereads the payer, so it is the same rule atthe main rooms and at the branch.Medicare bulk bill401 Clinicalservices,MedicarePractice defaultGST Free IncomeA bulk billed session claimed from whereverthe practitioner was sitting. The claimcarries a provider number, and the ledgerrule does not read it.Health fund403 Clinicalservices, privatehealth fundbenefitPractice defaultGST Free IncomeThe benefit half of a claim swiped atwhichever front desk holds the terminal,which is a payer question rather than a siteone.WorkCover407 Clinicalservices,WorkCover andworkerscompensationPractice defaultGST Free IncomeAn insurer funded session. The rule turns onwho contracted for the treatment, and anaddress changes nothing about that.Private422 Products andequipment salesProductsGST on IncomeA brace sold at reception, stocked at onesite and not the other, and still on theaccount the payer chose.
Plate 2Five rules a two site clinic hits in one week, and not one of them asks where the chair was.

That is the reason the site cut belongs on a tracking option rather than in a revenue account. The account answers who paid and what for. The tracking option answers where and by whom, and it can answer it for expenses too, which an income account cannot.

The slot the site has to fit into

Xero gives a line item two tracking slots and no more, and the profit and loss report endpoint takes two tracking categories and no third. The allied health canonical template spends both: slot one on Practitioner and slot two on Location, each created only with the practice's consent and matched by name.

Which is the argument against the third option stated properly. It is not that a sales account per site fails. It is that the account code is already carrying the funder, and asking it to carry the address too is what turns a chart of accounts into a matrix nobody wants to maintain. The chart of accounts for a multi site clinic works the same trade in the other direction, and Xero tracking categories for a clinic covers the setup itself.

Reading the split out of Cliniko instead

Until one of the three is in place, the location cut does exist, just not in the ledger. Cliniko's revenue reports take a business as a filter alongside the date range and the practitioner, so the number an owner wants is a minute away.

Select Revenue by raised invoices as the report type, and then specify your date range, practitioner, and business8

Two cautions on using that number as the answer. Raised invoices and closed invoices are different reports and different totals, so a site figure taken on one basis will not agree with a Xero profit and loss run on the other. And a report is not an account: it does not carry the expense side, it is not in the file the accountant reads at year end, and it goes stale the moment anyone reissues an invoice. It is a good stopgap and a poor system of record.

What the other practice systems do here

This is a Cliniko problem rather than an allied health problem, which is worth knowing before a group decides to change files rather than change systems. Zanda documents two tracking categories with multiple options and uses Location as its own worked example. Splose sets up tracking categories for locations and practitioners in Xero and then assigns them in the workspace. Both push what Cliniko does not.

That does not make either a reason to move. A practice system is chosen on clinical workflow, and the ledger follows. But it does change the shape of the decision: for a Cliniko practice the site split is bought, and for a Zanda or Splose practice it is configured. The Cliniko integration page sets out the rest of what the sync carries and what it leaves behind.

What Ledger Map does with it

Ledger Map holds one standing map for the practice, approved before anything syncs. The map resolves a line to the revenue account and the Xero tax rate the practice's template carries, the funder's deposit is posted as one balanced document set, and one exact match is left in the bank feed. It does not auto-reconcile, and a line the map cannot resolve becomes a question with the options laid out rather than a silent posting.

The site sits beside that rather than inside it. The tracking slots the practice spends are part of the map it approves, so an owner decides once whether the second slot goes to location, and every document written afterwards carries the option that decision produced. Where a site is folded into the account code instead, the map carries that too, because the account is the practice's to choose. What the product does not do is guess.

Questions

  • Does Cliniko integrate with Xero?

    Yes. Cliniko pushes an invoice to Xero as soon as it is created and a payment once it is allocated to an invoice, and the sales account and the clearing account are mapped in Cliniko's integration settings. What the sync does not carry is the business or the location the session was billed at.

  • Can Cliniko push Xero tracking categories?

    No. The native integration maps sales accounts by billable item, product and practitioner, and clearing accounts by payment type, and it carries no tracking category at any of those levels. The Xero setup article names none, and the help centre collection for the integration has no article about businesses or locations.

  • Do I need a separate Xero organisation for each clinic location?

    Only if the practice runs a Cliniko instance per site, because the native integration maps one instance to one organisation. A single Cliniko instance covering two sites can stay in one Xero file, with the split bought through a third party integration or folded into the account code.

  • Can I use a sales account per location in Cliniko?

    Yes, through a billable item or a practitioner mapped to that account. The item setting overrides the default and any practitioner account. The cost is that every payer account gets repeated per site, and the practitioner route breaks as soon as someone works at both addresses.

  • How many tracking categories does Xero allow?

    A line item carries at most two tracking category elements, and the profit and loss report endpoint accepts two and no third. The allied health canonical template spends both, on practitioner and on location, which is why funding source lives in the account code instead.

  • How do I see revenue by location right now?

    From Cliniko's own revenue reports, which take a date range, a practitioner and a business. Watch the raised against closed invoice distinction, because a site total on one basis will not agree with a Xero profit and loss run on the other.

Sources

Open questions

  • Interlock IT publishes no price for its Cliniko add-on, so the paid option is described here and not costed.
  • Interlock IT shows no last updated date and is the vendor of the alternative it compares itself to. The two constraints it states are corroborated by the silence of Cliniko's own help centre rather than by a second positive source.
  • Cliniko's help centre prints a relative freshness label rather than a date on most of these articles, so how recently the mapping levels changed is not knowable from the page itself. Google dated three of them within the last six weeks when this page's results were captured.
  1. Integrate Cliniko with your Xero account

    Cliniko. Retrieved 29 Aug 2026.

    primary

  2. Advanced Cliniko to Xero integration

    Interlock IT. Retrieved 29 Aug 2026.

    secondary

  3. Exporting to Xero

    Zanda. Retrieved 3 Sep 2026.

    primary

  4. Set up Xero tracking categories

    Splose. Retrieved 2 Sep 2026. Source updated 18 Jun 2026.

    primary

  5. Set up Xero for use with Cliniko

    Cliniko. Retrieved 3 Sep 2026.

    primary

  6. Calculate practitioner earnings

    Cliniko. Retrieved 3 Sep 2026. Source updated 9 Oct 2023.

    primary

  7. Using the Xero integration, the help centre collection

    Cliniko. Retrieved 3 Sep 2026.

    primary

  8. Xero Accounting API specification, tracking categories and line items

    Xero. Retrieved 3 Sep 2026. Source updated 30 Aug 2026.

    primary

  9. Xero pricing plans, Australia

    Xero. Retrieved 3 Sep 2026.

    primary

  10. Allied health by funding source, the canonical template

    Ledger Map. Retrieved 3 Sep 2026.

    primary

  11. Bookkeeper for a West Melbourne physio clinic

    True Tally. Retrieved 3 Sep 2026. Source updated 1 Jul 2026.

    secondary

Review

Last reviewed 3 Sep 2026 by Shane

General information for Australian allied health practices, not tax advice. Confirm a treatment with your BAS agent or accountant before you post it.

Guided onboarding

Run one real month before you go live.

Sign up, connect Zanda and Xero, and replay a month you already closed. The map is reviewed with whoever owns the books, and nothing posts until you approve it.

Every practice starts from a template. Nothing posts until the map is approved.