$StatementProof

Guides

How to Import a Bank Statement Into Xero

By Tarun Vashishth · Published

Xero's bank feeds cover most day-to-day transaction syncing, but a bank feed only sees transactions from the point you connect it — it has no way to backfill history from before the feed existed, or to fill a gap if a feed was disconnected for a period. That's the situation a manual statement import is for.

Which format to use

Xero accepts CSV directly through its manual statement import (Accounting → Bank accounts → the account → Import a Statement), with a mapping step where you tell it which column is the date, which is the amount, and so on. This tool's QIF export is also compatible with Xero's importer for accounts where CSV mapping is inconvenient. There's no QBO-equivalent format Xero reads directly — QBO is an Intuit-specific variant built for QuickBooks Web Connect, so use CSV or QIF for Xero rather than QBO.

The CSV import steps

  1. Export the statement as CSV from this tool.
  2. In Xero: Accounting → Bank accounts → select the account → Import a Statement.
  3. Upload the CSV. Xero will ask you to map each column — Date, Amount, Payee/Description — to its own fields.
  4. Confirm the date format matches what Xero expects for your organization's locale before completing the import — a mismatched date format is the most common import error.
  5. Review the imported transactions before reconciling them against existing bank feed data, to avoid double-counting a period a feed already covered.

Avoiding duplicates against an existing bank feed

If part of the date range you're importing already came in through a live bank feed, Xero doesn't automatically deduplicate a manual CSV import against feed-sourced transactions the way it can within a single feed. Check the date range of your existing feed data first, and import only the statement period that the feed didn't already cover — usually the gap before the feed was connected, or a period during which it was disconnected.

Verify the source data first

Before importing anything into Xero, confirm the exported file's numbers actually match the statement: opening balance plus every transaction should equal the closing balance printed on the statement. A missing or misparsed row is much easier to find and fix in the export than after it's mixed into Xero's ledger. See the verification guide — this tool runs the check automatically before you export.

Related: CSV export,catching up a year of old statements.