# Getting started with Xero in DappleOS

> Xero is an easy to use online accounting system. DappleOS can integrate with Xero to help manage the daily financial invoices you create in DappleOS.

- Published: 28 October 2025
- Updated: 2 September 2026
- Author: DappleOS HQ
- Topics: Guides
- Canonical: https://news.dappleos.com/articles/xero-in-dappleos-setup-guide

![Article image for Getting started with Xero in DappleOS](https://news.dappleos.com/media/articles/media/b0a44f73d0780e1ebcca2f9e6193d77b4837616e53f3f48883562bf7c64be15d.png)

### In this guide

1.  How to connect Xero to your DappleOS account
2.  How to disconnect Xero
3.  How Xero syncs in DappleOS
4.  Mapping and customisation
5.  Troubleshooting & FAQ's

DappleOS integrates directly with Xero to automate your daily sales reporting. Each night, the system pushes a consolidated sales invoice into Xero, removing the need for manual data entry and ensuring your clinic’s financial records remain accurate and aligned. Once in Xero, the invoice can be quickly reconciled with your bank transactions, streamlining end-of-day and monthly bookkeeping.

> _Only users with Admin access can connect and manage the Xero integration from the Accounting section in Settings._

### 1\. How to connect Xero to your DappleOS account

#### **Step 1: Open the Xero integrations page**

-   Go to _Settings_ → _Financial_ → _Xero integrations._
-   Locate the _Xero_ integration section.

![](/media/articles/media/4cd2f5fc0d9e463d3fc3bacef58b6963b4594e1ab43453a24eb9e03cf713e7cb.avif)

#### **Step 2: Add a new link**

-   Select _Add Xero integration._
-   You will be redirected to _Xero_ to grant access.
-   If your Xero login has multiple _organisations_, choose the correct one to link.

**__**

> **_Tip:_** _If you are unsure which organisation to choose, check the_ **_legal entity name_** _and_ **_base currency_** _in Xero first to avoid posting to the wrong ledger._

#### **Step 3: Confirm the connection in DappleOS**

-   After authorising, you will return to _DappleOS_.
-   The page will display the _Linked Xero account_ name for the new row.

![](/media/articles/media/3dc0487737e428a4c7ad5b223041a6638d729357057e9c7eb06aebb1f2689e74.avif)

#### **Step 4: Set required configuration**

-   Set a _Default sales account._ This account is used for any sales that do not match a mapping rule.
-   If you recently added accounts in Xero, select _Sync with Xero_ to refresh the _Chart of accounts_ list.
-   Under _Enabled locations_, choose which _Locations_ will sync to this Xero link.
-   _Optionally_ set a _Tracking category_ and _Tracking option_ to apply to all items from each enabled location.

**
_Tip:_** _You must enable at least one_ **_Location_** _for the Xero sync to run._

![](/media/articles/media/10c4946cfb396bdb7d4856c9ec665351f2b05f59d31e953f941d1c9bcf2ca689.avif)

#### **Step 5: Review permissions requested**

When linking, _DappleOS_ requests the minimum scopes required to perform the sync:

**openid**, **profile**, **email**, **accounting.transactions**, **accounting.settings**, **accounting.contacts**, and **offline\_access**.

> **_Tip:_** **_offline\_access_** _allows a stable, ongoing connection without repeated sign-ins._

### 2\. **How to disconnect Xero**

#### **Option 1: Disconnect in DappleOS**

-   Go to _Settings_ → _Financial_ → _Xero integrations._
-   Find the relevant _Xero organisation_ row.
-   Under _Actions_, select _Disconnect link._

![](/media/articles/media/91d0c9f55f56e944101d71d10dcc93d0b15a68515df425aaec5d5ef500dd6e80.avif)

#### **Option 2: Disconnect in Xero**

-   In **Xero**, go to **Apps** → **Connected apps**.
-   Find **DappleOS** and select **Disconnect**.

> **_Tip:_** _If you disconnect by mistake, return to_ Xero integrations _in_ DappleOS _and use Link in Actions to relink the organisation._

### 3\. **How Xero syncs in DappleOS**

-   On first link, _DappleOS_ creates a _DappleSync Contact_ in _Xero_. This contact is used as the customer on all daily sales **_Invoices._**
-   After linking and enabling at least one _Location, DappleOS_ automatically creates a daily sales _Invoice_ at _2:00am AEST_ each morning.
-   Each **Invoice** contains all sales from the previous day, based on each _Location’s_ timezone.
-   _One invoice per enabled Location_ is created. If you have three enabled _Locations_, you will see three _Invoices_ per day.

**Note:** The sync runs only for _Locations_ that are enabled for that Xero link and only when a valid _Default sales account_ is set.

#### **What gets created in Xero**

-   A _DappleSync Contact_
-   Daily sales _Invoices_:
    -   _One invoice per enabled Location._
    -   The _Invoice_ can contain multiple **Lines** when mapping rules post to different _Sales accounts_. For example, _Retail products_ can post to a different account than _Treatment sales._
    -   The _Invoice currency_ is taken from each _Location’s_ configuration in _DappleOS._
    -   If you sell _GST-exempt services or products_, _DappleOS_ sets the appropriate _TaxType_ on those lines.

> **Tip:** Use Xero’s bank reconciliation to match your daily Invoices once bank transactions import.

### 4\. **Mapping and customisation**

_DappleOS_ allows you to route different revenue types to different _Sales accounts_ in _Xero_. Any sale that does not match a rule will use the _Default sales account._

![](/media/articles/media/5f8a4c96b420b429708ec240332cf3d7452d3b5428c57c605fc9ec7c494d53b5.avif)

#### **Create or edit a mapping**

1.  In _Xero integrations,_ open the linked organisation and go to _Sales account mapping._
2.  Select _Add_ to create a new rule.
3.  Choose what the rule applies to:
    -   **Specific product**. Search for a retail or stock item.
    -   **Specific treatment**. Select from your _Treatments_ list.
    -   **Products with tag**. Applies to all retail or stock items with the selected _Tag._
    -   **Treatments with tag**. Applies to all treatments with the selected _Tag._
    -   **All sales of type**. Choose _Treatments_ or _Products._
4.  Select the _Sales account_ in _Xero_ that this rule should post to.
5.  If you do not want these sales posted to Xero at all, select _Exclude from batches._

> **_Example:_** _To send all Beauty services revenue to a separate account, create a rule for Treatments with tag → Beauty, then select the desired Sales account._

**_Important: Changes to Sales account mapping affect future daily syncs only. Previously posted invoices are not adjusted._**

### 5\. Troubleshooting & FAQ's

**Status shows Not connected after I removed access in Xero.**
In DappleOS, open _Xero integrations_ and use _Link_ under _Actions_ to restore the connection.

**A new Sales account I added in Xero is not appearing in DappleOS.**
Select _Sync with Xero_ to refresh the _Chart of accounts._

**No invoices are appearing in Xero for one of my Locations.**
Check that the _Location_ is enabled under _Enabled locations_ for this Xero link.

**If daily invoices are not being created, confirm that:**

-   A _Default sales account_ is set and mapped to a valid Xero _Sales account._
-   At least one _Location_ is enabled.
-   All _Sales account mapping_ rules point to valid Xero _Sales accounts._

> **Tip:** If you changed mappings today, wait for the next 2:00am AEST sync for the new rules to take effect.

### **Frequently asked questions**

**Can I connect multiple Xero organisations?**
Yes. You can choose which _Locations_ in DappleOS sync to each connected _Xero organisation._

**Which scopes are requested and why?
**DappleOS requests the scopes needed to list the _Chart of accounts,_ create _Invoices_ and _Contacts_, and maintain a stable connection: **openid**, **profile**, **email**, **accounting.transactions**, **accounting.settings**, **accounting.contacts**, **offline\_access**.

**Do you store my Xero credentials?**
No. DappleOS receives a limited access token from Xero that permits only the required actions.
