Taxes & Bookkeeping

Stop hand-typing into QuickBooks: how IIF and Xero CSV exports work

Small-business bookkeeping on a laptop

If your CPA uses QuickBooks Desktop, the year-end ritual probably involves you transcribing 200+ transactions by hand — or paying the CPA $200 to do the typing. Either way, the data is already on your phone. You just need to send it in a format their software accepts.

Dashboard showing income, expenses, and one-tap export buttons
Two file formats handle 95% of accounting software on the market.

Key takeaways

  • IIF (Intuit Interchange Format) is the no-API import route for QuickBooks Desktop.
  • CSV is the universal format — Xero, Wave, FreshBooks, Sage, ZipBooks, and even QuickBooks Online all accept it.
  • Sort transactions chronologically and sign amounts: positive for income, negative for expenses.
  • Embed your category in the export so it survives the import.
  • Pick one income source — paid invoices or bank imports — to avoid roughly 2× inflated revenue.

What belongs in the export

For the tax year you are sending:

  • Paid and partially-paid invoices as income transactions, dated to the service date (not the payment date).
  • Expenses with category and vendor description.
  • Bank-imported transactions (Chase, Wells Fargo, BoA, PayPal, etc.) with their type preserved.

Sort chronologically. Sign amounts positively for inflows, negatively for outflows. Always include a reference number — INV-1024, EXP-42, TX-1098 — so every row traces back to a source document if the CPA has a question.

The QuickBooks IIF format — old but reliable

IIF was Intuit's original interchange format. It is tab-separated text and looks ugly when you open it in Notepad. QuickBooks Desktop imports it directly.

A clean IIF declares the relevant accounts up top — Business Checking (bank), Sales (income), Business Expenses (expense), Owner Draw (equity). Each transaction is then a triplet: TRNS (the main entry), SPL (the offsetting split), ENDTRNS. This is exactly the structure QuickBooks expects.

Useful detail: put your category into the account name, like Business Expenses:Fuel/Vehicle. When your accountant imports, your categorization survives — and they can choose whether to keep your structure or remap to their chart of accounts.

The CSV — the universal format

The CSV is simpler. Six columns handle nearly every accounting package:

  • Date
  • Amount (signed)
  • Description
  • Reference
  • Payee
  • Category

This is the format Xero's bank statement import expects. Wave, FreshBooks, Sage, and QuickBooks Online all accept the same shape with minor column mapping.

The double-counting problem

Most service businesses record income twice without realizing it — once when an invoice is marked Paid, once when the deposit hits the bank import. Without protection, an export sums both and gross income inflates roughly 2×.

Before exporting, decide:

  • Paid invoices only — the safest default. Uses invoices, ignores bank-import income lines.
  • Bank transactions only — use this if you exclusively rely on bank imports for revenue.
  • Both — only when invoices were paid in cash you never deposited. Otherwise this is the path to an audit.

Expenses are always included regardless — the double-count question is income-specific.

A reality check on what the export does

Exports do not replace your accountant. They dramatically shorten the conversation. Instead of four hours of "what was this Home Depot charge for?" your CPA loads a categorized file in five minutes and uses it as the basis for the return.

Pair the export with a one-page Schedule C summary worksheet for a complete year-end packet. Many accountants knock the fee down when you hand them clean data — it is worth asking.

What your accountant actually needs in the export (and what breaks it)

An IIF or Xero CSV export fails at import far more often over formatting than over content. The three fields that break a bookkeeper's import are dates (use ISO or a single consistent MM/DD/YYYY — never mixed), the debit/credit sign convention, and account names that do not exist in their chart of accounts. Before exporting, agree on the chart of accounts first; an expense mapped to a category the IRS does not recognize on Schedule C just gets re-keyed by hand. Tradespeople should keep supporting records the export references — the IRS requires you keep records that support income and deductions, per IRS recordkeeping guidance. Materials, subcontractor labor (which may trigger 1099-NEC filing), and vehicle costs should each land in their own account, not a catch-all. Action: run a test import of 10 rows before sending the full file, and confirm the export's total credits equal total debits — a nonzero difference means a truncated or mis-signed column.

FAQ

Does QuickBooks Online accept IIF files?

No. QuickBooks Online dropped IIF support. Use a CSV through Banking → Upload from file instead. QBO will ask you to map columns the first time; subsequent imports remember the mapping.

What if my accountant uses Wave, FreshBooks, or Sage?

All three accept the generic CSV format. If yours does not, the CSV is also human-readable in Excel — your accountant can copy/paste rows manually as a fallback.

Will my expense categories survive the import?

In IIF, categories embed in the account name. In CSV, they live in a dedicated Category column. Whether the accounting software uses them as-is or remaps depends on its chart of accounts and your accountant's setup.

Should I export the calendar year or my fiscal year?

Sole proprietors filing Schedule C are on the calendar year by default. Export January 1 through December 31. Corporations and partnerships may use a different fiscal year — check with your CPA.

What date do I use for an invoice — service date or payment date?

For cash-basis taxpayers (most sole proprietors), use the payment date. For accrual-basis taxpayers, use the invoice date. If you are unsure which basis you file on, your prior return will say.

Comments (0)

Be the first to comment.

Leave a comment

Keep reading

AdRun a small business? Daily Invoice Maker handles invoicing, expenses & taxes on your desktop — try it free →