CSV and Excel to OFX, QFX and QBO converter

Turn a bank or credit card statement saved as CSV or Excel into an OFX file that accounting and budgeting apps can import directly. You can also make a QFX file for Quicken or a QBO file for QuickBooks Desktop.

Choose your files

or drop .csv or .xlsx files here

Up to 20 files at a time. Your files stay on this device.

Or paste CSV text
View history

This converter is taking a while to load. Check your connection, then reload the page.

Your files stay on this device: the conversion runs in your browser and nothing is uploaded. Learn how your files are handled

How to convert a bank CSV to OFX

  1. Download your transactions from online banking as CSV or Excel. The option is often called “Export”, “Download transactions” or “Spreadsheet”.
  2. Choose the file here and check the columns. You need a date, and either a single amount column (with money out as negative numbers) or separate money in and money out columns. Payee, memo and check number are optional.
  3. Check the preview. Purchases should be negative and deposits positive. If they are the wrong way round, as in many credit card exports, tick “Reverse the signs”.
  4. Choose the file type for your app (see the table below), the account type and the currency.
  5. Download and import. The first time, import into a new or test account and compare the balance with your statement.

Which file does my app need?

AppFile to chooseWhere to import
QuickBooks OnlineOFX, QFX or QBO (or the CSV itself)Transactions → Bank transactions → Upload from file
QuickBooks DesktopQBOFile → Utilities → Import → Web Connect Files
QuickenQFX (Quicken doesn’t accept plain OFX)File → File Import → Web Connect (.QFX) File
XeroOFXBank account → Manage account → Import a statement
YNABOFX, QFX (or CSV / QIF)Account → File Import (web app or iPad)
GnuCashOFX (or QIF)File → Import → Import OFX/QFX
Moneydance, Banktivity, MoneyMoneyOFXFile → Import

Menu names change from version to version, so check your app’s help if an option has moved.

CSV, OFX, QFX and QBO: the differences

FormatWhat it isRead by
CSVA plain table. Each bank chooses its own columns, and there are no transaction IDs.Spreadsheets, and QuickBooks Online, Xero or YNAB after you match the columns
OFXOpen Financial Exchange, the standard format for bank downloads, with fixed fields for date, amount, payee and memo, and an ID for each transactionQuickBooks Online, Xero, YNAB, GnuCash, Moneydance, Banktivity
QFXOFX with an Intuit bank ID added (a Web Connect file for Quicken)Quicken
QBOOFX with an Intuit bank ID added (a Web Connect file for QuickBooks)QuickBooks Desktop and QuickBooks Online

Because OFX files have fixed fields and transaction IDs, apps import them without a column-matching step and can skip transactions they already have.

What the converter handles

  • Dates in any common layout (01/31/2026, 31.01.2026, 2026-01-31, 31 Jan 2026). The converter looks at the whole column to tell whether the day or the month comes first, and you can change this.
  • Amounts like $1,234.56, -1.234,56, (45.10), 45.10-, 12.00 DR and ₹2,50,000.00. A comma used as the decimal point is detected automatically.
  • Separate debit and credit columns (money out and money in, common in UK and Indian bank exports). Or a single amount column, optionally with a DR/CR column that marks each row as a debit or a credit.
  • Payee names longer than 32 characters, the most OFX allows: the name is shortened and the full text is kept in the memo.
  • Each transaction gets an ID (called FITID in the file) made from its own details, so converting the same statement again gives the same IDs. Apps use these IDs to spot duplicates when two statements cover some of the same dates.

QFX and QBO: the Intuit bank ID

QFX (Quicken) and QBO (QuickBooks Desktop) files are OFX files with one extra field, INTU.BID, that names a bank Intuit supports. Both programs check this bank ID and may refuse a file from a bank they don’t recognise. The converter uses 3000, an ID that many conversion tools use. It belongs to Wells Fargo, so QuickBooks or Quicken will show the file as “Wells Fargo” during import. That name doesn’t affect anything: you still choose which of your accounts the transactions go into. If the import is refused, enter your own bank’s Intuit ID, or use plain OFX with an app that accepts it.

QuickBooks Desktop and Quicken may also refuse a Web Connect file (a QBO or QFX file) for an account that downloads from your bank directly (Direct Connect or bank feeds). If that happens, turn off (deactivate) online services for that account, or import into a separate account.

Closing balance and special characters

If your file has a Balance column, the balance on the latest row is saved as the statement’s closing balance, which some apps show. You can also type it in yourself. OFX 1.0.2, QFX, QBO and Windows-1252 QIF files can only hold Western European letters, so other alphabets and emoji are replaced with “?”. The page tells you when that happens. OFX 2.2 keeps every character.

Only have a PDF statement?

This converter needs a CSV or Excel file. Most banks offer one in online banking, even when the monthly statement is a PDF. If yours only provides PDFs, a PDF statement tool such as DocuClipper can make a CSV first. Note that such services upload your file and process it on their own servers.

Frequently asked questions

Is my bank statement uploaded to a server?

No. Your browser reads and converts the file, and the OFX file is created on your device. No transaction, balance or account number is sent to this site or anywhere else.

QuickBooks Desktop or Quicken says my bank isn’t supported. What can I do?

Those programs check the Intuit bank ID inside QBO and QFX files. Try another bank ID in the options (your own bank’s ID, if you know it), or import a CSV directly if your version allows it. QuickBooks Online also accepts plain OFX.

Will I get duplicate transactions if statement periods overlap?

Each transaction’s ID is made from its date, amount, payee, memo and check number. So the same transaction converted twice gets the same ID, and most apps skip the second copy. Two real transactions that are identical and on the same day get different IDs, so neither is lost.

My credit card purchases show as deposits. How do I fix it?

Many card exports list purchases as positive numbers. Tick “Reverse the signs”, and check that the preview shows purchases as negative amounts before you download.

Which OFX version should I choose?

OFX 1.0.2 is the older version that almost every program reads, and it is the default. Choose 2.2 (XML) only if your app asks for it.

Does the file contain my real account number?

Only if you type it in the optional account number box. Otherwise a placeholder is used. Apps use this number to match the file to an account, and the last four digits are usually enough.

What is the difference between CSV and OFX?

A CSV is a plain table, and every bank arranges its columns differently. An OFX file uses fixed fields for each transaction’s date, amount, payee and memo, and gives each transaction an ID. So finance apps can read an OFX file without asking you to match columns, and can skip transactions they have already imported. QFX and QBO are OFX files with an extra Intuit bank ID for Quicken and QuickBooks. The table above compares all four.

Can QuickBooks import a CSV file?

QuickBooks Online can: upload the CSV under Transactions → Bank transactions → Upload from file, and match its date, description and amount columns. QuickBooks Desktop has no import for bank transactions in CSV form. It reads Web Connect (.qbo) files instead, which this converter makes. Intuit moves these menus from time to time, so check its help if an option has changed.

Can I upload a CSV file to Quicken?

Recent versions of Quicken can import a CSV, but only in Quicken’s own fixed column layout (File → File Import on Windows, File → Import on Mac). A CSV import doesn’t check for transactions you already have, and on a Mac it may put them in a new account. A QFX file made here imports through Web Connect into the account you choose, and its transaction IDs let Quicken skip duplicates, so it is usually the simpler route.

Why is QuickBooks not importing all my transactions?

Check three things. First, imported transactions wait for review (the For review list in QuickBooks Online, the Bank Feeds center in QuickBooks Desktop) until you add or match them, so they don’t appear in the register straight away. Second, QuickBooks skips transactions whose ID it has already seen, which happens when statement periods overlap. Third, this page lists any row it couldn’t read, such as a row without a date or amount, before you download.