Designed for finance exports
The parser recognises date, description, amount, debit/credit, memo, category, and transaction id fields, including headers like Narration or Withdrawal Amt. used by many banks.
Finance file converter
Write balanced Intuit Interchange Format (IIF) transactions for QuickBooks Desktop. Upload a file or paste its contents, check the parsed transactions, then download the IIF file.
1 · Source
3 · Result
Nothing converted yet
A sample CSV file is loaded — press “Convert to IIF” to see how the output looks.
The parser recognises date, description, amount, debit/credit, memo, category, and transaction id fields, including headers like Narration or Withdrawal Amt. used by many banks.
Each conversion shows the parsed transactions with money in, money out, and date range, plus warnings about ambiguous dates or missing account details.
PDFs and text files are read by your browser and never sent to a server. Close the tab and the data is gone.
QuickBooks Desktop still imports transactions through IIF, a tab-delimited text format Intuit introduced in the 1990s. Banks and payment processors do not export it, so a bookkeeper who needs to load a month of card activity usually ends up typing it in by hand. This converter takes the CSV you already have and writes a balanced IIF file you can import through File → Utilities → Import → IIF Files.
The converter only needs three columns: a date, a description, and an amount. If your CSV also has a Category column, that value becomes the offset account on the split line, which is what makes the import land in the right expense or income account instead of a holding account you have to reclassify later.
Everything runs in your browser. The CSV is parsed locally and the IIF text is assembled in memory, so transaction details never leave your machine. That matters for IIF in particular, because QuickBooks company files tend to hold a whole business's banking history.
An IIF file starts with header lines that begin with an exclamation mark. This tool writes three of them: !TRNS, !SPL, and !ENDTRNS, each listing the same columns (TRNSTYPE, DATE, ACCNT, NAME, AMOUNT, DOCNUM, MEMO).
Every transaction is a TRNS line, one or more SPL lines, and an ENDTRNS marker. QuickBooks requires the amounts in a block to sum to zero. The TRNS line posts to the bank account (named Checking in the output) and the SPL line posts the opposite amount to the offset account, so a -39.99 card charge becomes -39.99 on Checking and +39.99 on the expense account.
TRNSTYPE is CHECK for negative amounts and DEPOSIT for positive ones, the two simplest types for plain bank activity. QuickBooks also understands TRANSFER, PAYMENT, CREDIT CARD, and GENERAL JOURNAL, but those need extra columns this converter does not write.
Dates are written as MM/DD/YYYY, which US editions of QuickBooks Desktop expect. QuickBooks reads IIF dates with the Windows short-date setting, so on a day-first region it will read 05/03/2026 as 5 March; switch the region temporarily or edit the DATE columns in that case. ISO and day-first dates in the CSV are converted; use the Date order control if a date like 03/05/2026 is ambiguous.
DOCNUM comes from an Id, Ref No, Cheque No, or Check Number column when the CSV has one, otherwise from the row position. MEMO is filled from a Memo, Notes, or Reference column. Tabs and line breaks inside a cell are replaced with spaces, since a stray tab would shift every column after it.
The CSV is split into rows and the header line is matched against a list of known column names to find the date, description, amount, category, memo, and reference columns.
Each row is normalized: dates are parsed into a single calendar date and flagged in a warning when they cannot be read, amounts are cleaned of symbols and separators, and blank rows are dropped. An amount that cannot be read becomes 0.00, so check the preview totals.
For each transaction the writer emits a TRNS line against Checking and an SPL line with the negated amount against the Category account, then closes the block with ENDTRNS.
The result is offered as a .iif download and as text you can copy.
CSV
Date,Description,Amount,Category
2026-05-03,Cloud hosting,-39.99,SoftwareIIF
!TRNS TRNSTYPE DATE ACCNT NAME AMOUNT DOCNUM MEMO
!SPL TRNSTYPE DATE ACCNT NAME AMOUNT DOCNUM MEMO
!ENDTRNS
TRNS CHECK 05/03/2026 Checking Cloud hosting -39.99 1
SPL CHECK 05/03/2026 Software Cloud hosting 39.99 1
ENDTRNSCan I import the IIF into QuickBooks Online?
No. QuickBooks Online dropped IIF support. For Online, upload the CSV directly in Banking → Upload transactions. IIF is only for QuickBooks Desktop.
Why is the bank account called Checking?
IIF needs a named account on every TRNS line and the CSV does not say which account it came from. Checking is a safe default that most company files already have. Rename it in the file, or let QuickBooks create it and merge it with your real bank account afterwards.
Does the converter create vendors or customers?
The description goes in the NAME column, and QuickBooks will offer to add unknown names as vendors or customers during import. Decline that prompt if you only want the bank activity.
Can IIF carry invoices, bills, or journal entries from my CSV?
Not through this tool. It writes plain bank deposits and checks. Invoices and bills need additional columns such as customer terms and item lines, and are better entered through QuickBooks' own import wizards.
For more background on data formats and conversion workflows, read our format guides.