QBO & OFX file validator

Find the exact reason a file won't import into QuickBooks, Quicken, or Xero.

Check my file

Paste the file or pick it from your computer — nothing is uploaded. No valid file yet? If you only have a PDF statement, generate a fresh .qbo from your PDF for QuickBooks, or convert it to OFX for Quicken.

Check a QBO, OFX, QIF, IIF or CSV file

Paste the contents or pick the file. The format is detected automatically and only the checks relevant to it are applied.

Your export file

Paste the file contents below, or choose the file from your computer.

Everything runs in your browser — the file is never uploaded.

No valid file to start from?

If the source is still a PDF statement, it has to be converted before any accounting software will take it. The converters produce files that pass these checks — including derived FITIDs, so a second import of an overlapping range does not collide.

  • Every transaction from the real file
  • Category totals and repeat charges
  • Export to Excel or CSV

Fast enough for a first pass

Each tool does one job: a clean estimate, not a stand-in for a full statement analysis.

Checks what actually breaks imports

Catches the failure modes importers actually reject on: missing or duplicate FITIDs, malformed DTPOSTED, unparseable amounts.

Nothing is uploaded

The file is read locally and never leaves your device, so client statements stay confidential.

Says what will happen, not just what is wrong

Explains each problem in terms of what the importer will do — skip the row, reject the file, or import it blank.

Who it is for

Everything is checked from the file itself, in your browser. Nothing is uploaded.

Bookkeepers with a rejected import

QuickBooks reports a generic failure and names no line. This tells you which transactions are malformed and why.

Anyone whose import 'worked' but imported nothing

The classic duplicate-FITID case, where transactions are skipped silently rather than reported as an error.

Developers generating OFX

Checks the header, serialisation, required tags, date format, and id uniqueness against what importers actually enforce.

Anyone handed a file by a client

Confirms whether the file is sound before you spend time chasing a problem inside the accounting software.

QBO & OFX file validator: questions & answers

Why won't QuickBooks import my QBO file?

In order of how often it happens: the FITIDs are missing or duplicated, so QuickBooks treats transactions as already imported and silently skips them; DTPOSTED is not in YYYYMMDD format; TRNAMT contains a currency symbol or thousands separator; or the header declares OFX 2.x while the body is written in the older OFX 1.x SGML style. This tool checks all four.

My import said it succeeded but no transactions appeared. Why?

Almost always duplicate FITIDs. QuickBooks uses FITID to decide whether it has seen a transaction before, keeps the first occurrence and skips the rest — without reporting an error. It also happens when two separately generated files both number their transactions 1, 2, 3, because the second file's ids collide with the first file's.

What is the difference between a QBO and an OFX file?

A QBO file is OFX. Intuit uses the .qbo extension for the Web Connect flavour, but the contents follow the OFX specification. The practical difference is serialisation: OFX 1.x is SGML, where leaf tags are opened and never closed, while OFX 2.x is well-formed XML. Declaring one and writing the other is a common cause of rejection.

Does my file get uploaded anywhere?

No. The checks run entirely in your browser — the file is read locally and never sent to a server. You can disconnect from the internet and the validator still works.

It says my file is valid but the import still fails. What now?

Then the problem is on the accounting-software side rather than in the file. The usual causes are selecting the wrong account during import, an account that is already reconciled through the dates in the file, or a bank feed already connected to that account and conflicting with a manual upload.

Can I validate a QIF or IIF file too?

Yes. The validator detects QIF, IIF and CSV as well as QBO/OFX/QFX, and applies the checks that matter for each — for QIF that means the !Type: header, unterminated records, and ambiguous day/month dates; for IIF, the header rows and balanced TRNS/ENDTRNS blocks.

Something else on your mind? Write to contact@mybankstatementanalysis.com.

Try it on your own statement