What is QBO Format?
QBO (QuickBooks Web Connect) is a proprietary file format created by Intuit for importing bank and credit card transactions into QuickBooks. Structurally, a QBO file is an OFX (Open Financial Exchange) file with Intuit-specific headers — primarily the INTU.BID identifier — that QuickBooks requires before it will accept any imported transaction data.
QBO and the QuickBooks ecosystem
QuickBooks is the dominant small business accounting platform in the United States, with over 7 million users across its Desktop and Online editions. For these users, getting bank transactions into QuickBooks is a daily workflow. Intuit offers two paths: automated bank feeds (where QuickBooks connects directly to the bank) and manual file import using the QBO format.
The manual import path exists because not every bank supports Intuit's direct feed integration. Smaller banks, credit unions, international institutions, and some fintech companies provide OFX downloads that QuickBooks cannot ingest directly. The solution is converting those OFX files into QBO format — adding the Intuit-specific headers that QuickBooks demands.
This conversion gap represents one of the most common pain points in small business bookkeeping. The error message "This file is not a valid QuickBooks Web Connect file" appears when a user tries to import a standard OFX file. The fix is straightforward — add the INTU.BID header — but most users have no idea what that means or how to do it without a conversion tool.
It is worth noting the naming confusion: "QBO" can refer to both the file format (QuickBooks Web Connect) and QuickBooks Online (the cloud product). Context usually makes the meaning clear, but be aware that search results for "QBO" will mix both topics.
QBO file structure
A QBO file follows the OFX 1.x (SGML) specification. It starts with a plain-text header block declaring the OFX version, encoding, and compression settings. The body contains SGML markup with sign-on information, bank account identification, a transaction list, and a ledger balance. The critical Intuit-specific element is INTU.BID in the <FI> section.
Example QBO file for QuickBooks
OFXHEADER:100
DATA:OFXSGML
VERSION:102
SECURITY:NONE
ENCODING:USASCII
CHARSET:1252
COMPRESSION:NONE
OLDFILEUID:NONE
NEWFILEUID:NONE
<OFX>
<SIGNONMSGSRSV1>
<SONRS>
<STATUS>
<CODE>0
<SEVERITY>INFO
</STATUS>
<DTSERVER>20260325120000
<LANGUAGE>ENG
<FI>
<ORG>Wells Fargo
<FID>3511
<INTU.BID>3511
</FI>
</SONRS>
</SIGNONMSGSRSV1>
<BANKMSGSRSV1>
<STMTTRNRS>
<TRNUID>0
<STATUS>
<CODE>0
<SEVERITY>INFO
</STATUS>
<STMTRS>
<CURDEF>USD
<BANKACCTFROM>
<BANKID>121042882
<ACCTID>5551234567
<ACCTTYPE>CHECKING
</BANKACCTFROM>
<BANKTRANLIST>
<DTSTART>20260301
<DTEND>20260325
<STMTTRN>
<TRNTYPE>CHECK
<DTPOSTED>20260303
<TRNAMT>-3200.00
<FITID>2026030300001
<CHECKNUM>1847
<NAME>Payroll - March Week 1
<MEMO>Direct deposit batch
</STMTTRN>
<STMTTRN>
<TRNTYPE>CREDIT
<DTPOSTED>20260312
<TRNAMT>15400.00
<FITID>2026031200002
<NAME>ACH Deposit - Shopify Sales
<MEMO>Weekly payout 03/06-03/12
</STMTTRN>
<STMTTRN>
<TRNTYPE>DEBIT
<DTPOSTED>20260318
<TRNAMT>-549.99
<FITID>2026031800003
<NAME>AWS Monthly Invoice
<MEMO>Cloud hosting March 2026
</STMTTRN>
</BANKTRANLIST>
<LEDGERBAL>
<BALAMT>42156.33
<DTASOF>20260325
</LEDGERBAL>
</STMTRS>
</STMTTRNRS>
</BANKMSGSRSV1>
</OFX>The structure mirrors what you would find in an OFX file or a QFX file. The headers (OFXHEADER:100, VERSION:102) must match exactly what QuickBooks expects — changing the version number or omitting header lines will trigger import failures.
Each transaction includes a FITID that QuickBooks uses for deduplication. If you import the same QBO file multiple times, QuickBooks will recognize the duplicate FITIDs and skip already-imported transactions. This is a significant advantage over CSV import, where QuickBooks has no reliable way to detect duplicates.
How to import QBO into QuickBooks
QuickBooks Desktop: Navigate to File > Import > Web Connect Files (.QBO). Select your QBO file. QuickBooks will read the BANKID and ACCTID from the file and ask you to map it to an existing account in your chart of accounts (or create a new one). After mapping, the transactions appear in the bank register for review and matching.
QuickBooks Online: Go to Banking (or Transactions) > Upload Transactions. Drag or select your QBO file. QuickBooks Online parses the file and presents the transactions for review. You can accept, categorize, or exclude individual transactions before finalizing the import. QuickBooks Online also supports CSV, but QBO provides better automatic matching.
In both cases, QuickBooks uses the FITID to prevent duplicates. If a transaction with the same FITID already exists in the target account, QuickBooks silently skips it. This makes QBO the preferred format for recurring imports — monthly statement downloads, for example — because you do not need to manually track which transactions have already been imported.
QBO vs QFX: same format, different target
QBO and QFX are both OFX files with Intuit headers. The underlying data structure is identical. The distinction is purely about the target application: QBO files are intended for QuickBooks, while QFX files are intended for Quicken.
| Aspect | QBO | QFX |
|---|---|---|
| Target application | QuickBooks (Desktop & Online) | Quicken (Windows & Mac) |
| File extension | .qbo | .qfx |
| Underlying format | OFX 1.x (SGML) | OFX 1.x (SGML) |
| INTU.BID required | Yes | Yes |
| OFXHEADER format | Identical | Identical |
| Transaction structure | STMTTRN blocks | STMTTRN blocks |
| Import path (Desktop) | File > Import > Web Connect | File > Import (Quicken only) |
| Cross-compatible | No — Quicken rejects .qbo | No — QuickBooks rejects .qfx |
| Handled by GnuCash | Yes (as OFX) | Yes (as OFX) |
In practice, both applications check the file extension before processing. Renaming a .qfx file to .qbo (or vice versa) sometimes works because the internal structure is the same, but this is not a reliable approach — the INTU.BID values in the Intuit directory can differ between QuickBooks and Quicken for the same bank.
QBO vs OFX vs CSV for QuickBooks
QuickBooks users typically have three format options for importing transactions. Each has trade-offs in terms of automation, reliability, and ease of use.
| Capability | QBO | OFX | CSV |
|---|---|---|---|
| QuickBooks Desktop | Native import | Rejected | Not supported for banking |
| QuickBooks Online | Native import | Rejected | Supported (manual mapping) |
| Automatic account matching | Yes (via INTU.BID) | N/A | No — manual selection |
| Duplicate prevention | FITID-based | N/A | None — user must verify |
| Balance verification | LEDGERBAL included | N/A | Not available |
| Column mapping | Automatic | N/A | Manual (date, desc, amount) |
| Bank metadata | BANKID, ACCTID, ACCTTYPE | N/A | None |
| Multi-currency | CURDEF tag | N/A | Not standardized |
| Error rate | Low | N/A | Higher (mapping errors common) |
QBO is the preferred format for QuickBooks because it automates account matching, prevents duplicates, and includes balance data for reconciliation. When your bank provides OFX, converting to QBO with FinanceConvert's OFX to QBO converter is the fastest path to a clean import.
How to create or convert QBO files
The most common path to a QBO file is converting an existing OFX file from your bank. FinanceConvert's OFX to QBO converter adds the OFXHEADER:100 preamble, INTU.BID, and FI metadata that QuickBooks requires. This is the most searched conversion path for QuickBooks users whose banks export standard OFX.
You can also open a QBO file in any text editor to inspect it — the SGML structure is human-readable. Look for <STMTTRN> blocks to find individual transactions, and check the <INTU.BID> value in the FI section to verify it matches your bank.
The official Intuit QuickBooks documentation recommends contacting your bank to enable Web Connect downloads directly. However, many smaller banks and credit unions do not offer this service, making OFX-to-QBO conversion the practical alternative.
Common issues with QBO files
"This file is not a valid QuickBooks Web Connect file." This is the most common QBO error message. It appears when the file is missing the INTU.BID header, has an incorrect OFXHEADER format, or uses OFX 2.x XML instead of the expected 1.x SGML. QuickBooks Desktop is particularly strict about header formatting — even a missing blank line between the header and the OFX body can trigger this error.
Wrong INTU.BID for QuickBooks. Each financial institution has a specific INTU.BID in the Intuit directory. The same bank may have different INTU.BID values for QuickBooks and Quicken. Using a Quicken-specific INTU.BID in a QBO file can cause account matching failures or import rejection.
Missing OFXHEADER lines. QuickBooks requires all nine header lines (OFXHEADER through NEWFILEUID) to be present and correctly formatted. Some bank exports or third-party converters omit optional lines like COMPRESSION or OLDFILEUID, which causes QuickBooks to reject the file even though the transaction data is valid.
FITID conflicts across periods. When importing multiple months of statements, FITIDs must be unique across the entire import history. Some banks reuse FITID patterns across statement periods (e.g., resetting sequential counters monthly). This causes QuickBooks to skip legitimate transactions it considers duplicates.
Credit card vs. bank statement mismatch. QBO files for credit card accounts must use CREDITCARDMSGSRSV1 with CCSTMTRS instead of BANKMSGSRSV1 with STMTRS. A common converter mistake is generating bank-type QBO files for credit card transactions, which QuickBooks then refuses to map to a credit card account.
Frequently asked questions
Why does QuickBooks reject my bank file?
Is QBO the same as OFX?
How to convert OFX to QBO?
Can I import CSV into QuickBooks?
What is INTU.BID in a QBO file?
FinanceConvert Engineering Team
OFX-to-QBO conversion is our most-used feature. We process thousands of QuickBooks Web Connect files daily and maintain compatibility with every QuickBooks version since 2012.