If your bank feed is missing transactions, broke for a few weeks, or you are bringing history into a new Xero organisation, importing a CSV statement is the standard fix. It is also where imports most often go wrong, because every bank exports a different file and Xero is strict about what it accepts. This guide covers the format Xero wants, how to get a CSV out of each major NZ bank, and the errors that catch people.
Xero imports bank statements as CSV files with a header row. Only two columns are compulsory, but more is better:
| Column | Required | Notes |
|---|---|---|
Date | Yes | One consistent format, ideally DD/MM/YYYY for NZ organisations |
Amount | Yes | A single signed column: money out negative, money in positive |
Payee | No | Who was paid or who paid you |
Description | No | Statement narrative, particulars, memo |
Reference | No | Codes, invoice numbers, cheque numbers |
Most NZ bank exports do not match this layout out of the box. Some split money in and money out into separate Debit and Credit columns, some add balance columns, and some use date formats Xero misreads. That conversion step is what this site's free in-browser converter does.
Menus move around, but the pattern is the same in every NZ internet banking site: open the account, find the transaction search or export area, choose a date range, and pick CSV as the download format. Per-bank walkthroughs: ANZ, ASB, Westpac, BNZ, Kiwibank.
ANZ Internet Banking exports CSV from the transaction list. The export typically puts the amount in a single signed column with the date near the end of each row, and includes particulars, code and reference fields that are worth keeping as your description and reference.
ASB's export includes a unique ID column and separates the transaction type from the payee and memo. Its dates are NZ style day-first, so keep dates as DD/MM when converting.
Westpac lets you export a chosen date range as CSV from the account transaction view. Depending on the account type you may get either one signed amount column or separate money in and money out columns.
BNZ's CSV export comes from the transaction search on each account. Payee and particulars arrive in separate fields, which map neatly to Xero's Payee and Description.
Kiwibank exports CSV from the account's search or download area and commonly uses separate credit and debit columns, so the file needs those combined into one signed amount before Xero will take it.
A date like 03/04/2026 is ambiguous: 3 April in NZ, 4 March in the US. If your imported transactions cluster in the wrong months, this is why. Convert with dates read as DD/MM and written as DD/MM/YYYY.
This happens when a debit/credit file was flattened without signs. Money out must be negative in Xero's Amount column. The converter combines Debit and Credit columns into one correctly signed amount.
1,234.56 inside an unquoted CSV field splits into two columns and shears the whole row sideways. If a few rows look scrambled, this is the usual cause; a proper conversion strips separators and quotes fields.
If your bank feed later recovers and re-delivers days you imported manually, Xero may show duplicates to reconcile. Delete the duplicated statement lines in Xero rather than re-importing.
Bank export menus and file layouts change from time to time. If your bank's file surprises the auto-detection, the converter lets you assign columns by hand, and it will still get you a clean Xero import.