QBO to CSV converter

QBO to CSV — Export QuickBooks Web Connect to Spreadsheet

Export a .qbo file into clean CSV rows for Excel, Google Sheets, audits, or downstream imports. The converter keeps dates, descriptions, amounts, and memo fields intact.

Drop your file here

QBO

Private by default. Conversion runs in your browser and the file is never uploaded.

How it works

Export QBO transactions into clean CSV rows

Use this page when the source file is already QBO (QuickBooks Web Connect) and the next step is Excel, Google Sheets, reconciliation, or another spreadsheet-first workflow. The converter reads the OFX-based QBO structure and turns every STMTTRN element into a clean row with date, description, amount, type, and memo.

QBO files are opaque if you try to open them in Excel directly — they look like XML soup. This converter handles the parse so you get a proper CSV: one transaction per row, one field per column, sign-preserving amounts, and no truncated descriptions.

Typical use cases: QA-ing an import before it hits QuickBooks, extracting transactions from a downloaded bank feed file, preparing data for a reconciliation spreadsheet, or migrating data out of QuickBooks Desktop when you only have the Web Connect export.

Open in any spreadsheet

CSV is the easiest format for manual review, pivot tables, VLOOKUP, and downstream imports into Xero, Sage, Wave, or Google Sheets.

Preserve transaction fields

Date, description, signed amount, and category come through as separate columns, one row per transaction — the fields you actually reconcile against.

Audit before you import

Inspect every transaction the .qbo file contains before it hits QuickBooks. To check ids and structure rather than amounts, run the file through the validator first.

Step by step

How to convert QBO to CSV in 3 steps

  1. 1

    Upload the .qbo file

    Drag your QuickBooks Web Connect file into the converter above. It can be a bank feed download or an export from QuickBooks Desktop.

  2. 2

    Review the parsed rows

    The converter shows how many transactions were found and which date range they cover. If the count looks wrong, you know before the export.

  3. 3

    Download the CSV

    Click Download — the CSV has one row per transaction with date, description, signed amount, and category. Open in Excel, Numbers, or Google Sheets.

Format reference

Reading a .qbo file as a spreadsheet

Going this direction is a flattening problem rather than a translation one. A .qbo file is nested — a statement wraps a transaction list which wraps individual <STMTTRN> records — and the output is deliberately a plain four-column sheet, one row per transaction.

Both OFX dialects are read: the XML form used by most .qbo files, and the older SGML form where leaf tags are opened but never closed. What does not survive is the statement envelope — opening and closing balances, the statement date range, the account block, and the currency declaration all sit above the transaction rows with nowhere to go in a flat file.

Resulting CSV — one row per STMTTRN

Date,Description,Amount,Category
2026-06-15,TESCO EXTRA 4829,-42.10,Groceries
2026-06-16,ACME LTD SALARY,1850.00,Uncategorized
2026-06-18,RENT JUNE,-1200.00,Uncategorized

QBO tags and the columns they become

QBO tagCSV columnNotes
<DTPOSTED>DateNormalised to YYYY-MM-DD. OFX timestamps carry a time and sometimes a timezone; both are dropped once the date resolves.
<NAME>DescriptionFalls back to MEMO when NAME is absent, then to Unknown if the record has neither.
<MEMO>CategoryUsed only when it differs from the description — a memo that just repeats the payee is not treated as a category.
<TRNAMT>AmountKept signed, so negative is money out. Currency symbols and separators are stripped.
<TRNTYPE>Not carried through. The sign of Amount already gives you the direction.
<FITID> / <CHECKNUM>Dropped in the flatten. Keep the original .qbo if you need FITIDs for deduplication.
<BANKACCTFROM>Account identity sits above the transaction list, so it has no per-row equivalent.
<LEDGERBAL> / <DTSTART>Statement-level fields. No row to attach them to in a flat CSV.

What to check after converting

A multi-account file comes out as one undifferentiated list

Why: Every STMTTRN becomes a row regardless of which account block it sat under, and no account column is written.

Fix: Split the .qbo per account before converting, or use the natural date break between accounts to separate the rows afterwards.

Most rows say Uncategorized

Why: Correct behaviour when the source has no MEMO, or its MEMO simply repeats the payee — a repeated value is not promoted to a category.

Fix: Nothing to fix in the file. Raw bank .qbo exports rarely carry categories; the main app derives them from the transactions instead.

Excel mangles the amounts or dates on open

Why: Excel's CSV auto-detection, not the file. It reads locale-dependent dates and can strip leading zeros or reformat negatives as text.

Fix: Import rather than open: Data → From Text/CSV, then set Date and Amount column types explicitly.

Descriptions look truncated or cryptic

Why: OFX caps NAME at 32 characters, so the bank already shortened it before the file was written.

Fix: Nothing in the CSV can restore it. If you need full merchant detail, work from the PDF statement instead of the .qbo.

Head to head

Why .qbo does not open in Excel directly

FeatureThis converterRename .qbo → .csv
Correct column structure
One transaction per row
Signed amounts preservedGarbled
Descriptions kept intactTruncated at special chars
Memo carried into a category column
Runs in the browser

Want the explanation, not just the export?

See what the transactions mean, not only what they contain.

The main app goes beyond row extraction. It categorizes spending, identifies recurring payments, surfaces income patterns, and gives you a report you can actually use for review or decision-making.

Break transactions into 19 categories instead of raw lines only.
Surface recurring subscriptions and merchant patterns automatically.
Get a dashboard view before exporting cleaned files.
Open statement analysis

Ready?

Upload one statement.
Get the full picture.

No credit card. No account. Drop a PDF and see every transaction categorized in 30 seconds.

Try it free →
Try without an accountNo signup30 sec results

FAQ

QBO to CSV converter — FAQ