TL;DR

Monzo’s CSV is wide (17 columns) but only 5 matter for reconciliation. Coalesce Money Out and Money In into a signed amount, parse the Name field for the actual payer (Faster Payments puts sender info there), and watch for GBP↔USD currency mismatches if your QuickBooks org is US-default.

What breaks when reconciling Monzo with QuickBooks

Three things consistently:

The split amount columns. Like Revolut, Monzo gives you Money Out and Money In as separate non-negative columns. A naive parser that expects Amount finds nothing. Coalesce before matching: signed = MoneyIn - MoneyOut. The Amount column also exists in newer exports but uses comma decimal separator in some locales — sanity-check.

Faster Payments sender info in Name. When a UK business pays you via Faster Payments, Monzo populates the Name column with what the sender’s bank transmitted — usually the sender’s account name, sometimes a reference field if the sender’s bank didn’t populate name properly. Format varies by sender bank: HSBC and Lloyds send clean names; some challenger banks send abbreviated codes.

QuickBooks Online currency handling. If your QBO org is set up in USD and you’re using a GBP Monzo account, every Monzo inflow needs FX conversion before matching. QBO can show invoices in GBP if you’ve enabled multi-currency, but then the GBP Amount in QB matches GBP Money In from Monzo directly. If multi-currency is off in QBO, you’ll need to compute expected GBP from the QBO USD Amount × exchange rate at the transaction date.

Export the Monzo statement

  1. Monzo app (mobile or web) → Account → pick the account → ManageExport transactions.
  2. Date range: pick the month. Monzo supports custom ranges.
  3. Format: CSV.
  4. The file is emailed to your registered email — Monzo doesn’t allow direct download.
  5. Saves as MonzoDataExport_<account-id>_<date-range>.csv, UTF-8, all fields quoted.

Columns: Transaction ID, Date, Time, Type, Name, Emoji, Category, Amount, Currency, Local amount, Local currency, Notes and #tags, Address, Receipt, Description, Category split, Money Out, Money In.

Type values: Faster payment, Card payment, Direct Debit, Bacs, CHAPS, Transfer, Mastercard, Topup. For invoice inflows, Faster payment is the most common; Bacs for batch business payments; CHAPS for same-day high-value transfers.

Description is the sender’s payment reference — what they typed when initiating the transfer. This is your primary invoice-number candidate.

Export the QuickBooks invoice list

Same as the Mercury + QB and Chase + QB guides: Reports → Invoices and Received Payments → Customize → Export.

If your QBO is multi-currency-enabled, the export includes a Currency column. Filter or split by currency before matching against the Monzo GBP CSV.

Match algorithm cheats for this combo

  1. Coalesce amount. If row has Money In > 0, signed amount = MoneyIn. If Money Out > 0, signed = -MoneyOut. Otherwise (rare) use Amount directly.
  2. Filter to inflows only. For invoice reconciliation, drop rows where signed amount ≤ 0. Card payments, fees, transfers out don’t apply.
  3. Reference exact match. Try Monzo.Description (case-insensitive substring) against QB Num and Memo/Description. UK clients are usually good about including invoice numbers in Faster Payment references — better than US ACH on average.
  4. Name fuzzy. Monzo Name field, normalized (lowercase, strip Ltd, Limited, Plc, LLP), against QB Name. Use Jaro-Winkler at 0.85 threshold.
  5. Currency check. If your QBO is USD and Monzo is GBP, compute expected GBP from QB Amount × FX rate at transaction date. Use the Bank of England spot rate for the date if you need defensible numbers. Tolerance ±2% for FX spread.

Real example

Monzo Faster Payment inflow:

"tx_0000A9...","18/04/2026","10:32:15","Faster payment","Epsilon Design Ltd","💼","Income","2400.00","GBP","2400.00","GBP","","","","INV-2026-0418","","","2400.00"

QB invoice (with multi-currency enabled in QBO, GBP invoice):

2026-04-01,Invoice,INV-2026-0418,Epsilon Design Ltd,"Q2 design work",2400.00,2400.00

Reference exact (INV-2026-0418), amount exact (£2400.00), name exact ("Epsilon Design Ltd""Epsilon Design Ltd"). Confidence: Exact.

If QBO were USD-only, the QB invoice would show $3000.00 (with a USD/GBP rate of ~1.25 at the time). Then we’d compute expected GBP = 3000 / 1.25 = 2400, match against Monzo’s £2400 with FX tolerance. Confidence: Likely (FX-converted).

Edge cases this combo hits

Pot transfers. Monzo’s Pots feature lets you move money between named sub-accounts (Tax Pot, VAT Pot, etc.). These appear in the CSV as Type = Transfer with Name = "Pot". Filter them out — they’re not external cash events.

Card payments accepted via Monzo Business. Some Monzo Business accounts integrate Stripe for card collections. Those show as deposit batches from Name = "Stripe Payments UK Limited" — apply the Stripe-pattern reconciliation (gross-vs-net) inside the Monzo CSV.

Direct Debits collected from your customers. If you’re collecting Direct Debits via GoCardless or Stripe, the inbound payouts appear in Monzo as batch deposits from those payout providers, not individual customers. Reconcile the payout against the underlying batch of customer collections separately.

Multi-day Bacs settlement. Bacs inbound takes 3 working days from initiation to settlement. The Monzo CSV shows the settlement date, not the initiation date. Your invoice’s Date Paid (if entered in QB) refers to whichever date the user picked — often initiation. Allow a wider date window when matching Bacs vs Faster Payments.

International transfers via Wise to Monzo. Some EU clients pay UK suppliers via Wise, which routes to your Monzo account as a GBP Faster Payment. The Monzo Name field shows "Wise Payments Limited" not the actual end-payer. Cross-reference the Wise transaction ID if your client gives it to you, or match by amount + date only.

When this combo breaks our tool

Monzo exports include Notes and #tags, which is user-editable. If you’ve previously tagged transactions for personal categorization and then re-export, the Notes field changes between exports. Our deduplication uses Transaction ID, so re-imports won’t double-count, but display labels may shift.

For QBO orgs without multi-currency enabled, currency mismatch handling requires you to specify a daily FX rate file. We don’t auto-fetch FX rates — provide them or accept that Likely-paid is the best confidence we can give.

If your Monzo Business account is a joint account (shared with a co-director), the CSV may include personal-side transactions that bleed into business reconciliation. Filter by Category or by the explicit business-account toggle in Monzo settings before exporting.

Faster way

Drop your Monzo CSV and QB invoice export into the reconciler on the homepage. The split-amount coalesce, the type-based filtering, and the GBP/USD currency-mismatch detection all run automatically.

For the AR foundation, the accounts receivable glossary entry covers what’s underlying.

If you’re considering moving off QBO for the GBP-side, the QuickBooks alternative post covers lighter UK-friendly alternatives.