StatementDecoder

How to import bank statements into Wave Accounting

2026-07-21 · 7 min read

Wave is a favourite with freelancers and tiny businesses because it's free, and its bank connections cover the easy months on their own. The manual import is for the months they don't: an unsupported bank, a closed account, or catch-up bookkeeping on a year you've let slide.

What Wave accepts

  • CSV — a simple three-column file: Date, Description, Amount.
  • OFX / QFX / QBO — the bank-download family, accepted directly. If you can get one of these, prefer it: dates and signs are unambiguous, so there's less to go wrong.
  • Not PDFs. Convert a PDF statement to CSV or OFX first.

Import from Accounting → Transactions → Upload a bank statement, pick the Wave account the file belongs to, and map the columns when prompted.

The three-column CSV, done right

Wave's CSV is refreshingly plain, which means the two things that break it are also plain: the amount must be a single signed number with money out negative (no currency symbols, no thousands separators), and the date needs one consistent format that you confirm on upload. Keep a recognisable description — Wave's categorisation leans on it.

From PDF to importable file

Convert with a tool that validates dates and amounts instead of trusting raw OCR, then reconcile the converted totals against the statement's own opening and closing balances before importing. Our converter exports a Wave-ready three-column CSV (or OFX) with the merchant already identified in the description, and there are per-bank export guides for 5,000+ banks. The general reasoning is in the PDF-to-CSV guide.

Avoiding duplicates

The classic Wave mess is uploading a statement that overlaps a live bank connection, or two consecutive monthly statements that share a few days. Wave catches exact duplicates but not near-misses, so trim overlaps first — or merge the months into one deduplicated file before you import. If you also keep books in QuickBooks or Xero, the same converted file works for QuickBooks and Xero.