How to Export Expenses to a Books-Ready CSV
A CSV is the universal handoff between you, your accountant, and every bookkeeping tool ever made. But a messy export creates more work than it saves. Here's what a clean, books-ready CSV looks like, and how to produce one without retyping a single receipt.
Why CSV is still the safest format
Spreadsheets change, apps come and go, but the humble comma-separated file opens everywhere: Excel, Google Sheets, QuickBooks, Xero, Wave, FreshBooks, and your accountant's decade-old desktop software. Because it's plain text, there's no lock-in and nothing to corrupt. When you own your data as CSV, you can move it anywhere and re-import it years later. That portability is exactly why it remains the default for expense and bookkeeping handoffs.
The columns a books-ready file needs
A CSV that imports cleanly the first time has a predictable set of columns. At minimum, include:
- Date — the transaction date, in a consistent format (ISO YYYY-MM-DD is safest and sorts correctly).
- Merchant — who you paid, so lines are recognizable at a glance.
- Amount — the total, as a plain number with no currency symbol.
- Tax — sales tax or VAT/GST broken out separately, since your books track it apart from the net.
- Category — the expense account (meals, travel, software, supplies) that determines where it lands on your return.
- Notes — optional context, like the client or trip a cost belongs to.
Keep one row per receipt, one header row at the top, and no blank lines or merged cells. That's the whole recipe. Bookkeeping software maps those columns to its own fields during import, so matching these names saves you the manual mapping step.
Format details that break imports
Most failed imports come down to a few avoidable mistakes:
- Currency symbols in amounts. "$42.00" is text; "42.00" is a number. Strip the symbol and keep a separate currency column if you deal in more than one.
- Inconsistent dates. Mixing 07/30/2026 and 30-Jul-26 confuses parsers. Pick one format and stick to it.
- Commas inside fields. A merchant named "Smith, Jones & Co" needs quotes around it so the comma isn't read as a new column. Any tool worth using quotes these automatically.
- Encoding. Save as UTF-8 so accented merchant names and the £ or € symbol survive the trip.
If your file honors those rules, it will drop into your accounting software without a fight.
The fast way: skip the retyping
The slow path is copying numbers off a stack of receipts into a spreadsheet by hand, which is where most errors creep in. The faster path is to capture each receipt as you go and let it become a row automatically:
- Photograph each receipt when you get it. Expense Rabbit reads the merchant, date, total, tax, and line items.
- It auto-categorizes each one with a confidence score, so you only glance at the uncertain ones.
- Because your iPhone and the web share one synced account, the data is the same wherever you open it.
- At filing time, export a single books-ready CSV with the columns above already in place.
Instead of a shoebox and an afternoon of data entry, you hand your accountant one clean file. Every row traces back to a scanned receipt, so if anything is ever questioned, the source document is a tap away.
Before you send it off
Give the file a quick sanity check: open it in a spreadsheet, confirm the header row is intact, sort by date to spot anything out of range, and total the Amount column to make sure it matches what you expect. Two minutes of review beats a back-and-forth with your bookkeeper later. Then export, attach, and you're done, no reformatting required.
Scan your first receipt in seconds
Expense Rabbit reads any receipt and turns it into books-ready data — on iPhone or the web.