How to get receipts into QuickBooks, Xero, Wave, FreshBooks or Zoho Books
Snapstub 1.8 · iPhone“I have a month of receipts on my phone. I don’t want to type them into my accounting software one by one — can I just import a file?”
Yes. Each of these programs imports a CSV, but each wants a different one: its own column names, its own order, and its own rule for whether money spent is a positive or a negative number. A generic spreadsheet export usually fails on exactly those details. Snapstub writes the file in the layout the program you name has published.
The short version
- Scan the receipts (or bring them in from Photos, screenshots or emailed PDFs).
- Tap Export, choose CSV, and pick the date range and business.
- Set Made for to your software.
- Save the file, then upload it in your software’s import screen (links below).
The Made for layouts are part of the one-time unlock. Your first export is free as a Standard CSV — every field, for Numbers, Excel or Google Sheets — so you can see your data as a file before you pay.
QuickBooks Online
File: the 3-column bank-transactions layout — Date, Description, Amount, nothing else. Money spent is negative (-18.40), dates are YYYY-MM-DD, and there is no byte-order mark to confuse the column matcher.
Import: upload it to the bank or card account the receipts were paid from, and map the single Amount column. QuickBooks accepts up to 1,000 rows per upload — for a bigger year, export by quarter. Intuit’s article on the format.
Xero
File: Xero’s own bank-statement template, in its order — Date, Amount, Payee, Description, Reference. The merchant goes in Payee, which is what Xero’s bank rules and contact matching key on; the category goes in Description and your labels in Reference. Money spent is negative, UTF-8, comma-separated even in European locales.
Import: use Import a statement on the bank account. Xero’s article.
Wave
File: exactly three columns — Date, Description, Amount. Wave treats any extra column as a mapping error, so the minimal file is the right one. It is the same file as the QuickBooks one, byte for byte.
Import: upload it as a bank or credit-card statement. Wave’s article.
FreshBooks
File: Date, Merchant, Description, Amount, Category. This is the one layout that imports as expenses rather than as bank lines. FreshBooks only accepts negative amounts as expenses, so a refund or a $0 receipt in the file is skipped on their side — Snapstub still writes those rows, so nothing disappears from your copy. Categories FreshBooks doesn’t recognise land in “Uncategorized Expenses” rather than blocking the import.
Import: use the expenses import. FreshBooks’ article.
Zoho Books
File: the same 3-column file as QuickBooks and Wave, with a signed Amount column.
Import: import it as a bank statement and choose the amount option for a single column with negative values. Zoho’s article.
Where did the tax column go?
QuickBooks, Xero, Wave and Zoho import these files as bank lines, and bank lines are gross amounts — the software applies tax when you reconcile, as it does for a real bank feed. A tax column would not be read as tax, so none is written. The tax Snapstub read is still yours: it is in the Standard CSV and on the PDF report (subtotal before tax, tax, total — with TPS and TVQ split for Québec if you want).
Three things that trip people up
- Mixed currencies. A bank import assumes the account’s currency, so these layouts carry no currency column. Snapstub warns you when the selection mixes currencies; export each currency to its own account.
- Mileage is a separate file. A drive is not a bank transaction. Trips export as their own CSV or mileage report — how mileage works.
- Two businesses. Scope the export to one business so its receipts go to its books only — how that works.