CSV to OFX Converter

Accounting apps import OFX far better than CSV: proper dates, signed amounts and stable transaction IDs that stop duplicates. Banks often only give you the CSV. Drop it here, point at the date, amount and description columns, and download an OFX that GnuCash, YNAB, Quicken or HomeBank will accept. The statement never leaves your browser.

drop your files anywhere in this area

Your files never leave your device. This tool even works offline.

CSV

01 / Fast steps

  1. Drop or select the CSV your bank exported.
  2. Pick which column holds the date, the amount and the description; the tool pre-selects what it recognises.
  3. Download the .ofx file and import it into your accounting app.

02 / Best for

  • Import a bank CSV into GnuCash, which matches OFX transactions by ID instead of guessing on CSV rows.
  • Feed YNAB or HomeBank from a bank that only exports CSV.
  • Bring statements into old Quicken versions that predate CSV import entirely.
  • Convert each monthly export in seconds, since the mapping is remembered by habit rather than reconfigured.

03 / Why here

  • Generates OFX 1.02, the dialect accepted by effectively every finance program written in the last twenty-five years.
  • Transaction IDs are deterministic: converting the same file twice yields identical IDs, so re-imports deduplicate instead of doubling your movements.
  • European and American conventions both work: comma or semicolon separators, 1.234,56 or 1,234.56 amounts, day-first or month-first dates.
  • Column names in English, Italian, German, French and Spanish are recognised and pre-selected.
  • Runs offline once the page is loaded: bank data never reaches a server.

04 / Keep in mind

  • The CSV must carry one transaction per row with a date, an amount and a description; multi-line or subtotal rows are skipped and counted in the result message.
  • OFX marks transactions as debit or credit from the sign of the amount, so a CSV with separate unsigned debit and credit columns needs the amounts combined into one signed column first.
  • The generated file describes a generic checking account: apps that ask will let you choose the real account at import time.

Good to know

Questions & answers

01Why do accounting apps prefer OFX over CSV?

Because OFX is a statement, while CSV is just a table. OFX defines exactly where the date, the signed amount and the description live, so nothing needs to be guessed at import. Above all, every OFX transaction carries a FITID, a unique identifier: when you import overlapping periods, the app recognises transactions it has already seen and skips them. CSV has no identifiers, which is why CSV imports so often produce duplicates.

02What is a FITID and why does it matter that it is stable?

The FITID (Financial Institution Transaction ID) is the unique tag each OFX transaction carries. Import software uses it for deduplication: same FITID, same transaction, skip it. This converter derives each FITID from the transaction date, amount and description, so converting the same CSV twice produces identical IDs, and importing both files cannot double your movements. A converter that generated random IDs would silently break that protection.

03My bank CSV has debit and credit in two separate columns. What do I do?

OFX needs one signed amount per transaction: negative for money out, positive for money in. Combine the two columns into one before converting, which in a spreadsheet is one formula, credit minus debit, filled down the column. The tool cannot guess which of two unsigned numbers is the outflow, and guessing wrong would flip your whole statement.

04Is my bank statement uploaded during the conversion?

No. The CSV is parsed and the OFX is generated by JavaScript running in your browser tab, and the result is saved straight to your disk. It works offline once the page is open. A statement of transactions is among the most sensitive files a person has, which is exactly why this tool has no upload step.

05Which apps accept the generated file?

Anything that imports OFX: GnuCash, YNAB (file-based import), Quicken including very old versions, HomeBank, Moneydance, Banktivity, MoneyMoney and most others. The file is OFX 1.02, the most widely supported dialect of the standard, and describes a checking account, which apps let you remap at import.

06Is CSV to OFX free?

Yes, completely free, with no sign-up, no file limits and no per-file fees. It runs in your browser, so your statements never leave your device.