PDF to QBO converter
Convert PDF bank statements into .QBOfiles that import straight into QuickBooks — no CSV, no column mapping. FlowParse AI reads any bank's statement and builds a ready-to-upload bank-feed file, with .QFX (Quicken) and .OFX on the same download.
Any bank · scanned or digital · balance-validated · unique transaction IDs
Free to start · QBO, QFX and OFX files included on every plan
A real sample: bank statement (us style) — to a ready .QBO bank feed
A fictional sample document converted by the same engine you get — flip through the source PDF and every export format, or download the files themselves.
Skip the CSV. Import the way QuickBooks wants.
If your bank only gives you PDF statements, getting that history into QuickBooks usually means a tedious detour: export the PDF to CSV, then hand-map three columns on every import and hope the date format and signed amounts line up. It works, but it's slow and easy to get wrong.
A .QBO fileremoves that step entirely. It's the QuickBooks Web Connect format — a structured bank-feed file QuickBooks reads directly, so there are no columns to map. FlowParse extracts every transaction from your PDF statement and writes a valid .QBO (or .QFX for Quicken, or plain .OFX) you upload in one click.
In the box
Three formats, one upload
Why a .QBO beats a CSV import
QuickBooks can import a CSV, but it treats it as raw data: you have to tell it which column is the date, which is the description and which is the amount — every single time. If your statement uses a day-first date, separate debit and credit columns, or currency symbols inside the amount, the mapping breaks and you're back to cleaning a spreadsheet.
A .QBO file is already structured the way QuickBooks expects. The date, the signed amount, the description and a unique transaction ID are all tagged, so QuickBooks just reads it — no mapping screen, no guesswork. You also get duplicate protectionfor free, because each transaction's unique ID lets QuickBooks skip anything it has already imported.
| CSV import | .QBO file | |
|---|---|---|
| Column mapping | Manual, every time | None — auto |
| Date / amount errors | Common | Avoided |
| Duplicate protection | No | Yes (FITID) |
| Debits & credits | You fix the signs | Pre-signed |
| Import speed | Minutes of fiddling | One click |
.QBO, .QFX and .OFX — which one?
All three are members of the OFX (Open Financial Exchange) family — the same bank-feed standard, with small differences in which software reads them. FlowParse builds whichever you need from the same statement.
| Format | Use it for |
|---|---|
| .QBO | QuickBooks Online & QuickBooks Desktop (Web Connect) |
| .QFX | Quicken (Web Connect) |
| .OFX | Most other accounting tools that accept bank-feed files |
Prefer a spreadsheet instead? The same data also exports to Excel and CSV.
From PDF to QuickBooks in three steps
1 · Upload the PDF
Drop your PDF bank statement — digital or scanned, any bank, any number of pages.
2 · AI builds the file
FlowParse extracts every transaction, signs the amounts, validates balances and writes a valid .QBO / .QFX / .OFX.
3 · Upload to QuickBooks
Banking → Upload from file → select the .QBO. Transactions import automatically — no mapping.
How to import the .QBO into QuickBooks
QuickBooks Online: go to Banking (or Transactions → Bank transactions) → Link account → Upload from file → choose the .QBO → pick the account → review and accept the transactions.
QuickBooks Desktop: File → Utilities → Import → Web Connect Files → choose the .QBO → select the account.
Because the file carries a unique ID per transaction, you can safely re-import or import overlapping statements — QuickBooks recognises what it already has and won't duplicate. For the full account-by-account workflow, see how to import bank statements into QuickBooks.
Works with any bank's PDF
Because extraction is AI-based rather than template-based, FlowParse reads layouts it has never seen — so you don't need a converter per bank:
Converting a whole year across several accounts? Use Smart Merge to consolidate them first.
Validated before it reaches your books
A bad import is worse than no import. Before the .QBO is built, FlowParse checks the data so what lands in QuickBooks is complete and correct:
See the validation engine for how the checks work.
Any bank → one QuickBooks-ready file
Upload statements from every account you have — FlowParse turns each into a clean bank-feed file you can import.
Who converts PDF statements to QBO
Accountants
Bring client bank history into QuickBooks without re-keying a year of transactions.
Bookkeepers
Catch up months of statements in minutes — upload, download .QBO, import.
Small businesses
Import old or missing statements your bank only offers as PDFs.
E-commerce sellers
Pull payout and card statements into the books across providers.
QuickBooks Desktop users
Use Web Connect import for banks without a direct feed.
Quicken users
Get the same statements as .QFX for personal finance tracking.
What is inside a .QBO file
A .QBO file is a plain-text bank statement in the Open Financial Exchange format (OFX 1.0.2), with one extra Intuit tag that tells QuickBooks the file is a Web Connect download. It is the same kind of file your bank produces when it offers "Download for QuickBooks" — which is why QuickBooks imports it without asking you which column is the date and which is the amount.
When FlowParse builds the file from your PDF, it writes the statement in the structure QuickBooks reads. Knowing what each part does makes the import screens easier to understand:
| Part of the file | What FlowParse writes | Why it matters |
|---|---|---|
| Account | The account number from the statement; bank accounts as a checking account, card statements as a credit card | QuickBooks asks once which account the file belongs to and remembers it |
| Date range | First and last transaction date | Shows the period you are importing |
| Transaction ID (FITID) | A unique, stable ID per transaction | Importing the same file twice does not create duplicates |
| Payee (NAME) | The description, up to 32 characters | The field QuickBooks matches bank rules and payees on |
| Memo | The full description, up to 255 characters | Nothing printed on the statement is cut off |
| Amount and type | One signed amount; money in is a credit, money out a debit | No separate Debit and Credit columns to map |
| Ledger balance | The statement's closing balance | Lets you compare QuickBooks' balance with the bank's |
Importing into QuickBooks Online and QuickBooks Desktop
QuickBooks Online
- Go to Banking (or Transactions › Bank transactions).
- Choose Link account › Upload from file.
- Select the .QBO file and pick the QuickBooks account it belongs to.
- The transactions appear under For review, where you categorise, match or add them.
QuickBooks Desktop
- Open the company file and go to File › Utilities › Import › Web Connect Files.
- Select the .QBO file.
- Link it to an existing account or create a new one when asked.
- Review the downloaded transactions in the Bank Feeds centre before adding them to the register.
In both versions, the first import for an account is the one that asks questions; after that, QuickBooks recognises the account and later files go straight to review. For the full account-by-account workflow see the guide how to import bank statements into QuickBooks.
Duplicates: what the transaction ID protects you from — and what it can't
Every transaction in a FlowParse .QBO carries a transaction ID built from its date, position, amount and description. Convert the same statement again and the IDs come out the same, so QuickBooks recognises rows it has already imported instead of adding them twice. That is the protection a CSV import does not have.
What an ID cannot do is recognise a transaction that reached QuickBooks by a different route. If the account is also connected to a live bank feed, the feed's copy of a transaction has the bank's own ID, not ours. The usual fix is simple: use the PDF for the months before the feed starts, and let the feed take over from there. If periods overlap, QuickBooks' review screen will offer to match the pairs — accept the match rather than adding both.
Twelve statements, one .QBO
Catching up on a year of bookkeeping one statement at a time means twelve conversions and twelve imports. With Smart Merge you upload all twelve PDFs of an account together and download a single .QBO containing every transaction.
Before that file is built, each statement is checked against its own opening and closing balances, the statements are put in date order, and the merge review warns you if one statement's closing balance is not the next one's opening balance — the sign of a missing month. You find the gap before QuickBooks does, not during the year-end reconciliation.
QBO, CSV or Excel: which file to download
All three come from the same checked transactions, and all three are included on every plan. Pick by what happens next.
| .QBO | CSV | Excel | |
|---|---|---|---|
| Imports into QuickBooks | Directly, as a bank file | After mapping columns | Not directly |
| Duplicate protection | Transaction IDs | None | None |
| Account and period | In the file | Chosen by hand | — |
| Editing before import | In the preview | In any spreadsheet | In Excel |
| Best for | Bookkeeping in QuickBooks | Xero and other software | Review, analysis, the accountant |
Credit card statements to QBO
A credit card statement becomes a credit card .QBO, not a checking account file, so QuickBooks puts it in a credit card account where charges increase the balance owed and payments reduce it. Before the file is built, the card statement is checked against its own summary: previous balance, plus purchases, cash advances, fees and interest, minus payments, must equal the new balance.
The card payment that leaves your checking account and the payment credited on the card are the same money seen from two sides. Import both statements and use QuickBooks' transfer matching so it is not counted twice. Card issuers have their own pages too — see the credit card statement converter.
When a QBO import goes wrong
QuickBooks will not open the file
A .QBO is text; opening it in a word processor or spreadsheet and saving it again usually breaks it. Download it again and upload it untouched. In QuickBooks Desktop, use Web Connect import rather than opening the file from Explorer or Finder.
Transactions land in the wrong account
The account is chosen during the first import. If it was wrong, undo the imported transactions in the review screen, then import again and pick the right account.
The balance in QuickBooks does not match the bank
Usually the account in QuickBooks had transactions before the first import, or a month is missing. Compare the ledger balance in the file — the statement's closing balance — with QuickBooks' register on the same date, and see how to do a bank reconciliation.
Payee names are cut short
The payee field holds 32 characters by design of the format. The full description is kept in the memo, so a bank rule can still match on the words you need.
What is checked before your .QBO is built
A bank file is only as good as the transactions in it. These are the checks every statement goes through before a .QBO is written — the same checks for every bank, digital or scanned.
| Check | Bank statement | Credit card statement |
|---|---|---|
| Totals | Opening balance + all transactions = closing balance | Previous balance + purchases + cash advances + fees + interest − payments = new balance |
| Row by row | Each row against the running balance, where the bank prints one | Sum of the transactions against the statement's summary |
| Signs | Taken from the column the amount was printed in (money in or money out) | Charges and payments kept apart |
| Across statements (Smart Merge) | Closing balance = next statement's opening balance | New balance = next statement's previous balance |
When a check fails, you see it in the preview before downloading — and the bank statement validation page explains what each result means.
.QBO, .QBW, .QBB: not the same thing
The names look alike, which causes a lot of confusion. A .QBO is a bank statement file — the Web Connect download this page creates. A .QBW is a QuickBooks Desktop company file: your whole set of books. A .QBB is a backup of that company file. You import a .QBO into a company; you never open it as one.
"QBO" is also short for QuickBooks Online, the web version. Both readings meet here: a .QBO file imports into QuickBooks Online as well as into QuickBooks Desktop. If you need the other Intuit product, Quicken, the matching file is a .QFX — same structure, different Intuit tag — and FlowParse produces both from the same statement.
Why not just download a QBO from the bank?
When your bank offers a "Download for QuickBooks" button for the period you need, use it — it is the bank's own data. The trouble is that it often does not. Many banks offer QuickBooks downloads only for recent activity, some offer only CSV, and some smaller banks and credit unions offer nothing beyond the monthly PDF. Statements from a closed account, from a bank that has since merged, or from years ago usually exist only as PDFs.
Those are exactly the cases that turn up when you catch up on bookkeeping, take on a new client or rebuild a year for the tax return. A PDF statement is also the document your accountant or auditor trusts, because it carries the bank's printed opening and closing balances. Converting the PDF — and proving the converted transactions add up to those balances — gives you the same file the bank would have produced, for any period you have a statement for. Our bank-by-bank guides explain where each bank keeps its statements and what it offers for download.
After the import: reconcile the account in QuickBooks
Importing puts the transactions in QuickBooks; reconciling proves the account agrees with the bank. Open QuickBooks' reconcile screen for the account, enter the statement's ending date and ending balance from the PDF, and tick off the imported transactions. Because FlowParse already checked that the statement's opening balance plus its transactions equals its closing balance, a difference at this stage almost always points at something on the QuickBooks side — an opening balance entered by hand, a transaction added manually, or a bank-feed duplicate.
Reconcile month by month, in order. Each statement's closing balance becomes the next month's starting point, so a problem found in March does not hide inside a year-end total. The walkthrough in how to do bank reconciliation covers outstanding items and how to track down a difference.
Accounts in other currencies
The .QBO carries the statement's currency as a standard three-letter code — EUR, GBP, CAD, AUD and so on. QuickBooks imports a foreign-currency account only when that account exists in QuickBooks in the same currency, which in QuickBooks Online means multicurrency is switched on for the company. Set that up first, then import.
Amounts are never converted on the way: a euro statement produces a euro file, and QuickBooks applies its own exchange rates to your home-currency reports. Statements written with a comma as the decimal separator — 1.250,00 — are read as the number they are, so the file contains 1250.00, not 1.25.
For accountants and bookkeepers: client PDFs into QuickBooks
Clients send what they have: PDFs from three banks, a scan of a paper statement, a card statement photographed on a phone. Each one converts the same way, without templates, and each one is checked against its own balances before you see it. You review the rows in the editable preview, correct anything that needs a human eye, and download a .QBO per account — or merge a client's year into one file per account with Smart Merge.
The result is the same import routine for every client, whatever their bank. That is what makes it worth standardising on — see the bank statement converter for accountants for firm workflows, and the PDF to QFX converter for clients who keep their books in Quicken.
A practical habit for client work: name each download by client, account and month before importing. When a question comes back months later — "where did this payment come from?" — the file name, the Source File column of a merged workbook and the original PDF lead you straight back to the statement line, without opening every client folder.
Example: a landscaping business six months behind
A landscaping company in Ohio stopped bookkeeping in spring. By October, QuickBooks Online is six months behind and the bank feed only reaches back so far. The owner downloads the six monthly checking statements and two card statements as PDFs. The figures here are an illustration.
The checking statements go into Smart Merge together. Each is checked against its balances; the merge review shows the chain from April to September is unbroken. One .QBO comes out for the checking account and one for the card. Imported into QuickBooks, both land under For review; the card payments are matched as transfers, and the bookkeeper reconciles each month against the PDF's ending balance. Six months of catch-up becomes an afternoon of categorising rather than a week of typing.
Keep the PDFs — the .QBO is a working copy
The IRS generally expects you to keep the records behind a tax return for at least three years, and lenders, auditors and tax authorities elsewhere ask for the bank's own statements, not a file derived from them. Store the original PDFs by account and month. The .QBO gets the transactions into QuickBooks; the PDF remains the evidence that they are right.
In short: download the statement PDF, convert it, check the preview, download the .QBO and import it through Upload from file or Web Connect. Every statement is checked against its balances on the way, a year of statements can become one file, and every format — .QBO, .QFX, .OFX, Excel and CSV — is included on every plan.

