Skip to content
5 min readUpdated

How to Import a Bank Statement into Xero

Xero imports bank statements as OFX, QFX, QIF, CSV or QuickBooks files — not as PDFs. Convert the PDF to OFX (Xero's recommended format) or CSV, then use Manage Account > Import a Statement on the bank account. The steps below follow Xero's own help centre.

Key TakeawayUse OFX when you want the import to just work; use CSV when you want to check the rows first. Either way, money out must be negative and dates unambiguous.

Import a bank statement into Xero

  1. Convert the PDF statement to OFX or CSV

    Xero imports OFX, QFX, QIF, CSV and QuickBooks files, not PDFs. Convert the statement to OFX — the format Xero recommends — or to CSV if you want to look over the rows first. Scans and phone photos convert the same way.

  2. Open the bank account in Xero

    In the Accounting menu select Bank accounts, then find the account the statement belongs to.

  3. Choose Import a Statement

    Open Manage Account on that account and select Import a Statement, then pick the converted file.

  4. Map the columns and confirm the dates (CSV only)

    The first time you import a CSV, assign each column to a statement field: Date and Amount are required, Description and Payee optional. If a date could be read two ways, Xero asks which format the file uses. An OFX file skips this step.

  5. Reconcile the statement lines

    The transactions arrive as statement lines on the account, ready to match or create against transactions in Xero.

What Xero accepts

From Xero Central, About manually importing bank statements and Import a bank statement in CSV format:

  • Formats: OFX, QFX or QuickBooks; QIF; CSV. Xero recommends OFX, which imports without changes.
  • PDF: not importable — the help centre points to a conversion service.
  • CSV fields: Date and Amount required; Payee and Description optional. One Amount column, money out negative with a minus or in brackets, no thousands separators.
  • CSV clean-up: header in row 1 with unique names; no opening or closing balance columns, account number or empty rows; at most 100,000 rows.
  • Who can import: the administrator role, or standard with the bank accounts role.

A statement converted to OFX or CSV already meets these: one row per transaction, a single signed amount, dates as year-month-day, and the balances and headers of the PDF left out.

Statements from Australian, UK and New Zealand banks

These statements print dates day first, often mark credits with CR, and may split money in and out into two columns. A converted file takes all three out of the picture: every date becomes year-month-day, a CR becomes a plus sign, and the two columns become one amount. That is the shape Xero's CSV import asks for, so there is nothing to fix in a spreadsheet first.

Three checks before you reconcile

The dates are the right way round
Look at a transaction from after the 12th of a month. If it is there, day and month were not swapped.
Spending is money out
A purchase should appear as spent. If purchases show as received, the signs were taken from a card statement as printed.
No period is missing or doubled
Each statement's dates should start where the previous one ended. Overlaps with a bank feed are the usual source of duplicates.

Frequently asked questions

How do I import a bank statement into Xero?

Accounting > Bank accounts, open Manage Account on the account, select Import a Statement and upload an OFX, QFX, QIF, CSV or QuickBooks file. A CSV needs its columns mapped the first time; then the lines appear in Reconcile.

Can I import a PDF bank statement into Xero?

Xero's help centre says PDF bank statements can't be imported and suggests converting them to one of the supported formats. Xero has offered a PDF import for digital statements from a list of supported US and Canadian banks; for any other bank, a scan, or another region, convert the PDF to OFX or CSV.

Which file format is best for Xero?

OFX. Xero recommends it because an OFX file imports without any changes or column mapping. Choose CSV when you want to edit or check the rows in a spreadsheet before importing.

What does a Xero CSV need?

A header row in row 1 with unique column names, a Date and an Amount on every row, and one Amount column with money out negative (a minus or brackets), no thousands separators. Opening and closing balances, the account number and empty rows have to go, and a file can hold up to 100,000 rows. A converted CSV already has that shape.

Why did my dates import wrong in Xero?

The file was read in the wrong order of day and month — 04/09 as April 9 instead of 4 September. Xero asks which format to use when a date is ambiguous; a converted file writes every date as year-month-day, which cannot be read two ways.

Can I import a credit card statement into Xero?

Yes, into the credit card account in Xero, the same way. Convert it so purchases are negative and payments positive — a card statement prints them the other way round — or every purchase lands as money received.

What if the statement balance in Xero does not match the bank?

Usually a statement period was skipped, imported twice, or overlaps a bank feed. Compare the dates of the imported statements on the account, delete the duplicate lines, and import the missing period.