# Xero

The Loopit and Xero integration allows you to push data from Loopit into Xero.  When invoices are issued or payments recorded Loopit will automatically sync that to Xero.  This streamlines your accounting processes reducing manual export and import allowing you to focus on core operations.

### How does it work?

By creating a connection with your Xero account it will allow data to be transferred.  After an invoice is issued it will be created in Xero against the customer record in Xero.  If a customer does not exist Loopit will create the customer in Xero identified by the email address.

Each line item on the invoice in Loopit is created within the invoice in Xero.  This allows you to report accurately and ensure what you see in Loopit matches Xero.&#x20;

When a payment is settled and successful a record will be inserted against the invoice in Xero.

Similar processes are followed when an invoice is adjusted or credit notes are applied to an invoice, it will update Xero.

### Does Loopit ingest data from Xero?

No, we currently only push data to Xero.  Should an action be done within Xero it will not appear in Loopit e.g. an invoice was adjusted in Xero will not adjust the invoice in Loopit.

### What data can we push to Xero?

We can push the following data to Xero;

* Customers
* Invoices
* Payments
* Refunds
* Credit notes

### Setup & Configuration

This section guides you through connecting your Xero tenant, completing account mappings, and verifying that your integration is correctly configured before syncing invoices or payments.

{% hint style="info" %}
Please reach out to our support via **<support@loopit.co>** to enable Xero integration for your workspace.
{% endhint %}

***

#### 1. Connect your Xero tenant

Once the integration is enabled, it becomes visible on the **Integrations** page.

1. Navigate to **Settings → Integrations → Xero** in your Loopit workspace.

   <div align="left" data-with-frame="true"><figure><img src="/files/BFiPO9Q5dqdxt2DX9o5M" alt="" width="563"><figcaption></figcaption></figure></div>

2. Click **Setup** and continue

   <div align="left" data-with-frame="true"><figure><img src="/files/a5majJg2mStAT74si7yY" alt=""><figcaption></figcaption></figure></div>

3. Click **Connect / Authorise** and sign in using your Xero account credentials.

   <div align="left" data-with-frame="true"><figure><img src="/files/LDD12iNZT91fsdp8Yivc" alt=""><figcaption></figcaption></figure></div>

4. Select the **Xero organisation (tenant)** you want to link with Loopit and click **Allow Access**.

   <div align="left" data-with-frame="true"><figure><img src="/files/SXNhT3pAPHj9xquSQXzw" alt=""><figcaption></figcaption></figure></div>

5. Once the connection is successful, you will be redirected back to the **Integration** page.

   <div data-with-frame="true"><figure><img src="/files/sXjz9h4KGGjCYO9YODKb" alt=""><figcaption></figcaption></figure></div>

{% hint style="warning" %}
**Important:** Ensure your Xero organisation uses the **same currency** as your Loopit workspace (e.g. AUD).
{% endhint %}

***

#### 2. Configure Item Mapping

Item mapping links your **Loopit billing items** (e.g. *Base Fee*, *Registration Fee*, *Insurance*) to specific **ledger accounts** in Xero.

1. Click **Edit Item Mapping** under your connected tenant.

   <div align="left" data-with-frame="true"><figure><img src="/files/ktSdRxj2NCYRK4imWa2F" alt="" width="563"><figcaption></figcaption></figure></div>

2. You’ll see a list of all Loopit items available for mapping.

   <div align="left" data-with-frame="true"><figure><img src="/files/NphSmJ5jhkovjH74pLTz" alt=""><figcaption></figcaption></figure></div>

3. For each item, choose the corresponding **Xero item and Xero ledger account.**

4. Once mapped, Loopit will automatically use those Xero items and ledger accounts when pushing invoices into Xero.

***

#### 3. Configure Gateway Mapping

Gateway mapping determines how payments from each gateway (e.g. *Stripe*, *Off Platform*) are recorded in Xero.

1. Click **Edit Gateway Mapping**.
2. Each connected gateway appears in the list.
3. Use the dropdown under **Xero Account** to select the correct ledger or bank account.\
   For example:
   * Stripe → `Stripe Clearing Account`
   * Off Platform → `Bank Account`
4. When a payment is recorded in Loopit, it will post to the mapped account in Xero.<br>

   <div align="left" data-with-frame="true"><figure><img src="/files/0pqWEUqPT6xeejOSGT6N" alt=""><figcaption></figcaption></figure></div>

***

#### 4. Verify Mappings

After you’ve completed your item and gateway mappings:

* Confirm that **all billing items** and **gateways** have assigned accounts.
* The Xero settings summary shows your progress (e.g. “12 of 12 items mapped”).
* You can update mappings at any time without breaking existing sync data.

{% hint style="danger" %}
If mappings are incomplete, the sync process will fail and affected records will not be pushed to Xero.
{% endhint %}

<div align="left" data-with-frame="true"><figure><img src="/files/I7iesX3Co6YkdaemCDeu" alt=""><figcaption></figcaption></figure></div>

{% hint style="warning" %}
If you already have existing people and companies in your workspace, please contact our support team at <support@loopit.co> to request a bulk customer sync after the integration is configured.
{% endhint %}

***

#### 5. Test the Integration

Once mappings are complete, perform a simple test to verify the sync:

1. Create a **test customer** in Loopit (e.g. “Dillan America Hand”).
2. Issue a new **invoice** (for example, `$110.00` total including $10 GST).
3. When you click **Issue Now**, the invoice should appear in Xero automatically under the matching customer.
   * Loopit creates a new contact in Xero if one doesn’t already exist.
   * The invoice includes all mapped line items, tax, and due date.
4. Record a **partial payment** in Loopit (e.g. `$50.00`).
   * The payment appears instantly in Xero against the same invoice.
   * Xero updates the remaining balance (e.g. `$60.00 due`).

This confirms that your integration is successfully syncing both invoices and payments.

{% hint style="info" %}
Note that subsequent transactions — such as issuing an invoice, recording a partial payment, and then applying an adjustment — may take some time to sync, as each action is processed sequentially.
{% endhint %}

**Person/Company sync**

<div align="left" data-with-frame="true"><figure><img src="/files/r5L7aaUrVSbzqOaDYwpp" alt="" width="563"><figcaption></figcaption></figure></div>

<div align="left" data-with-frame="true"><figure><img src="/files/gbVQTekgSIJp8vCkkpRI" alt=""><figcaption><p>Person synced to Xero</p></figcaption></figure></div>

**Invoice sync**

<div align="left" data-with-frame="true"><figure><img src="/files/HJTl931NyRFPjnBuOHFq" alt=""><figcaption></figcaption></figure></div>

<div align="left" data-with-frame="true"><figure><img src="/files/jGuWiwGtI9szKvR6ipYA" alt=""><figcaption><p>Invoice synced to Xero</p></figcaption></figure></div>

**Payment and credit note sync**

<div align="left" data-with-frame="true"><figure><img src="/files/ZXYxDGOKu9o9WPDgPw07" alt="" width="563"><figcaption></figcaption></figure></div>

<div align="left" data-with-frame="true"><figure><img src="/files/6AfZjkeMWy2rDSDJd6CR" alt="" width="563"><figcaption></figcaption></figure></div>

<div align="left" data-with-frame="true"><figure><img src="/files/eB1nfl9q43qHucM5NxL0" alt="" width="563"><figcaption><p>Invoice after payment and adjustment in Loopit platform</p></figcaption></figure></div>

<div align="left" data-with-frame="true"><figure><img src="/files/IiZDyKJBLtFMlNfhd55X" alt=""><figcaption><p>Payment and adjustment credit note synced to Xero</p></figcaption></figure></div>

**Refund sync**

<div align="left" data-with-frame="true"><figure><img src="/files/XnK7ePLjeIqlr9H3mXbw" alt="" width="563"><figcaption></figcaption></figure></div>

<div align="left" data-with-frame="true"><figure><img src="/files/9UN2lUH3wo2aZm4u9BU9" alt="" width="563"><figcaption></figcaption></figure></div>

<div align="left" data-with-frame="true"><figure><img src="/files/s1LefG4qO9iY2PuiMsCg" alt="" width="563"><figcaption><p>Refund synced to Xero</p></figcaption></figure></div>

***

#### 6. Best Practices

✅ **Keep mappings up to date:**\
Whenever you add new billing items or gateways in Loopit, revisit your Xero mappings to ensure they’re assigned.

⚙️ **Use meaningful account names:**\
Label Xero accounts clearly (e.g. “Base Fee Revenue”, “Stripe Clearing”) to simplify reconciliation.

💰 **Reconcile by gateway:**\
Map each payment source to its correct clearing or bank account to keep balances aligned.

🧾 **Verify currency consistency:**\
Always confirm your Xero tenant and Loopit workspace use the same base currency (e.g. AUD).

***

#### 7. Troubleshooting

If invoices or payments are not syncing:

* Check that your **tenant connection** status is *Configured*.
* Ensure the **item** and **gateway mappings** are fully complete.
* Verify the **invoice** is *issued* (not draft).

{% hint style="info" %}
Loopit only pushes data to Xero — it does not fetch or overwrite data from Xero.\
Changes made directly in Xero will not appear in Loopit.
{% endhint %}

***

#### Summary

| Category                 | Description                                                                  |
| ------------------------ | ---------------------------------------------------------------------------- |
| **Integration type**     | One-way (Loopit → Xero)                                                      |
| **Supported data**       | Customers (Person and Company), Invoices, Payments, Refunds, Credit Notes    |
| **Mapping required**     | Items (Xero items and ledger accounts) and Gateways (bank/clearing accounts) |
| **Currency requirement** | Must match between Xero and Loopit                                           |
| **Best used for**        | Automated billing sync and reconciliation                                    |
| **Troubleshooting tip**  | Check configuration status and complete mappings                             |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.loopit.co/settings/integrations/xero.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
