Fixing IIF Import Errors in QuickBooks Desktop: Causes and Fixes
An IIF import error in QuickBooks Desktop usually traces back to file structure or data formatting. Here is how to find the fault and fix it.
IIF is the oldest import route into QuickBooks Desktop. The files are simple text, but the format is unforgiving, and a single stray character can stop the whole load. The good news: almost every IIF import error points to something you can find and fix yourself.
What does a valid IIF file look like?
An IIF file is plain, tab-delimited text with the .iif extension. You can open one in Notepad or Excel to see what is inside. List imports start with a header row whose first cell begins with an exclamation mark, followed by column keywords. Data rows must follow that column order exactly.
Transaction files are stricter still: each entry is a block of lines that starts with TRNS, continues with SPL, and closes with an ENDTRANS line. A missing ENDTRNS is one of the most common failures we see.
Why does an IIF import fail?
Most failures trace back to a short list of causes:
- The file is a CSV renamed to .iif. Renaming does not convert commas to tabs.
- A header row is missing, duplicated, or out of order.
- A transaction block is missing its ENDTRANS line.
- Dates or amounts are formatted for a spreadsheet, not for QuickBooks.
- Account, customer, or item names do not match what is already in the company file.
- A name runs past the field’s length limit or contains characters the field rejects.
Back up before you import again
IIF imports cannot be reversed in one step. QuickBooks has no command that undoes an import, so a bad load means manual cleanup. The format also skips several checks the program applies when you type a transaction by hand, and that is how inconsistent data slips in. Take a full backup first and keep it until the import has been verified.
How do you check the file itself?
- Open the .iif in Notepad or another plain text editor. Word processors add formatting and will corrupt the file.
- Confirm the fields are separated by tab characters. If you see commas, the file is a CSV in disguise.
- Export one of your lists to IIF from the File menu, then copy that header row. It shows the exact layout your edition expects.
- Check that every transaction block ends with ENDTRANS before the next TRNS begins.
Clean up the data QuickBooks rejects
- Write dates as MM/DD/YYYY.
- Leave amounts as plain numbers: no currency symbol, no thousands separator, and a minus sign where the entry is negative.
- Match account names to your chart exactly, including the colons that mark subaccounts.
- Trim names that run long, and strip leading and trailing spaces.
- Be careful with Excel. It rewrites dates and drops leading zeros, so set those columns to text before saving as tab-delimited.
How do you find the one bad line?
QuickBooks often names a line number when it rejects a file. When it does not, cut the file down. Import the first ten or twenty entries; if they land, add the next batch. This narrows the failure fast, and the offending row is usually an obvious typo once you finally see it.
What can you do after a partial import?
A half-finished import leaves duplicates or incomplete entries behind. If you took a backup, restore it and fix the file before trying again. If you did not, the cleanup is manual: delete the duplicates, then re-import the corrected data.
If the company file misbehaves afterward, treat that as damage rather than bad luck. Our QuickBooks error code repair service handles exactly this kind of fallout.
Start with a two-line test. Copy the header from a QuickBooks export, add one real row, and import it into a copy of your company file. When that lands cleanly, run the full set with confidence.