How to import a bank statement into Xero from a PDF
Convert a PDF bank statement into a Xero-ready CSV or OFX file and import it: column mapping, date formats, and the errors Xero shows when a file is rejected.
Xero imports bank transactions from CSV, OFX, QIF and QBO files when a feed isn't available. For PDF statements, the fastest route is PDF → OFX (one click in Xero, no column mapping) or PDF → CSV using Xero's template columns.
Option 1: OFX (recommended)
OFX files include the account period and a unique ID per transaction, so Xero can detect duplicates if you import an overlapping month later.
- Convert the statement with Rowledger and choose OFX.
- In Xero go to Accounting → Bank accounts, open the account and click Manage account → Import a statement.
- Upload the
.ofxfile. Xero reads the dates and amounts directly, with no mapping step. - Reconcile the imported statement lines as usual.
Option 2: CSV using Xero's columns
Xero's import template has these columns: Date, Amount, Payee, Description, Reference, Check Number (the starred ones are required). Amounts are signed: spending is negative, received money is positive. Rowledger's Xero CSV preset writes this layout and fills Payee with a cleaned-up merchant name.
Import it through the same Import a statement button. Xero asks you to confirm the date format and lets you map columns if the headers differ from its template.
Date format
Xero expects the date order used by your organisation's region: DD/MM/YYYY for the UK, Australia and New Zealand; MM/DD/YYYY for the US. Rowledger detects day/month order from the statement itself and defaults the export accordingly; you can switch it in the Dates dropdown before downloading.
Errors you might see
- "Import failed. Please check the file format": the CSV has a title row above the headers or a totals row at the bottom, or the amount column contains currency symbols. Export a fresh CSV.
- Transactions import with the wrong sign: the statement prints money out without a minus sign and the file was built from the printed sign. Rowledger derives the sign from the running balance, so re-converting fixes this.
- Statement lines missing: Xero limits CSV imports to 1,000 lines per file; split long statements by month.
- Statement balance doesn't match: compare Xero's statement balance with the closing balance on the PDF. Rowledger's reconciliation badge tells you before import whether the extracted rows add up to the printed closing balance.
Scanned or photographed statements
If the PDF is a scan (no selectable text), Rowledger runs OCR in your browser and then applies the same balance check, so a misread digit shows up as a flagged row rather than a silent error in Xero.
Free, in your browser, reconciled against the printed balances.
Open the converter