Month-end expenses were death by data entry. Gemini reads the receipt and I just confirm.
The workflow
- Photograph the receipt
- Ask Gemini for vendor, date, total and category
- Paste the row into your sheet
- Confirm and file
Result: Expense rows without the manual typing.
The prompt
Read this receipt and output vendor, date, total, tax, and a likely expense category as one CSV row.A note on what follows. The workflow, the prompt and the result above come from the member. The notes below (why the prompt works, what to watch for, how to adapt it) were written with AI help.
Why this prompt works
One CSV row, named fields, in a fixed order. That is the entire design. I tried asking for "the details from this receipt" and got a friendly paragraph I then had to retype, which is slower than reading the receipt myself. Naming tax as its own field mattered more than I expected, because it will fold tax into the total if you let it, and then the numbers stop matching at month end. Category is the field I trust least and keep anyway, since correcting a wrong guess is faster than typing from nothing. I photograph receipts flat and in daylight now. Crumpled ones produce confident wrong totals rather than an error, which is the worst failure mode there is.
What to watch for
- Decimal separators. European receipts with a comma get read as thousands and a 12,50 lunch becomes 1250.
- It never refuses. A blurry total comes back as a clean number with no hedge attached.
- Multi-currency receipts lose the currency, since the field is not in the prompt. Add it if you travel.
- Tips and service charges get included or excluded inconsistently across receipts from the same restaurant.
How to adapt it
- Make it admit doubt:
If any field is unclear, output UNSURE for that field rather than guessing.This is the one I would not skip. - Add the fields your system needs:
Include currency and payment method as extra columns. - Pin your own categories, otherwise it invents them:
Category must be one of: travel, meals, software, office, other.
What good output looks like
A row I can paste straight into the sheet with no reformatting, and an UNSURE somewhere in the batch. A run of forty receipts with no UNSURE at all makes me suspicious rather than pleased, and I spot check five against the paper. Totals are the field I always verify. Vendor and date being slightly off costs me a minute, a wrong total costs me a reconciliation.