Free QBO to CSV Converter for QuickBooks Files
Turn a QuickBooks Web Connect (.QBO) download into a CSV: one row per transaction, with the signs your bank stated and its own transaction id on request.
For the three cases people convert for: comparing the bank against what was posted, moving into a tool that does not read OFX, and reaching a period the bank feed will not backfill.
Choose your file
Drop your .QBO or .OFX file here
Your file is never uploaded. We never receive it or store it.
Three Things True of Every File It Writes
- Rows end with a carriage return and a line feed, the Windows convention, which is what most importers expect and what a strict reader elsewhere may need told.
- The text is UTF-8 and the download says so, so an accented payee survives the trip wherever the reader honours that declaration.
- A field with no value keeps its column: the delimiters around it are still written, so nothing downstream shifts one place left.
Important: "QBO file" does not mean your QuickBooks Online company file. This tool reads QuickBooks Web Connect (.QBO) bank and credit-card transaction files, the kind your bank publishes for a bank feed. It does not export a QuickBooks Online company backup, a full accounting database, invoices, bills or payroll.
What One Row Actually Says
A QBO file to CSV conversion gives you one row per transaction, carrying the date, the payee, the memo, the check number and the amount your bank stated. What it does not give you is types. A CSV is text and nothing else, so every column arrives as characters, and whatever opens the file next is what decides what each of them means.
A .QBO is not already a CSV wearing a different extension. It is Open Financial Exchange: nested tags, one transaction spread over several lines, every field named rather than positioned. Reading that structure is what builds the table, which is why a QuickBooks Web Connect to CSV pass is a real conversion and not a rename.
The same reader serves as an OFX to CSV converter, because .qbo, .ofx and .qfx are one standard under three names. A .txt file is accepted too: that is the same standard saved without a badge on it.
| TRNS.ACCNT | TRNS.AMOUNT | SPL.ACCNT | SPL.AMOUNT |
|---|---|---|---|
| Bank Account 4471 | -89.50 | Uncategorized Expense | 89.50 |
| your bank account | the account's sidewhat your bank stated | the category | the category's sidethe mirror, written on the way out |
Same figure, opposite signs, on every row in the file. These are four of about fifteen columns, and the two amounts are the only pair a reader has to tell apart.
How to Convert QBO to CSV
Four steps: the file, the two account names, two switches, and the download.
Drop the .QBO
A bank or card download, or a Web Connect file QuickBooks has already seen. All four extensions go through the same reader, so nothing has to be renamed or re-saved first.
.qbo · .ofx · .qfx · .txt
Name the Two Sides
The bank account the statement belongs to, and the category accounts that money out and money in are written against. Leave the bank account blank and it is named from the last four digits in the file. Leave the categories and they stay Uncategorized Expense and Uncategorized Income, which is a placeholder you can see rather than a guess you cannot.
bank account · expense · income
Pick the Separator and the Id
Comma is the default, and tab writes a .tsv instead. The bank's own transaction id is off until you tick it. There is no layout to choose here: the shape of the file is fixed, and these two switches are the only formatting decisions the conversion takes.
comma or tab · id off by default
Check the Count, Then Download
The table count, the row count and the transaction count are listed before anything is written, with the first rows shown as a table. One table downloads as a single file; asking for the raw TRNS and SPL tables as well gives you three, and those arrive together as a .zip.
one .csv · or .xlsx instead
Before You Hand It Over
Export QBO to spreadsheet form and four things still have to be told to whatever opens it.
Which Amount Column
There are two of them and they are mirror images. TRNS.AMOUNT is the account's side, the figure your bank stated. SPL.AMOUNT is the category's side, the same figure negated. Map TRNS.AMOUNT unless you specifically mean the category, and check one transaction you recognise before the rest of the file goes in.
Which Sign Means Money Out
Money leaving the account is negative, because that is how OFX states it, and nothing is flipped on the way through. Flipping signs silently is how a reconciliation goes wrong. Where the receiving system expects the opposite convention, invert it there, deliberately, rather than hoping the file already did.
Which Separator
Comma by default, tab where you need one. A payee containing a comma is wrapped in quotes either way, which is correct CSV and is still the thing a strict parser stumbles on. Tab writes a .tsv and removes the question, which is the safer choice when you cannot test the import first.
Turn the Transaction Id On
It is off by default. Tick it and the bank's own id arrives inside the memo in square brackets rather than in a column of its own, which is also how the QBO to IIF Converter carries it. Split the brackets out on the other side if that id is what you match on.
Is One Handoff the Whole Job?
A handoff ends when the file lands. The question is how often it starts again.
| Need | Free converter | Autymate |
|---|---|---|
| One period, handed to one system | A minute, and the mapping done once on the other end | There is nothing worth connecting for a single handoff |
| The same export into the same system every period | The accounts, the separator and the mapping set again each time | Agreed once, then repeated without a hand on it |
| A system that expects the data on a schedule | Someone downloads, converts and uploads before the deadline | Delivered where the system looks for it, on the schedule it keeps |
| Several accounts, or several destinations | Each account converted and handed over on its own | Routed per account and destination where the systems support it |
| A column mapping that changes on the other end | Noticed when the figures land in the wrong place | Changed once, with a named owner for the change |
What a CSV Cannot Say for Itself
Nothing in this file argues back with the system that opens it next.
Excel Is the One Place Not to Send This
A QBO to Excel CSV route works, and it is the single handoff worth avoiding. Open a CSV in Excel and every column is guessed at: leading zeros come off a check number, a long reference turns into scientific notation, and anything shaped like a date becomes one. The file did not change. Excel decided what it meant.
Nothing Here Is Typed
Every column is text: the check number, the payee, the memo, both amounts. This branch runs no type conversion at all, and that is deliberate, because a type applied here would be a type applied blind. A leading zero on a reference number survives precisely because nothing tried to be clever with it.
Two Columns Look Identical to a Machine
Same header pattern, same shape, same magnitude, and no type on either one. Nothing an importer can inspect tells it which of the two is the account's side, so the choice cannot be detected, only declared. Declare it in the mapping rather than discovering it in a report three weeks later.
The Workbook Is One Click Away
The panel that wrote this CSV also offers the workbook, where the amount columns are typed as numbers in the file itself. Take QBO to Excel if a person is the reader rather than a system. That button runs one way: the workbook panel offers no CSV back.
Several Accounts, Banks and Cards
One file at a time is what this converter is built for. What multiplies is everything around it: a different download page at every institution, a different set of account names at every destination, and the same four instructions repeated to the system on the other end.
- A bank OFX to CSV download taken separately at every institution, each with its own export page and its own naming
- A credit card OFX to CSV file recording as CCARD and CCARD REFUND rather than Check and Deposit, decided by the file unless you override it
- Separate destinations or company files, each wanting the accounts named the way that one names them
- A period converted twice by two people, with nothing in the CSV to say it already happened
- A location added mid-year, with its accounts and its receiving system worked out before the first handoff
- A back catalogue of statements converted in one sitting, with someone deciding where the overlap stops

Common Questions
What people ask before they trust a converter with their accounting system.
Because money left the account. OFX states a withdrawal as negative and a deposit as positive, and the conversion preserves that exactly. Changing it quietly is the kind of error that only surfaces at reconciliation, so nothing is changed. If the system receiving the file uses the opposite convention, invert the column there, where the decision is visible.
No, and there is a more useful answer than the refusal. The file already carries two amount columns, TRNS.AMOUNT and SPL.AMOUNT, and they are one figure with its sign flipped rather than a debit and a credit. Splitting a signed column into two means guessing which side was meant, so the converter keeps the sign the source stated and leaves the split to a filter or a formula, where you can see it.
Check the file rather than the name. A .QBO from your bank is a Web Connect download: one account, one statement period, a few kilobytes of transactions. What most people mean by QBO is QuickBooks Online, which holds an entire company and publishes nothing with this extension. If yours came off a bank's download page, you are in the right place.
Yes, through Bank Feeds, and that is worth trying before any conversion. Web Connect is the workflow .QBO files were published for, so when the transactions belong in a QuickBooks Desktop company file the CSV is a detour. Convert when the destination is something else, or when you want to read the period outside the books.
Intuit currently lists both among the file types QuickBooks Online accepts for a manual transaction upload. So the .QBO you already hold may go straight in with nothing converted at all, and where a CSV is the one you want, the columns are mapped inside QuickBooks Online during the upload rather than here.
No. The .qbo is read in your own browser and the CSV is written there too, so nothing is sent to us at any point. There is no upload to receive, nothing stored, and no copy of your transactions anywhere but on your own computer.
Written and maintained by The Autymate integrations team. We build and run accounting integrations for multi-location franchises, ISVs and bookkeeping firms: QuickBooks Desktop and Online, POS, payroll and ERP. These converters exist because we kept writing the same ones for customers, and there was no reason to keep them to ourselves.
Last reviewed
When the Handoff Happens Every Period
A single conversion is a minute's work and needs nothing from us. When that export has to land in the same place month after month, across accounts or locations, tell us where the data starts, what has to receive it, and in what shape it is expected.
Exact source access, fields, permissions, QuickBooks behaviour and service scope are confirmed during discovery.
