Skip to main content

How to Connect Xero to Excel

What actually happens when you click Connect to Xero, and how to manage the link afterwards.

Connecting Xero to Excel and exporting Xero to Excel are two different things. An export is a snapshot — a CSV or a copied table that goes stale the moment Xero's numbers change. A connection is a standing OAuth link: once it exists, XO.ORG, XO.BALANCE, and the rest of XO Report's formulas can read live figures from Xero on demand, for as long as the link stays active.

This page covers the connection itself — what Connect to Xero actually does, what access it grants, how to link more than one organisation, and how to disconnect or sign out when you need to. For a full walkthrough of installing, writing your first formula, and refreshing a report, see how to export Xero to Excel — it covers install through first formula end-to-end.

  1. Install the add-in

    Install XO Report from Microsoft AppSource, or from inside Excel via Home → Add-ins, search for XO Report, and click Add. The Xero App Store listing works too — install from there and Xero routes you back to AppSource to finish the Excel side. Either entry point lands you in the same task pane, on Windows, Mac, or Excel for Web.

  2. Connect to Xero

    Open the task pane (the XO Reportbutton in Excel's Home tab) and click Connect to Xero. A Xero login window opens — sign in, choose the organisation you want to link, and click Allow access. XO Report authenticates with OAuth 2.0: your Xero password is never seen or stored by XO Report, and Xero's own consent screen — not Excel — is what you're approving.

    The consent screen grants read-onlyaccess to your organisation details, chart of accounts, contacts, invoices and bills, payments and credit notes, bank transactions, manual journals, budgets, tracking categories, tax rates and the financial reports. There is no write scope — no formula or table in Excel can create, edit, or delete anything in Xero. You can revoke the connection from Xero's own "Connected apps" settings at any time, independent of anything you do in Excel.

    Connecting your first organisation triggers a one-time welcome screen. Click Start Free Trial to activate the 14-day trial (up to 10 organisations, no credit card).

  3. Confirm the link with =XO.ORG()

    In any cell, type =XO.ORG() and press Enter. It spills a two-column table — Org ID in column A, Org Name in column B — listing every organisation you have connected so far. Reference the Org ID cell (for example A2) in other XO formulas such as =XO.BALANCE(A2, "4000", C1, D1). If the formula returns an error instead of a table, the connection did not complete — repeat the previous step.

  4. Understand what the connection can and can't do

    The connection is read-only end to end. Every formula and every table is a read operation — XO Report never writes back to Xero. Your Xero financial data is not stored permanently on XO Report's servers either; XO Report caches temporarily (minutes, not days) to speed up formulas, and cached data is purged automatically.

    Refresh behaviour differs by surface. Formulas recalculate automatically whenever Excel decides their inputs changed. Tables and Reports inserted from the task pane cache more aggressively and have their own per-block Refresh control. None of these refresh on a schedule by themselves — the connection is pull-only: data moves when a formula recalculates or you click Refresh, never on a push or subscription basis.

  5. Add more organisations, disconnect, or sign out

    Adding an organisation: repeat Connect to Xero in the task pane — each click links one organisation, so connect them one at a time. How many you can use depends on your plan.

    Disconnecting or swapping an organisation: this is not done in the Excel add-in. Open the account portal at xo-report.com/account, go to the Advanced section, and click Disconnect (or Swap) next to the organisation. You'll be asked to type the organisation name to confirm. Disconnecting revokes that organisation's Xero OAuth connection — formulas and tables referencing it stop returning data until it's reconnected, while formulas pointing at other, still-connected organisations are unaffected. On paid plans a disconnected or swapped slot enters a 30-day cooldown before it can be reused for a different organisation, and only the billing admin can swap.

    Signing out: in the task pane, go to Settings → Advanced → Sign Out. This clears your local XO Report session only — it does not disconnect any organisation. Use it if you need to switch which Xero user is signed in on this device; use the account portal if you need to actually remove an organisation from the plan.

The pattern is consistent across every step here: Excel's task pane handles the moment-to-moment connection — signing in, picking an organisation, signing out locally — while the account portal at xo-report.com/account owns anything that changes what's actually linked, meaning adding, disconnecting, or swapping an organisation.

Once =XO.ORG() returns a row for the organisation you expect, the connection is live and every other XO Report formula and table can read from it. From here, the how-to-export tutorial walks through writing your first real formulas and inserting your first report.

Frequently asked questions

Is the connection secure — what can XO Report actually see?
XO Report connects using OAuth 2.0, so your Xero password is never seen or stored by XO Report. The connection grants read-only access to your organisation details, chart of accounts, contacts, invoices and bills, payments and credit notes, bank transactions, manual journals, budgets, tracking categories, tax rates and the financial reports — there is no write scope, so no formula or table can change anything in Xero. Xero data itself is not stored permanently on XO Report's servers; only temporary caching (minutes, not days) is used to speed up formulas, and cached data is purged automatically.
Does connecting work in Excel for Mac and Excel on the web?
Yes. The same add-in and the same Connect to Xero flow run on Excel desktop (Windows and Mac) and Excel for Web — the task pane and OAuth steps are identical across all three.
Can I connect several Xero organisations?
Yes. Each Connect to Xero click links one organisation, so repeat it for every organisation you need. How many you can use at once depends on your plan — Solo covers 1, Lite 3, Pro 10, Business 25, and Max 50 — and the free trial covers up to 10.
What happens to the workbook if I disconnect an organisation?
Disconnecting — done from the account portal, not Excel — revokes that organisation's Xero OAuth connection. Every formula and table in the workbook that references that organisation stops returning data and shows an error until it's reconnected; formulas pointing at other, still-connected organisations are unaffected.
Is there a cost, or a free trial?
XO Report has a 14-day free trial covering up to 10 organisations, with no credit card required. Paid plans start at 9.90/month for Solo (1 organisation) and scale up to Max at 99.90/month (50 organisations).
Is this the same as exporting Xero to Excel?
No. An export is a one-off snapshot — a CSV or a copied table that stops reflecting Xero the moment it is saved. A connection is a standing OAuth link: once it is in place, formulas like XO.BALANCE and XO.PROFIT keep reading live Xero data on demand, with no re-export needed.

Related reading

For a complete overview of building Xero reports in Excel — including how this function fits into a full workflow — see our complete Xero to Excel guide.

Get Xero data flowing into Excel

Install XO Report and try the tutorial above with your own Xero data. 14-day free trial — no credit card.

Free trial · No credit card · Cancel anytime