How to convert an Excel bank statement to an IIF file for QuickBooks Desktop
QuickBooks Desktop will not import an .xlsx file of bank transactions. Its own import format is IIF (Intuit Interchange Format), which Intuit describes as ASCII text, TSV (Tab-Separated Value) files that QuickBooks Desktop uses to import or export lists or transactions
. Converting a spreadsheet to one is mostly mechanical — except for the dates, which is where this quietly goes wrong.
🔒 Convert your Excel file to IIF now — free, runs in your browser, the spreadsheet is never uploaded.
The thing that actually breaks: Excel does not store dates as dates
Excel stores 1 April 2026 as the number 46113. The date you see on screen is a display format applied to that number, and it is not part of the cell's value.
That is why the usual advice — save the sheet as CSV, then hand-build the IIF in a text editor — has a trap in it. Depending on how the column was formatted, what comes out is either a column of five-digit serial numbers, or a date silently re-written into your machine's locale order, so 03/04/2026 means April in London and March in Chicago. Neither is refused by QuickBooks. Both post real money to the wrong month.
QBOKit reads the .xlsx directly rather than going via CSV, so it can see both halves: the number and the format the cell was given. Where the format is a date format, the serial is resolved and written out unambiguously. Two details that matter:
- Excel's 1900 leap-year bug is absorbed, not passed on. Excel believes 29 February 1900 existed. Our reader accounts for the shift, which is checked by a test pinning serial 59 to 28 Feb 1900 and serial 61 to 1 March 1900.
- IIF dates come out
M/D/YYYYregardless of where your statement came from, because that is the order QuickBooks Desktop expects in an IIF. Your European sheet is read as European and written as American — that conversion is the whole job.
Check the preview against your statement anyway. The date column is the one thing worth ten seconds of your attention, and it is right at the top of the preview for that reason.
IIF is not only for journal entries
Nearly every page written about Excel-to-IIF is about importing journal entries, which leaves the impression that a bank statement has to be forced into one. It does not. Intuit's own list of what an IIF can import includes Checks, Deposits, Credit card transactions and Account transfers of funds. A bank statement is in documented scope.
So QBOKit writes your rows as what they are: money out of the account becomes a CHECK, money in becomes a DEPOSIT, each as a balanced double entry against a second account you name.
!TRNS TRNSTYPE DATE ACCNT NAME CLASS AMOUNT DOCNUM MEMO
!SPL TRNSTYPE DATE ACCNT NAME CLASS AMOUNT DOCNUM MEMO
!ENDTRNS
TRNS CHECK 04/01/2026 Business Checking -82.40 DIRECT DEBIT ACME LTD
SPL CHECK 04/01/2026 Uncategorized Expense 82.40 DIRECT DEBIT ACME LTD
ENDTRNS
That header row is Intuit's own, and the field-by-field explanation — including why the statement text goes in MEMO and never in NAME — is in the CSV to IIF guide. It applies identically here.
The steps
- Have the transactions on the first sheet. Only the first sheet of a workbook is read — see the limits below. A tab per month means one conversion per tab.
- Drop the
.xlsxinto the converter. It finds the header row and guesses the date, description and amount columns. Separate debit and credit columns are merged into one signed amount. - Check the preview, dates first.
- Pick .IIF as the output.
- Type both account names exactly as QuickBooks spells them — the bank account, and a second account for the other side of each entry. There is no default and nothing is written without them, because a misspelled account name is not refused, it silently creates a new account.
- Import it:
File → Utilities → Import → IIF Files. On QuickBooks 2019 and later a refused batch comes back as its own.IIFfile of the failed rows with the errors listed, so a failure is itemised rather than bare.
Before you import: IIF has no duplicate protection
Nothing in an IIF file tells QuickBooks it has seen a transaction before. A .QBO Web Connect file gives every transaction a FITID and QuickBooks skips ids it already holds. IIF has no such field, so importing January–March and then February–April lands February and March twice with no warning.
Import one period at a time and note the last date you imported. If your Desktop version still accepts Web Connect, convert the spreadsheet to QBO instead and keep the duplicate protection.
The limits, stated up front
- Only the first sheet is read. The converter names the sheet it used and tells you how many others the workbook has, so a year hiding on twelve tabs cannot look like a clean conversion.
- Old
.xlsfiles are not accepted — only the modern.xlsx. In Excel, Save As and pick Excel Workbook (.xlsx), or export CSV and use the CSV route. - A very old browser cannot unzip a spreadsheet. An
.xlsxis a ZIP, and the unzipping is done by the browser itself (no library is downloaded, nothing is sent anywhere). If yours is too old to do it the converter says so and points you at CSV. - QuickBooks Online does not import IIF at all. On QBO, upload a .QBO file or a cleaned CSV.
What we cannot claim
Nobody has yet imported one of our IIF files into a real QuickBooks Desktop install, because we do not have one. What we can say precisely: the Excel-to-IIF path is checked end to end by its own test suite — 38 assertions over two real workbooks, covering the serial-number dates, one balanced double entry per transaction, CHECK versus DEPOSIT matching the sign, and the exact nine tab-separated fields Intuit documents. Follows Intuit's documented format
is a smaller claim than QuickBooks accepted it
, and we would rather make the smaller one.
Intuit also states plainly that it doesn't offer technical support for the import and export of IIF files
. That is a real cost of this route. If a file of ours is refused, send us what QuickBooks said — the error text is the most useful thing anyone could give us.
Convert my Excel file to IIF — free
Or see it work on a sample statement — no file of your own needed.
Sources
- IIF Overview: import kit, sample files, and headers — Intuit. The definition of an IIF file and the documented header rows.
- Export, import, and edit IIF files — Intuit. The list of transaction types an IIF can import, including checks, deposits, credit card transactions and transfers.
- Improved IIF import in QuickBooks 2019 and later — Intuit. The failed-transactions file, and the note that Intuit does not support IIF import technically.
Related
- How to convert a bank CSV to IIF — the field-by-field walk through an IIF file and the account-name trap.
- How to convert an Excel bank statement to QBO
- How to convert a PDF bank statement to IIF
- QuickBooks Desktop bank feeds discontinued — what still works