CSV or Excel to OFX
Convert CSV or Excel to OFX in your browser.
Many accounting and budgeting programs import bank transactions from an OFX file but not from your bank's CSV. Drop the CSV or spreadsheet here and get an OFX (1.02 or 2.1) or QFX file, with unique IDs, built on your computer.
- Your file is never uploaded
- Columns, dates and signs detected, and fixable
- Stable transaction IDs on every export
- Free for 30 transactions per file
CSV and Excel converter
Drop your CSV or Excel file here
The file your bank or card issuer lets you download (.csv, .tsv, .txt, .xlsx, .xlsm and .xls). It is read inside this page and goes nowhere else.
Add another fileNo upload. This page's security policy forbids network connections, so your file cannot leave it. See how to check that yourself.
1Check how your file was read
2Preview and totals
3Account settings
4Download
Free: every format, the first 30 transactions of each file. Pro ($19, once, the same key as Plainsum Statements Pro): no limit, several files at once, saved column mappings.
How it works
Drop the CSV or Excel file
Plainsum reads the file locally and detects the date, description, amount or debit/credit columns, and the date format.
Choose OFX details
Pick the account type, currency and OFX version (1.02 SGML or 2.1 XML). Add the account digits if the program matches files to accounts that way.
Download and import
Download OFX or QFX and use the import or upload option for statement files in your program. Try a few rows first.
What the OFX file contains
An OFX statement is a list of transactions between two dates, plus the account it belongs to. Each transaction has a posted date, a signed amount, a unique ID, a name and a memo. Plainsum writes money out as negative, builds the ID from the row itself so re-exporting the same rows gives the same IDs, and adds a closing balance when your file has a balance column that adds up.
| Format | What it is | Typical use |
|---|---|---|
| OFX 1.02 | SGML text, tags without closing tags, as banks have sent it for years | The safest default for import tools |
| OFX 2.1 | The same data as XML, every tag closed | Tools and scripts that parse XML |
| QFX | OFX with a Quicken institution block | Quicken and Quicken-compatible programs |
| QBO | OFX with an Intuit institution block | QuickBooks Online and Desktop |
| QIF | An older, simpler text format without IDs | Quicken-style imports |
Programs differ in what they accept and how they treat files without a real bank behind them. Import a small file into a test file or spare account first, compare the count and totals with your bank, and only then bring in the full history. This tool is not affiliated with Xero, Intuit, Quicken or any bank.
What it understands
- Files: CSV, TSV and semicolon-separated text (UTF-8, UTF-16 or the older Windows encoding), Excel .xlsx and .xls. The first sheet with data is used and you can pick another. Password-protected workbooks must be unlocked first.
- Columns: a date, a description or payee, and either one signed Amount column or separate Debit (money out) and Credit (money in) columns. A balance, check number, memo and a DR/CR marker column are picked up when present. Headings are recognised in English, German, French and Spanish, and a file with no heading row at all is read from the data.
- Extra lines: summary blocks above the table, a "beginning balance" line inside it, and totals at the bottom are skipped and listed so you can see what was left out.
- Dates: 2025-01-31, 01/31/2025, 31/01/2025, 31.01.25, 31-Jan-2025, 20250131, with or without a time. When every date could be read as month-first or day-first, Plainsum says so, shows you an example, and lets you choose.
- Amounts: -12.50, (12.50), 12.50-, +12.50, 12.50 CR, DR 12.50, $1,234.56, 1.234,56, 1 234,56 and 1'234.56. The decimal mark is decided for the whole column, not guessed per row.
- Signs: money out is written as negative in the output. Card exports that list purchases as positive are flipped when the account type is Credit card, and you can force or undo it.
The detection was built and tested on synthetic files laid out like the CSV exports of Chase, Bank of America, Wells Fargo, Capital One and American Express, and a German savings-bank export, plus Excel versions of the same data. Bank and card names are trademarks of their owners and are not affiliated with this tool. Your bank's layout may differ, which is why every guess can be changed.
Questions
How do I convert a CSV or Excel file to OFX?
Drop the file on the box above, check the preview, choose the account type and press Download OFX. The conversion happens in your browser and the file is saved to your computer.
What is the difference between OFX, QBO and QFX?
All three are Open Financial Exchange files. OFX is the open format. QBO is OFX with an Intuit institution block that QuickBooks expects, and QFX is the same idea for Quicken. Plainsum writes all three from the same rows, so if one program rejects a file, try the other.
Which OFX version should I choose?
OFX 1.02 (SGML) is the older layout and the one most import tools read, so it is the default. OFX 2.1 is the XML version, which a few programs and tools prefer because it is easy to parse. QBO and QFX are always written as 1.02. Under Advanced settings you can switch the OFX download to 2.1.
Which programs read OFX files?
Many accounting and budgeting programs have an option to import a bank statement file in OFX, QFX or QIF format. Xero, GnuCash and YNAB are examples whose import screens list OFX, but the accepted formats change, so check the import page of the program you use.
What goes in the account number box?
Programs use the account number in the file to decide which of your accounts the transactions belong to. The last few digits are enough, and it is optional. Use the same digits every time for the same account so the file lands in the same place. The digits are not saved by this page.
Are my transactions uploaded?
No. The page reads the file with code that ships with it and its security policy blocks network connections. Nothing about your file is sent anywhere.
What is free and what is Pro?
Every format works for the first 30 transactions of each file, so you can test the import. Pro ($19 once, the same key as Plainsum Statements Pro) removes the limit and adds batch files and saved column mappings.