---
title: "Xero integration guide"
slug: "xero-integration-guide"
tags: ["Area - Accounting Integrations", "Focus - Construction", "Focus - Service Replacement", "Role - Accountant", "Role - Admin", "Type - Commercial", "Type - Residential"]
updated: 2026-04-09T02:06:25Z
published: 2026-04-09T02:06:25Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://help.servicetitan.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Xero integration guide

## Overview

Using the Xero integration with ServiceTitan integrates journal entries for all Accounts Receivable (AR) transactions. Inventory bills are also included for Accounts Payable (AP) so you can manage payments more efficiently through Xero, ensuring that bills are accurately tracked and paid.

---

### 

#### Who uses this feature

- Administrators, office employees, managers, accountants, and bookkeepers
- Applies to all business types

#### Feature configuration

- This feature is currently in Private Preview and available for specific accounts. This feature is subject to change.

## Things to know

- Journal entries are synced to Xero in real time or manually based on a sync action taken by the user. When using this integration, we recommend:
  - Setting the *Export Type* of all transactions to *Journal Entry Summary* except for vendor bills in the [Journal Entries and Auto-Batching](/v1/docs/configure-journal-entries#create-journal-entries) settings screen.
  - Setting the *Export Type of*vendor bills to *Document - General Ledger* in the [Journal Entries and Auto-Batching](/v1/docs/configure-journal-entries) settings screen.
- A ServiceTitan journal entry summary record maps to a Xero manual journal record.
- You can use the [Export Error Report](/v1/docs/export-error-report-guide) to generate a report on export errors for this integration.

## What I need to get started

To use this integration, you must have the following features enabled:

- [Journal Entries](/v1/docs/journal-entries-overview)
- [Accounting Periods](/v1/docs/use-accounting-periods)

## Step 1: Connect ServiceTitan to Xero

One ServiceTitan account can connect to only one Xero organization.

1. On the navigation bar, go to **Settings ![](https://cdn.document360.io/961862ab-d0f2-4d91-bb62-a62ee8184eff/Images/Documentation/xero-integration-guide-image-fwl31tfo.png)**.
2. In the side panel, go to **Integrations > Xero**.
3. On the *Xero Connection* screen, click **Connect**. ![](https://cdn.document360.io/961862ab-d0f2-4d91-bb62-a62ee8184eff/Images/Documentation/xero-integration-guide-image-jsefxrc4.png)

## Optional step: Map business unit to tracking category

A tracking category in Xero is a customizable label that groups and reports on transactions. Similar to business units in ServiceTitan, tracking categories help you break down financial data by departments, locations, or services.

This gives you a clearer breakdown of income and expenses, so you can see which parts of the business are making the most money, costing the most to run, or affecting your bottom line.

If you are using tracking categories in Xero, you can map ServiceTitan business units to a Tracking Category and Tracking Option in Xero. You can only map one tracking category to a business unit in ServiceTitan.

> [!WARNING]
> **Caution:** The *Tracking Category* and *Tracking Option* columns must exactly match the tracking category and tracking option in Xero.

To do this:

1. On the navigation bar, go to **Settings**.
2. In the side panel, go to **Integrations > Xero**.
3. On the *Xero Connection* screen, go to *Tracking options mapping*.
4. For each ServiceTitan business unit, select a *Tracking Category* and *Tracking Option*.

![](https://cdn.document360.io/961862ab-d0f2-4d91-bb62-a62ee8184eff/Images/Documentation/xero-integration-guide-image-mmadnnin.png)

## Step 2: Map general ledger accounts between ServiceTitan and Xero

Map the Chart of Accounts in Xero to the [General Ledger (GL) accounts in ServiceTitan](/v1/docs/set-up-general-ledger-accounts). Account names must exactly match between the two platforms. For more on creating Chart of Accounts in Xero, go [here](https://developer.xero.com/documentation/guides/how-to-guides/integration-best-practices/).

> [!NOTE]
> **Note:** Xero has control accounts to which manual journals cannot be posted. New accounts need to be created and ensure they match on name to the ServiceTitan accounts. For more, go [here](https://central.xero.com/s/article/Locked-and-system-accounts-in-your-chart-of-accounts-US#Recordmovementsinsystemaccounts).

> [!WARNING]
> **Caution:** Make sure the account names between ServiceTitan and Xero match exactly.

## Step 3: Make sure pricebook items have correct GL accounts

Once you've mapped the GL accounts between ServiceTitan and Xero, make sure all your services, materials, and equipment in Pricebook are mapped to the correct GL accounts. For more, see [Edit pricebook items](/v1/docs/edit-pricebook-items).

## Step 4: Configure journal entries and auto-batching settings

Go to **Settings > Accounting > Journal Entries and Auto-Batching**to access the *Journal Entries and Auto-Batching* settings screen to enable the settings.

The table below outlines recommended settings, assuming you have the Purchasing or Inventory modules enabled.

| Transaction Type | Export Type | Journal Entry Cadence | Auto Export Frequency | Batch Cadence | Separate by Business Unit | Separate by Payment Type |
| --- | --- | --- | --- | --- | --- | --- |
| Invoices | Journal Entry Summary | Daily | Manual* | Daily | No | N/A |
| Payments (Invoices) | Journal Entry Summary | Daily | Manual* | Daily | No | No |
| Applied Payments | Journal Entry Summary | Daily | Manual* | Daily | No | No |
| Bank Deposits | Journal Entry Summary - 1 Bank Row | Per Transaction | Manual* | Daily | No | N/A |
| Vendor Bills | Document** | Daily | N/A | Daily | No | N/A |
| Inventory adjustment, if applicable | Journal Entry Summary | Daily | Manual* | Daily | N/A |  |

*We strongly recommend you manually sync journal entries using **Actions > Start Syncing** on the *Journal Entries* screen on a daily cadence due to API limits on Xero. You can use the *Real Time* auto-export frequency if you are sure you won't hit the API limits.

**Synced to Xero using the *Batch Transactions* screen.

## Auto-Export Start Date

Add the *Auto-Export Start Date*. This date should be the date when you want to start auto-exporting your journal entries. If any historical journal entries need to be synced, you can apply a past date in this field.

> [!NOTE]
> **Note:** You will not be able to manually sync journal entries if they are set before the date specified in this field.

## Auto-Batching Start Date

Add the *Auto-Batching Start Date*. Batches are automatically created and can be found on the *Batch Transactions* screen.

## Step 5: Manually sync your journal entries

When you are ready to sync the journal entries, use the manual sync action in the *Journal Entries* screen.

1. Go to the navigation bar and click **Accounting ![](https://cdn.document360.io/961862ab-d0f2-4d91-bb62-a62ee8184eff/Images/Documentation/xero-integration-guide-image-fbsvrdnh.png)**.
2. In the side menu, click **Journal Entries**.
3. On the *Journal Entries* screen, select journal entries you want to sync.
4. Click **Actions > Start Syncing**.
5. When the journal entries are updated and need to be resynced, the status on the *Sync Status*column appears as *OutofSync*.

## Calculating GST in Xero

This integration allows Xero to calculate Goods and Services Tax (GST) directly, instead of receiving GST as a separate line item from ServiceTitan.

This ensures GST is calculated accurately per line item based on Xero tax rates, aligns exported data with Xero's accounting rules, and enables proper Business Activity Statement (BAS) reporting for Australian businesses.

### How it works

When **Calculate GST taxes in Xero** is enabled:

- ServiceTitan stops sending GST as a separate line item
- GST is calculated across each line item
- Xero calculates GST using the tax rate assigned to each GL account
- Journal entries, vendor bills, and credits align with Xero's GST calculation

When the setting is disabled:

- ServiceTitan reverts to the previous behavior
- Exports will fail if Xero GL accounts tax rate is not BAS Excluded
- Enable GST taxes to be calculated in Xero

To enable this feature:

1. In ServiceTitan, go to the top toolbar and click **Settings**.
2. In the side panel, go to **Integrations > Xero**.
3. Select **Calculate GST taxes in Xero**.
4. Select a GST start date. This date determines when ServiceTitan begins applying the GST calculation.
5. Click **Save**.

After the feature is enabled:

- AR and revenue journal entries
  - Xero calculates GST automatically using GL tax rates
- Vendor bills and credits
  - GST follows the same per-line calculation logic
  - Avoids reliance on a single GST line item
- Exports
  - Journals balance correctly
  - Exports are accepted by Xero without GST errors

### If an export fails

If exports fail because the Xero GL accounts tax rate is not BAS Excluded:

- Change the tax rate on Xero GL account
- Retry the export

## Impact on accounting workflows

When using the Xero integration with ServiceTitan, the following changes take place:

- ServiceTitan becomes the Accounts Receivable sub-ledger.
- ServiceTitan provides the total sales tax liability, and sales tax by jurisdiction for compliance and remittance is available in ServiceTitan reporting.
- All inventory counts and individual SKUs are managed in ServiceTitan. The inventory value is available on the financial statements in Xero.

## Want to learn more?

- See [Accounting Integrations](/v1/docs/accounting-integrations-overview).
