Skip to content
stmtai

Convert CSV to QBO Free.
In your browser, nothing uploaded.

A bank CSV opens in a spreadsheet, but QuickBooks Desktop will not import it and QuickBooks Online only accepts a strict three or four column layout. A .qbo file is what both versions import through Web Connect. The free CSV to QBO tool reads your CSV in the browser, checks the running balance row by row and writes the .qbo; nothing is uploaded.

Open the free tool

How to convert CSV to QBO

  1. Open the free CSV to QBO tool and drop the CSV your bank exported. The delimiter (comma, semicolon or tab) and the header row are detected in your browser; the file is not uploaded.
  2. Check the column line under the file name: date, description, amount or money out and money in, and balance. Click Change if a column was picked wrongly.
  3. If every date could be read day-first or month-first, choose one; the table shows what the choice means for the first date. Files with ISO dates or month names skip this.
  4. Read the balance check when the CSV has a running balance column. Green means each row follows from the previous balance; a red row number says where to look. Statements exported newest-first are put back into date order.
  5. Set the account type and the last four digits of the account so QuickBooks can match it, then download the .qbo. Xero CSV and Excel are offered on the same page.

What is in a CSV file

A CSV is a flat text table: one line per transaction, fields separated by commas, semicolons or tabs, usually with a header row. Which column holds the date, the description, the amount (or money out and money in) and whether a running balance is present varies by bank, and nothing in the file says which date order it uses. Every spreadsheet and most accounting packages read CSV; QuickBooks Desktop does not.

What a QBO file holds

A .qbo is an OFX 1.x file written for QuickBooks. It carries an INTU.BID header, a sign-on block, one STMTTRN per transaction with DTPOSTED, TRNAMT, FITID, NAME and MEMO, and a LEDGERBAL closing balance. QuickBooks Desktop imports it through Web Connect and checks FID, ORG and INTU.BID against Intuit’s directory; QuickBooks Online uploads it on a bank account and validates the structure without that directory check.

CSV to QBO questions

Why does QuickBooks reject the CSV my bank gave me?

QuickBooks Desktop does not import CSV at all; its Web Connect import wants a .qbo. QuickBooks Online accepts CSV only in a three or four column layout with plain dates and numbers, which most bank exports do not match. A .qbo avoids both problems and carries a FITID per transaction, so importing the same file twice does not duplicate rows.

What does the .qbo contain?

OFX 1.02 SGML with the INTU.BID header QuickBooks looks for, one STMTTRN per CSV row, amounts signed bank-style with money out negative, a FITID derived from each row so re-imports do not duplicate, and a LEDGERBAL set to the last running balance when the CSV has one. Descriptions are reduced to ASCII to match the ENCODING header.

My bank writes money out as a positive number. What do I do?

Open the column settings and tick the option saying money out is positive in this file; every sign flips. If the file has separate money out and money in columns instead, choose that layout and each row is signed for you.

Can I check the .qbo before importing it?

Yes. Run the downloaded file through the free QBO checker, which lists what QuickBooks would object to: a missing INTU.BID, duplicate FITIDs, bad dates, unescaped ampersands or sign mismatches. It reads the file in the browser as well.

Is the CSV uploaded anywhere?

No. The file is read by JavaScript in your tab and the .qbo is generated there too. Nothing is sent to a server, which the network tab of your browser will confirm.

Related

Other format conversions