Makerro / OFX to CSV / QFX
Convert a QFX file to CSV
A .qfx file is an OFX file with Quicken's badge on it. The same converter reads both โ drop it in and you get a CSV.
What QFX actually is
When a bank offers "download for Quicken", it usually sends a .qfx file. Inside, it
is the same OFX format every other bank uses, with one addition: an INTU.BID element
carrying Intuit's bank identifier, which is how Quicken knows which institution the file came
from. Nothing else differs.
That extra element is why QFX is sometimes described as a "proprietary" format. It is really an ordinary OFX file that has been stamped, and the stamp is the only part Quicken needs. A reader that understands OFX understands QFX.
.qfx to .ofx is a trick you will find on forums. It does work
in some software โ but you do not need it here. This converter accepts the .qfx
extension directly.
Why people convert it
- Quicken was discontinued in some regions, or the subscription lapsed, and the files remain.
- An accountant asked for a spreadsheet, not a Quicken file.
- The bookkeeping software in use imports CSV but not QFX.
- You want to check the bank's arithmetic against your own, in a spreadsheet.
What you get out
One row per transaction: date, description, memo, amount, type, cheque number, currency, the account it belongs to, and the bank's own transaction ID. Files containing more than one account are handled โ every account appears, with an Account column so you can split them later.
The two OFX dialects, and why some converters fail
OFX exists in two incompatible forms behind the same extension. Version 1.x is SGML: leaf
elements are never closed, so <TRNAMT>-12.34 is a complete element and the next
opening tag is what ends it. Version 2.x is ordinary XML with every tag closed.
A converter written against one and tested against one file from one bank will appear to work and then produce nonsense โ or nothing โ on the other. This one reads both, and the test suite contains a real example of each.
Is it safe to convert a bank file online?
It depends entirely on whether the file is uploaded. Most converters send it to a server. A statement lists every place you shopped, everyone who paid you, and your balance each day, so that is a meaningful thing to hand over.
This one has no server to send it to. The page is a static file and the parsing happens in your browser. You can verify that rather than believe it: open developer tools, watch the Network tab while you convert, or simply disconnect from the internet โ the conversion still works.