Turn a receipt into spreadsheet rows, one per purchase.
This file is sent to a server so a vision model can read it, then discarded. Nothing is stored and nothing is used to train a model. If that is wrong for a particular receipt, don't use this one.
One or a pile — up to 20 at once. JPG, PNG, WebP, HEIC, AVIF and PDF up to 8MB each; larger images are scaled down on your device before anything is sent.
or
Reading the receipt…
This tool sends your receipt to a server so a model can read it. It is held in memory for the second or two that takes, never written to disk, and never kept afterwards. No receipt sent here is used to train a model. Everything after the reading — the editing, the checks and the export — happens on your device.
Reads a photo, screenshot or PDF of a receipt — or up to twenty at once — and gives you a CSV: one row per purchase, with the source file, the shop, the date, the order number and the currency repeated on each row so the file makes sense on its own. Open it in Excel, Google Sheets, Numbers or anything that reads a comma-separated file.
The receipt-level figures — subtotal, discount, tax, tip, fees and total — sit on the **first row only** and are blank below it. Most exporters repeat them down every line, which quietly makes summing the total column give the receipt's total multiplied by the number of items. Blank after the first row means a plain SUM over the column is correct, and stays correct when several receipts end up in the same sheet.
The file is built from the fields on screen at the moment you click download, so a correction you make is a correction in the CSV.
Drop the whole envelope at once and download one file. The totals column sums to what the trip cost, because each receipt contributes its total exactly once.
Line items, unit prices and tax as columns rather than as a photograph you keep re-opening. Categorise in the spreadsheet, where sorting and filtering already work.
One row per item means you can pivot by product rather than only by shop — which is the difference between knowing what you spent and knowing what you spent it on.
A column of items and prices is something you can put in a shared sheet and let people tick, instead of passing one phone photograph round a table.
Thermal receipts are unreadable within a year or two. A CSV keeps the price, the date and the item list legible for as long as the warranty runs.
Drop a photo, screenshot or PDF, or choose one from your device. JPG, PNG, WebP, HEIC, AVIF and PDF up to 8MB. Get the whole slip in frame, including the total at the bottom.
Every field is editable, and anything that does not add up is marked with the figure it was expecting. Fix a number and the checks re-run as you type.
A faded line can be missed and a promotional line can be read as a purchase. Remove what should not be there, add what should, and the totals check updates.
One row per purchase. Open it in any spreadsheet — the file is plain UTF-8 text with quoting where it is needed, so nothing has to be imported through a wizard.
Merchant, address, date, time, order number, payment method, card ending and currency — repeated on every row so a row means something on its own — then the item, the text as printed, quantity, unit price and line total. The receipt totals come last: subtotal, discount, tax, tip, fees, total.
So that adding up the total column gives the receipt's total rather than the total times the number of items. Repeating them down every row is the more obvious thing to do and it is wrong in a way nobody notices until the figures have already been used.
CSV opens directly in Excel, Google Sheets, Numbers and LibreOffice, and unlike .xlsx it can be read by anything. A native Excel download may come later; this is the format that works everywhere today.
It is quoted, and a quote inside it is doubled — RFC 4180, which is what every spreadsheet expects. Nothing is stripped to make the file simpler, because a merchant silently renamed on the way out is worse than a quoted field.
Yes — up to twenty in one drop, and they come out as a single CSV with a `source_file` column saying which receipt each row came from. Because each receipt's totals appear on its own first row and nowhere else, a plain SUM down the total column of a twenty-receipt file gives what the twenty cost.
Not if your Excel is set to a comma list separator, which the English-language versions are. Where the separator is a semicolon — most of continental Europe — Excel puts the whole row in column A, and the fix is Data › From Text/CSV rather than double-clicking the file. Google Sheets and Numbers detect it either way.