Guide · Xero

Xero bank statement CSV import format: columns, dates and signs

Xero reads a statement CSV as a list of statement lines to reconcile, not as ledger entries. It asks for very little, a date and one signed amount, but it will not warn you when the sign or the date order is wrong.

Updated October 2026 · 6 min read

In Xero, importing a statement creates bank statement lines: the items you then match, create or transfer on the Reconcile screen. Nothing reaches the ledger until you do that, so the CSV is a staging file. What follows reflects how Xero typically behaves; Xero Central is the authority and its wording changes.

Where to import

Open Accounting, then Bank accounts, select the account, and choose Manage Account, then Import a Statement. Upload the CSV, map each column to a Xero field, review the preview and confirm. There is an option to skip the first line when it holds column headings, and Xero typically reports how many lines were imported and how many were flagged as duplicates.

Column expectations

  • Date (required). One date per row, four-digit years, one format throughout.
  • Amount (required). A single column. Money in is positive and money out is negative. Plain numbers: no currency symbols, no thousands separators, no brackets.
  • Payee, Description, Reference (optional). Xero uses these to suggest matches, so keep the full description rather than a truncated one.
  • Anything else. Region-dependent extras such as a cheque number are optional, and columns you leave unmapped are typically ignored.

Statement line rules

You can match an imported line to a transaction already in Xero, create a new transaction from it, or record it as a transfer, but you do not edit the line itself. If a line is wrong, the remedy is to remove the imported statement and import a corrected file, which is why checking the file first matters. Reconciled lines typically stay when a statement is removed, so a mistake found after reconciling has to be undone line by line. Lines from an active bank feed land on the same Reconcile screen, which is where overlap duplicates come from.

Dates and signs

The mapping step typically asks which date format the file uses. Choose what the file really contains. The danger is silent: 03/04/2026 is valid as 3 April or as 4 March, and Xero accepts whichever you tell it. Year-first dates remove the ambiguity.

Check the sign with one number. The sum of the Amount column must equal the closing balance minus the opening balance. If it equals the negative of that, every line is inverted, and Xero will not flag it: payments simply show up as receipts.

A minimal file that satisfies all of the above looks like this:

Date,Amount,Payee,Description,Reference
2026-03-02,-84.50,Northside Power,Electricity March,INV-1182
2026-03-03,1250.00,Client payment,Invoice 2041,2041
2026-03-05,-19.99,Storage plan,Monthly subscription,

If the statement opened at 5,000.00 and closed at 6,145.51, the three amounts must sum to 1,145.51. They do: −84.50 + 1,250.00 − 19.99.

Step by step: prepare the file

  1. Tie the statement out. Confirm opening + deposits − withdrawals = closing before you build the file. Xero will import a wrong file without complaint.
  2. Make one Amount column. If you have Debit and Credit, or Money in and Money out, add Amount = Credit − Debit (or In − Out) and leave the originals unmapped or delete them.
  3. Fix the dates. Use one format throughout, with four-digit years. If Excel shows the dates left-aligned they are text; convert them first.
  4. Clean the edges. Delete title rows above the column headings, totals rows, and blank rows at the bottom.
  5. Save as CSV. Use plain comma-separated CSV, UTF-8 if offered. An .xlsx workbook cannot be imported as a statement.
  6. Import one account and one period. Never mix accounts in a file. Keep to a single statement period so a failure is easy to isolate.
  7. Compare balances. After reconciling, compare Xero’s balance at the statement end date with the closing balance printed on the statement.

Which layouts work

Common statement CSV layouts and what each needs before a Xero import
Your CSV layoutReady for Xero?What to do
Date, Amount (signed), DescriptionYesCheck the sign and the dates, then import
Date, Debit, Credit, BalanceUsually needs conversionAdd Amount = Credit − Debit; leave Balance unmapped
Date, Money In, Money OutUsually needs conversionAdd Amount = In − Out
Date, Amount (all positive), Type (DR or CR)Needs conversionMake DR negative and CR positive
Excel workbook (.xlsx)NoSave as CSV first
Header block, totals rows, blank linesWill fail or import junkKeep only the column headings and the transactions

What can go wrong

  • Silent sign inversion. No error message, just payments shown as receipts. The sum check above catches it.
  • Day and month swapped. When both numbers are 12 or below, any validation passes. Spot-check a date with a day above 12.
  • Excel damage. Long reference numbers become 1.23E+14 and leading zeros vanish. Format the reference column as text before saving.
  • Overlap with a live bank feed. Importing lines for dates a feed already covers can duplicate them. Import only the dates before the feed started.
  • The wrong bank account. Lines imported into the wrong account must be removed from that account’s imported statements before you reconcile.
  • Decimal commas. A European-style 1.234,56 can be read as text or as 1.23. Convert it to 1234.56 before saving.
  • Split descriptions. A wrapped description that became its own row adds a phantom line with no amount or date. Merge it back before saving.

Where SheetParser fits

SheetParser converts the statement PDF, or a scan, into rows, checks opening + deposits − withdrawals against the closing balance, and exports Excel and a Xero CSV. It is a file export, not a bank-feed connection: you upload the CSV yourself. Start from the bank statement to Excel tool; 1 file a day is free up to 10 pages, and paid plans open files up to 150 pages.

Common questions

Which columns does Xero require in a bank statement CSV?+

Date and Amount. Payee, Description and Reference are optional, and some regions offer extras such as a cheque number. The import screen lets you map columns, so headings do not have to match exactly, but check Xero Central for the current list.

Can Xero read separate Debit and Credit columns?+

Xero’s importer is built around one signed Amount column with money out as a negative. Some setups may let you map other layouts, but combining the columns removes the question: Amount = Credit − Debit.

Which date format should I use?+

Whichever the file actually contains, selected consistently in the import step. Year-first dates such as 2026-04-03 are the least ambiguous when the format list offers them; otherwise convert in Excel before saving.

What happens if I import the same statement twice?+

Xero typically reports how many lines were imported and how many look like duplicates, and lets you review before confirming. Do not rely on that for partial overlaps; import non-overlapping periods.

Is there a file size or line limit?+

Xero does not, to our knowledge, publish a limit we can quote with confidence, and practitioners report trouble with very large files. Keep each file to one account and one statement period, and split it if an import stalls.

Does SheetParser import into Xero bank feeds?+

No. It produces a CSV and an Excel workbook that you upload yourself through Import a Statement. There is no connection to Xero or to bank feeds. Its CSV lists Debit and Credit separately, so if the mapping step does not read both, add the Amount column first.

Sources

Check it on your own document

1 file is free each day, up to 10 pages. You get the same extraction, the same flags and the same exports as a paid plan — not a preview.

Files shredded after conversion · never used for training

Keep reading