Xero import

Bank statement PDF to Xero import file

Turn a PDF, scan or photo of a bank statement into a CSV that Xero's statement import accepts. Free preview, full export from £2.49.

Drop your statement PDFs here

Add several at once · PDFs, scans and photos accepted

Select documents
  • Never stored on disk
  • UK GDPR compliant
  • In-memory processing
Works withBarclaysHSBCNatWestLloydsMonzoStarlingSantanderRevolutMetro Bank+ scanned paper
Not ready to upload? Download a sample of the files you get

These are made from an example statement with made-up transactions, so you can check the layout in your own software first. Nothing is uploaded.

Structured output preview

Showing the first 3 transactions from your statement.

DateDescriptionMoney out (£)Money in (£)Balance (£)
24/09/2026B&Q CROYDON RETAIL£142.50–£2310.45
25/09/2026CLIENT INVOICE #1042–+£850.00£3160.45
26/09/2026SCREWFIX CROYDON£38.90–£3121.55
27/09/2026OCTOPUS ENERGY DD£85.00–£3036.55
28/09/2026TRAVIS PERKINS TIMBER£215.30–£2821.25

11 more transactions ready to download

Unlock to see every row and export to CSV, Excel, Xero, QuickBooks or FreeAgent.

Built for UK bookkeeping

Fast, private and formatted for the tools you already use.

Zero-disk processing

Files are streamed into volatile memory and discarded after conversion. Statements and extracted transactions are never written to disk or a database.

Every export you need

Standard 5-column CSV, native .xlsx workbooks, and signed-amount formats ready for Xero, QuickBooks and FreeAgent bank feeds.

Made for sole traders

Built for self-assessment, landlord accounts and contractors working with a mix of digital statements and paper scans.

Converting statements every month?

Plans start at £9.99 a month for 30 documents, including receipts and the self-assessment helper.

View monthly plans

What the Xero file looks like

Use the Xero download once your statement is converted. Here are the first lines of that file, made from a sample statement with made-up transactions (10 rows in the full sample):

*Date,*Amount,Payee,Description,Reference
"01/09/2026",1200.00,"CLIENT INVOICE 1038 - HARRIS LTD","CLIENT INVOICE 1038 - HARRIS LTD",""
"03/09/2026",-142.50,"B&Q CROYDON RETAIL","B&Q CROYDON RETAIL",""
"05/09/2026",-38.90,"SCREWFIX DIRECT 4412","SCREWFIX DIRECT 4412",""
  • Date and Amount, the two columns Xero needs, plus Payee, Description and Reference
  • One Amount column: money in is positive, money out is negative
  • Dates written DD/MM/YYYY, one header row, comma separated

How to import it into Xero

Menus change from time to time, so look for the option described rather than an exact button name.

  1. 1In Xero, open the Accounting menu and choose Bank accounts.
  2. 2Find the account, open its menu and choose Import a statement.
  3. 3Select the file, then continue. If Xero asks you to match columns, match Date and Amount, and the optional ones if you like.
  4. 4If asked, pick the date format DD/MM/YYYY.
  5. 5Check the preview, untick anything you don't want, then choose Complete import.

Questions about Xero imports

Which columns does Xero need?
Only Date and Amount are required. Payee, Description and Reference are optional but make reconciling easier. Income must be positive and expenses negative, in the same column.
Will I get duplicates if I have a bank feed too?
Possibly. Import a period that doesn't overlap transactions already in Xero, and check the preview before you complete the import.
How much does it cost?
You can preview the first rows for free. A full export costs £2.49 for one statement, with a 24-hour pass and monthly plans if you have more. You do not need an account for a one-off export.
Is my statement stored?
We do not store it. Your file is held in memory only while it is converted, and it is sent securely to Google's Gemini API to read the transactions. The privacy policy explains exactly how this works.

Other formats: QuickBooks, FreeAgent, Sage, Zoho Books, OFX / QIF. See all plans and prices.

What happens to your file

Bank statements are personal. Here is exactly how yours is handled.

Read, then forgotten

Your statement is held in memory only while it is converted. We don't write it, or what is read from it, to disk or to a database of ours.

Read by Google's paid AI service

The file is sent securely to the Google Gemini API to extract the figures. Google acts as our processor and does not use your documents to train its models.

You see a small preview first

Before you pay, your browser gets only a short preview and an encrypted copy that only our server can open. Everything else stays locked.

Your results stay with you

After unlocking, your results are kept in your browser, not on our servers. Use Start again, or clear your browser data, to remove them.

Google may keep a log of requests for up to 55 days to detect misuse. The privacy policy has the full detail.