OFX, QFX and QIF: what they are
OFX (Open Financial Exchange) is the standard file format that banks use to deliver transactions to personal finance and accounting software. It describes the account, the statement period, the ledger balance and every transaction with a unique ID. Most packages that import bank files read it.
QFX is Intuit's variation of OFX for Quicken. It is the same data with an Intuit bank identifier added, which Quicken requires before it accepts a file. QBO is the matching variant for QuickBooks, and has its own PDF to QBO page.
QIF (Quicken Interchange Format) is an older, simpler text format with a date, an amount and a payee per transaction and no unique IDs. It is still accepted by many programs, including Xero and several UK and Australian packages, and is useful when OFX is not.
Which software uses which format
| Software | Best format | Where to import |
|---|---|---|
| Quicken (Windows and Mac) | QFX | File, File Import, Web Connect (.QFX) |
| Sage 50, Sage Business Cloud | OFX | Bank import or Bank statement import |
| MYOB | OFX or QIF | Import statement from the bank feeds area |
| Wave, GnuCash, Banktivity, Moneydance | OFX | File, Import |
| Xero | CSV, OFX or QIF | Import a statement on the bank account page |
| Older Quicken versions, Money | QIF | File, Import, QIF file |
Software changes menus often, so treat the last column as a pointer and check the vendor help for your version.
How to convert
- Upload the statement PDF above.
- Check the transaction table and the balance banner. Correct any row that read wrongly.
- Select OFX, QFX or QIF. For bank accounts and credit cards the correct account type is used in the file, which affects how your software signs the amounts.
- Download and import the file into your software, choosing the matching account.
What makes an OFX file valid
Software that imports OFX is strict. A single malformed tag can make the whole file fail with an unhelpful message. We generate OFX 1.0.2 in the SGML form that nearly every importer accepts, with a plain-text header block, a SIGNONMSGSRSV1 section, a BANKMSGSRSV1 (or CREDITCARDMSGSRSV1) section, a statement transaction list with DTSTART and DTEND, and a ledger balance with an as-of date.
Details that commonly break imports are handled for you. The NAME field is limited to 32 characters and anything longer moves into MEMO. Characters that have special meaning in SGML are escaped, and non-ASCII characters are transliterated. Dates are posted at noon GMT so a transaction does not move to the previous day when the importing software applies a time zone. Every transaction has a FITID that is unique inside the file, built from the date and a hash of the amount and description, with a counter added for identical repeated rows.
Credit card statements
In OFX, a credit card is a different message set from a bank account. Charges are negative, payments are positive, and the ledger balance is the amount owed, shown as a negative number. If a credit card statement is imported as a bank account, charges look like deposits. The converter detects credit card statements and writes the credit card structure, and you can switch the account type in the fix options if the first guess was wrong.
Common import errors
- Quicken says the file is not from a supported institution. Quicken checks the Intuit bank identifier in QFX files. If your institution is not recognised, try the OFX download or the QIF download and import into a manual account.
- Dates in the wrong order. Switch Date order in the fix options. OFX itself stores dates unambiguously, so the problem is in the reading step, and it is visible in the preview.
- Amounts reversed. Use Flip all signs, or check whether the account is a credit card.
- Duplicates. Import only dates you do not already have. Unique IDs let most programs skip repeats.
Independent tool
Quicken is a trademark of Quicken Inc. and QuickBooks of Intuit Inc. Statement2QBO is not affiliated with any software vendor named on this page.
Frequently asked questions
What is the difference between OFX and QFX?
QFX is OFX with an Intuit bank identifier added so that Quicken accepts it. The transaction data is the same.
Can I import OFX into Xero?
Xero accepts OFX, QIF and CSV statement imports. For Xero the Xero CSV is usually the easiest, because it matches Xero's own template.
When should I use QIF instead of OFX?
Use QIF for older software or programs that do not read OFX. QIF has no unique transaction IDs, so avoid importing overlapping date ranges.
Does it support credit card statements?
Yes. Credit cards are written with the credit card message set, so charges are negative and the balance is the amount owed.
Is the file valid OFX?
Files are generated as OFX 1.0.2 SGML and our automated tests validate the header, tag structure, unique IDs, field lengths and balance for every export.
Is my statement uploaded?
No. The PDF is processed in your browser and only usage counts are recorded.