Format converter

Free OFX to QBO Converter

Runs entirely in your browser — your file is never uploaded to a server.

100% private
Never uploaded
Instant
Runs in your browser
CSV & Excel
Real spreadsheet output
No signup
No account, no card
Convert an OFX file to QBO

Drop your file below — runs entirely in your browser, nothing is uploaded.

Drag and drop your OFX file hereor click to browse your files OFXQBO

Only have a PDF statement? That converts too.

A OFX file means your bank gave you structured data — which most banks only do for the last few months. Beyond that you get a PDF, and a PDF won't open in Excel. BalanceExtract reads those directly: it works out the column layout from the document itself, handles scanned statements with OCR, checks that every running balance reconciles, and flags any row it isn't confident about before you export.

Same QBO output, same on-device processing, nothing uploaded.

Convert a PDF statement6 pages free, no signup, no card

How to convert OFX to QBO in 3 steps

Step 1: Drop in your OFX file

Drag the file onto the box above or click to browse. It is read in your browser — nothing is uploaded to a server, which you can confirm in the Network tab.

Step 2: Check what was found

Every transaction is read out with its date, payee, description, amount and transaction ID, along with any warnings about rows that need a look.

Step 3: Download the QBO

The QBO file saves straight to your device, ready to open in a spreadsheet or import into your accounting software.

OFX is a bank-neutral standard, but QuickBooks generally imports more reliably when the file carries its own QuickBooks-specific headers. This guide covers converting a plain OFX file into QBO.

Quick summary

OFX and QBO share the same underlying transaction structure — this converter reads either real-world OFX style (older SGML or newer XML) and writes a clean QBO file, ready to import as a real bank feed in QuickBooks Online or Desktop.

What Carries Over From OFX to QBO

FieldWhat Happens
Date, amount, payeeCarried over directly — both formats use the same STMTTRN structure
Transaction ID (FITID)Preserved, so QuickBooks can still detect duplicate imports

A Real Reason to Make This Conversion

Frequently Asked Questions

Will importing this into QuickBooks create duplicate transactions?
No. Every row keeps its FITID — the unique transaction ID banks put in the file — in the Transaction ID column. QuickBooks uses it to recognise transactions it has already seen, so re-importing an overlapping date range won't double up your books.
My file has more than one account in it. What happens?
Each account is kept separate. Bank downloads often bundle a current account and a credit card into one file, each as its own statement section. Every transaction is tagged with its account number and type, and an Excel export puts each account on its own sheet instead of interleaving them.
Why do the dates in other converters come out with [0:GMT] on the end?
Because that's how the raw field is written — banks append a timezone offset to the timestamp. Only the date portion is meaningful for bookkeeping, so it's stripped here and you get a clean date.
What's the difference between QBO, OFX and QFX files?
They are the same underlying format with different extensions and headers. QBO is QuickBooks' Web Connect flavour, QFX is Quicken's, and OFX is the open standard both are built on. One reader handles all three, so this converter accepts any of them regardless of which one the page is named after.
Do negative amounts mean what I expect?
Yes. Money leaving the account is negative, money arriving is positive, and each row also carries an explicit Dr/Cr marker derived from that sign. Credit-card files follow the same convention from the bank's point of view, so a purchase is negative and a payment towards the card is positive.
Is my financial data uploaded anywhere?
No. The conversion runs in your browser using JavaScript — the file is never sent to a server. You can confirm it by opening your browser's Network tab while converting, or by disconnecting from the internet after the page loads and converting anyway.
What columns do I get?
Date, Payee, Description, Category, Transaction ID, Amount and Dr/Cr, plus Account when the file contains more than one. Payee and Category are derived on your device from the description — nothing is sent anywhere to work them out.
Related articles

How BalanceExtract compares

Honest side-by-side write-ups, including where each of them is the better choice.

Other converters