How to import a bank statement into Xero

Xero imports statement files from Accounting, Bank accounts, Import a Statement. It accepts OFX, QFX, QBO, QIF and CSV; a CSV needs a column mapping the first time. If you only have a PDF statement, convert it to a Xero CSV or OFX file first, then reconcile the imported lines.

Last updated: November 2, 2026

A bank feed is the normal way transactions get into Xero. When there is no feed, the feed broke for a few weeks, or a client hands you a year of old statements, you import a file instead. This guide covers that manual import, step by step, with the problems people run into most.

Which files Xero accepts

Xero’s help centre has separate articles for each route: OFX, QFX or QuickBooks (QBO) files, QIF files and CSV files. Xero says an OFX file from your bank can be imported without any changes, and it recommends OFX over the other formats. A CSV needs a mapping step the first time, because Xero has to learn which column is the date and which is the amount. Xero also publishes an article on importing PDF bank statements. It covers statements from banks Xero supports, so check that page for your bank.

Which one to pick:

  • OFX, QFX or QBO carry dates in a fixed format and need no mapping. They are the safest choice when your bank offers one.
  • CSV lets you open the file, read every line and fix it before import, which helps when the source was a PDF.
  • QIF is an older format. Use it only when the bank offers nothing else.

If the bank only gives you a PDF, the Rowkeel converter makes a Xero CSV or an OFX file from it in your browser. The file is checked against the opening and closing balances on the statement before you download it.

Steps

  1. Get a file Xero can read. Download an OFX, QFX, QBO, QIF or CSV file from your bank. If you only have a PDF statement, convert it to a Xero CSV or an OFX file first.
  2. Open the bank account in Xero. In the Accounting menu, select Bank accounts. Find the account the statement belongs to and click its menu icon.
  3. Start the import. Select Import a Statement. Drag the file in or click Select file to choose it from your computer, then click Next.
  4. Map the columns (CSV only). If Xero asks, assign each column in the file to a statement field, such as Date to Transaction Date and Amount to Transaction Amount, choose the date format if Xero asks for it, then click Next.
  5. Check and finish the import. Review the lines Xero shows, clear the checkbox next to any line you do not want, then click Complete import.
  6. Reconcile the new lines. Open the Reconcile tab for the account and match or create a transaction for each imported line.

The steps above follow Xero’s own help articles as of the date at the top of this page. Xero changes its menus from time to time; if a button has moved, the About manually importing bank statements article has the current path.

What the CSV has to look like

Xero’s template uses five columns: *Date, *Amount, Payee, Description and Reference. The asterisk marks the two required ones. A few rules decide whether the import works:

  • One sign for direction. Money out is a negative amount, money in is positive. Do not use separate debit and credit columns with this template.
  • Only dates in the date column and only numbers in the amount column. Currency symbols, thousands separators written as text and a totals row at the bottom are the usual culprits when an import fails. Xero’s troubleshooting article covers the error messages.
  • Keep the same headings. Xero remembers your column mapping for later imports, unless a new file has extra columns or different headings.
  • Description carries the bank text. Payee and Reference can stay empty. Splitting the bank’s text into payee and reference by guesswork makes bank rules match the wrong lines.

Date format: the error that does not always show

Xero asks which date format the CSV uses, and it reads ambiguous dates according to that answer. The trap is the first twelve days of each month. A UK statement line dated 03/04/2026 means 3 April. Read as MM/DD it becomes 4 March, and Xero accepts it without complaint because both are valid dates. You only notice later, when lines land in the wrong month and the reconciliation does not tie out.

Two ways to avoid it:

  1. Check the date format prompt every time, and compare the first few imported lines with the statement.
  2. Use an OFX file, which stores dates as year, month and day in a fixed order, so there is nothing to choose.

The Rowkeel Xero CSV writes dates as DD/MM/YYYY, the format UK, Australian and New Zealand organisations use. For a US organisation, the OFX export avoids the question.

Duplicates and overlapping periods

Do not count on Xero to catch duplicates for you. A line converted from a PDF can differ slightly from the same line in a bank feed, so both can end up in the account. Before importing, look up the date of the last statement line already in Xero for that account and start the new file the day after. If a statement was imported twice by mistake, find it in the account’s list of bank statements and delete the extra one before you reconcile. Xero’s article on viewing bank statements shows where that list is.

After the import

Imported lines are not transactions yet. They sit in the Reconcile tab until you match each one to an invoice, bill or bank rule, or create a new transaction for it. If the balance in Xero does not match the bank after reconciling, the guide on how to reconcile a bank statement walks through how to find the gap.

For QuickBooks instead of Xero, see how to import a QBO file into QuickBooks Online.