Guide

How to import a PDF bank statement into Xero

If the transactions you need are trapped in a PDF, you have two practical routes into Xero: import the PDF directly when Xero supports it, or turn the statement into a clean, verified CSV first. The right route depends on your country, Xero plan, statement layout, and how much certainty you need before the data reaches the books.

Choose the best source file first

Before working from a PDF, check whether the bank can export OFX, QFX, QIF, or CSV for the full period. Xero recommends OFX when it is available because the file already contains structured transaction data. A PDF is the fallback when the bank no longer offers a data export, the account is closed, the feed does not reach far enough back, or the client sent statements and nothing else.

Xero documents its current manual-import options in its official guide to manually importing bank transactions. Use that page as the source of truth if the menus or regional availability change.

Option 1: import the PDF directly

Xero currently offers direct PDF statement import to eligible organizations in the United States and Canada. Its documented requirements include an English-language debit or credit statement, a file no larger than 35 MB or 100 pages, at least 200 DPI, straight pages, and no password protection. PDF import is not available on the Xero Ledger pricing plan.

  1. In Xero, open Accounting, then Bank accounts.
  2. Open the menu for the correct bank account and select Import a Statement.
  3. Upload the PDF and let Xero extract the transaction lines.
  4. Review every warning and error, then clear any row you do not want to import.
  5. Complete the import and reconcile the statement lines.

Xero maintains the full requirements and supported-bank guidance on its PDF bank statement import page. Direct import is the shortest path when it works, but reviewing the extracted rows is still part of the job.

Option 2: convert the PDF to a verified Xero CSV

Use the CSV route when direct PDF import is unavailable, when Xero rejects the scan, or when you want an independent completeness check before importing anything. A useful CSV contains the date, description, and amount for every transaction, with either one signed amount column or separate debit and credit columns.

What we'd do

Turn any PDF or scan into a verified Xero-ready CSV. MatchLedger extracts every transaction, formats the file for Xero, and checks the complete set against the statement's own balances before you import it. That means no manual transcription, no column reshaping, and no hunting through Xero later for a row that never made it into the file. Any bank or card issuer works, in any country. See the verified export formats.

  1. Upload the complete statement, including every page in the statement period.
  2. Confirm that the extracted opening balance, transactions, and closing balance tie.
  3. Export the transactions in Xero's CSV format.
  4. In Xero, open Accounting, Bank accounts, then Import a Statement.
  5. Upload the CSV, map each column, confirm the date format, and review the rows.
  6. Complete the import, then reconcile against the original statement.

Map the CSV carefully

The most common import problems are mundane: the wrong date interpretation, blank lines, spaces around dates, an amount column mapped as a description, or debits and credits sent with the wrong signs. Xero remembers mappings when future files use the same column headers, so a consistent export removes repeat setup work.

Review the preview before completing the import. Check the first and last dates, scan the largest amounts, and make sure payments and deposits face the right direction. If you are filling a gap in an existing feed, restrict the file to the missing date range so you are not asking duplicate detection to rescue an avoidable overlap.

Reconcile after the import

An accepted import is not proof that the period is complete. Reconciliation is the control: the Xero balance for the account should tie to the statement's closing balance on the same date, with any outstanding items understood. Work one statement period at a time so the first difference stays small and traceable.

MatchLedger can run this check before or after the Xero import. Add the account ledger for the period and it matches statement lines one-to-one, then separates matched, missing, and duplicate items for review. Extraction gets the rows into Xero; reconciliation proves the books and statement agree.

Common questions

Can Xero import a PDF bank statement directly?

Yes, for eligible Xero organizations in the United States and Canada. Xero's current requirements include an English-language debit or credit statement, no more than 35 MB or 100 pages, at least 200 DPI, and no password protection. Availability also depends on the organization's plan and the statement format.

What if Xero cannot read my PDF bank statement?

Convert the PDF into a Xero-ready CSV, verify the extracted transactions against the statement balances, and import the CSV through Accounting, Bank accounts, then Import a Statement. This route also works for scans, unsupported layouts, and organizations outside Xero's direct-PDF availability.

What columns does a Xero bank statement CSV need?

At minimum, each row needs a transaction date and either one signed amount column or separate debit and credit columns. A description or payee column makes reconciliation easier. Xero lets you map the CSV columns during import and remembers mappings for matching headers.

Will Xero import duplicate bank transactions?

Xero checks imported statement lines for duplicates, but you should still review the import before completing it. Date changes, description differences, or edited amounts can make two versions of the same transaction look different.

Should I import the PDF or a CSV into Xero?

Use a direct bank export such as OFX when it is available. A direct PDF import is convenient when your organization and statement meet Xero's requirements. Use a verified CSV when the PDF route is unavailable, the scan is rejected, or you want to prove the extracted set is complete before it enters Xero.

Keep reading

Turn one PDF into a verified Xero-ready CSV. Every plan is $0 during open beta.

Start Free