QBO file format

QBO file format explained.

A QBO Web Connect file combines an OFX header with account and transaction blocks that supported QuickBooks workflows can read. This is a structural reference, not a compatibility promise.

Updated July 24, 2026 · Examples use fictional data.

Use the next step nowRead supported QBO transaction tags locally and export an audit CSV for review.
Inspect a QBO file

The file has a header and an OFX body

Older QBO files commonly use an OFX 1.x SGML-style header followed by an <OFX> body. Newer OFX variants may use XML. A parser should inspect the structure instead of relying only on the extension.

QBO file format versus QuickBooks Online

The .qbo extension names a Web Connect bank-statement file. QuickBooks Online is an accounting product that may accept manually uploaded bank files, but a QBO file is not a backup or export of the entire QuickBooks Online company.

Representative header

OFXHEADER:100
DATA:OFXSGML
VERSION:102
ENCODING:USASCII
CHARSET:1252
COMPRESSION:NONE

Account and statement blocks

Bank statements commonly use BANKMSGSRSV1, STMTRS, and BANKACCTFROM. Credit-card statements may use CREDITCARDMSGSRSV1, CCSTMTRS, and CCACCTFROM.

Common transaction tags

TagPurposeBankFileKit read support
DTPOSTEDPosting date and optional time/zoneRequired
TRNAMTSigned transaction amountRequired
FITIDTransaction identifierRetained in the audit CSV when present
NAMEShort transaction nameUsed before MEMO for the description
MEMOLonger descriptionRetained in the audit CSV when present
CHECKNUMCheck referenceRetained in the audit CSV when present

A transaction block

<STMTTRN>
<TRNTYPE>DEBIT
<DTPOSTED>20260710120000.000[-5:EST]
<TRNAMT>-24.75
<FITID>FICTIONAL-0001
<NAME>Fictional Supply Store
</STMTTRN>

Encoding is a real boundary

A QBO header declares an encoding. BankFileKit's beta writer declares USASCII with character set 1252 and replaces non-ASCII characters with ?. Review names and memos when the source contains accented or non-Latin text.

QBO is not a complete accounting export

The file normally carries bank-feed transactions, not invoices, chart-of-accounts rules, reconciliations, payroll, or an entire QuickBooks company. See the QBO definition guide for the distinction from QBW files.

BankFileKit parser boundary

The QBO reader extracts supported bank or credit-card transaction blocks with valid dates and amounts and exports available account/statement metadata alongside the audit rows. It does not promise support for every OFX message set, investment statement, loan statement, or vendor-specific extension. Use the separate OFX reader for an .ofx source.

BankFileKit writer boundary

The CSV/XLSX to QBO writer creates a candidate US English and USD Web Connect file. It has not been verified in real QuickBooks Desktop, so users must test a fictional file in a blank company.

Validate structure and outcome separately

A structurally plausible QBO file can still fail because the target product, account connection, institution fields, or transaction identifiers are incompatible. Successful download is not proof of successful import.