Glossary

What Is an IIF File?

An IIF file, short for Intuit Interchange Format, is a plain text table that QuickBooks Desktop reads and writes. Columns are separated by tab characters, and every block of data opens with a header row whose first cell begins with an exclamation mark, such as !TRNS. It is worth saying at the top what IIF is not. QBO, QFX and OFX all belong to one family of banking files, written in tags and handed to you by a bank for a single account. IIF belongs to no part of that family. It is the accounting program talking to its own data: the route lists and transactions take in and out of QuickBooks Desktop, whether or not a bank was ever involved.

TL;DR

An IIF file is QuickBooks Desktop's own tabular text format, identified by its exclamation-marked section headers rather than by its extension. Read the TRNS and SPL rows as one transaction and the amounts stop looking doubled.

3
header keywords bound a single transaction in an IIF file: !TRNS opens it, !SPL carries the parts it is split into, !ENDTRNS closes it

The Anatomy of an IIF File

An IIF file is organised in sections, and each section declares itself. The header row starts with an exclamation mark and then spells out its own columns - !TRNS, then DATE, ACCNT, NAME, AMOUNT, MEMO and whatever else that export carries. The rows below repeat the same keyword without the mark and fill those columns in the same order. Because the column names travel with the data, a reader matches them by name rather than by position, so two exports of the same books can list their columns in different orders and both remain valid.
Transactions are only part of what the grammar holds. The same shape of header carries lists as well: !ACCNT for the chart of accounts, !CUST for customers, !VEND for vendors, and further keywords for items and classes. A single file can put several of these sections one after another, which is why one IIF export can describe things a bank statement never would.

The extension tells you very little. The contents are ordinary tab-separated text, so IIF exports are routinely saved, emailed and archived as .txt, and a file named .iif is no guarantee either. What identifies the format is the header rows in the opening lines, read from the inside of the file rather than from the three letters after the dot.

Why the Amounts Look Doubled

A transaction in IIF is not one row. The TRNS row carries the date, the account the money moved through and the full amount. Each SPL row underneath describes one part of that same transaction, with its own account and memo and its own share of the money, written with the sign reversed. The ENDTRNS row closes the block, and the next transaction starts again with TRNS.
The reversal is not a mistake in the export. It is how double entry is expressed in a flat table: the whole is stated once, the parts are stated against it, and inside one block they balance out. The practical consequence catches people out. Total an AMOUNT column straight from the raw file and the figure collapses towards nothing, because you have added every sum to its own mirror image. Reading IIF correctly means folding each block into one transaction first, then adding up.

Amounts in an IIF file are bare numbers. No currency travels with them, because the format assumes it is being read back into the same company file it came out of, where the currency is already settled. That assumption is behind most of the format's quirks: it was designed for moving data between one QuickBooks and another, not for describing a transaction to the world at large.

IIF Next to QBO, QFX and OFX

Direction is the clearest way to tell them apart. A QBO or QFX file travels from a bank towards your accounting program and describes what happened on one account over a period. An IIF file travels out of QuickBooks Desktop, and it may go back into a QuickBooks Desktop as well - a different company file, a rebuilt one, a client's copy. The bank files speak in nested tags inherited from the OFX specification; IIF speaks in rows and tab stops, and can carry names and accounts as easily as money. They also age differently. The banking formats are maintained as an open specification, while IIF stays what it always was: the desktop program's own way of writing its records to a file.

IIF is imported without much of a safety net, which is why Intuit's own guidance is cautious. Its help page on IIF import advises against the option Import it for me. I'll fix it later, on the grounds that some of the information may end up incorrect or incomplete in your books, and notes that this option also requires switching to single user mode. QuickBooks Desktop 2019 introduced a rebuilt Import IIF Tool, so the version you are importing into changes how much checking happens on the way in.

Reading an IIF File Outside QuickBooks

Any text editor will show you an IIF file, since it is text. What it shows is the raw sections: exclamation marks in the first column, split rows carrying mirrored signs, and one long line per record wherever the tab stops are not honoured. A converter is what turns that into something a spreadsheet can work with - one row per transaction, the split parts folded in, dates and amounts in columns of their own.

What you'll need
  • IIF to CSV Converter: reads an IIF export on your PC and writes it out as CSV, QBO or PDF
  • A Windows PC, version 10 or 11
  • The export QuickBooks Desktop produced, named .iif or .txt

Ce que vous apprendrez

Related Guides

Related Terms