This page is shown in English, the language your browser asks for.
This page's code did not start.
Opening index.html directly from a folder blocks JavaScript modules, so nothing will happen when you choose receipt or invoice photos. Serve the folder over http instead:
This opens as soon as you choose a file above.ready — disconnect from the internet and this still works.not available in this browser (everything else still works).needs https:// or localhost to cache for offline use.caching unavailable here, but nothing is uploaded either way.your files have gone nowhere. {total} files loaded, all of them this page's own. {platform}something contacted {hosts}, which this tool never does. Treat that as worth investigating. {platform}The page's own ad, measurement and donate-button scripts loaded from {hosts} host; not one of them was given a file or a byte of one.The page's own ad, measurement and donate-button scripts loaded from {hosts} hosts; not one of them was given a file or a byte of one.Something broke: {detail}. Reload the page to start over.Reading {count} file…Reading {count} files…Try an exampleBuilding an example…This browser could not build the example. Choose a file instead.
Receipt & Invoice Extractor — photos to a report you review
Read the photos, check the fields and crops, then email compressed images with each amount and the totals.
● Your photos are read on this device. Online rates are optional. You choose what to email or share.
The photographs are decoded and read on this device. The OCR engine and English language data come with the page, and no photograph or extracted field is uploaded for OCR. Manual exchange rates, copying the report and downloads are local too. Only pressing Get historical rate contacts Frankfurter with the two currency codes and the chosen date. That service sees the request and your IP address, but receives no image, amount, OCR text, filename or email address. Email and sharing are your next step: pressing those buttons hands the report, or the files you choose to share, to an app on your device. You choose the recipient, review what goes with it, and send it yourself.
✗ No processing upload
✗ No account
✓ Offline OCR
✓ Check every document
✓ Send through your own app
Live check:checking…
Offline:checking…
Open DevTools and watch Network while reading a photograph. The page may load its own OCR assets, but no request carries your picture, filename, merchant or amount. Once the page is cached, repeat with the network disconnected with manual rates. Press Get historical rate to see a request to api.frankfurter.dev containing only currency codes and the chosen date. Sending an email later uses your email app's connection.
How the privacy claim is verifiable
The OCR happens on your device. A photograph contains pixels rather than text, so reading it needs an OCR engine. This page carries Tesseract and English language data with it instead of handing the photograph to a server. The browser reads your chosen files in memory. Neither the photos nor their extracted fields are stored by this site. The engine and data are about 8 MB before delivery compression, cached with the tool. Their versions, source files and licences are listed alongside them.
A suggested amount still needs your eyes. A faded digit, a reflection or a subtotal near the bottom can produce a convincing wrong answer. Compare the merchant, date, reference, currency and total with the picture, correct them, and check that the whole document remains inside its crop. Only confirmed documents enter the totals, and every remaining document must be confirmed before email or attachment download opens. Changing a field, crop or rotation requires another check. A copied report or CSV can include unfinished rows, marked as needing review. Confirmation records your review; it is not an independent proof of the document's arithmetic.
Email is a handoff you control. Where file sharing is supported, Email with images opens the device's share sheet with compressed JPEG copies and the report. Choose your email app and review the recipient, body and attachments there. Otherwise, download the email file containing the report and every JPEG attachment. Compatible apps open it as a draft; others may need Forward or Resend. Nothing is sent by this page. Your email app and provider handle delivery under their own settings.
Outgoing pictures are cropped, compressed copies. Adjust each crop to keep the entire receipt or invoice. The page makes a suggested crop when it finds clear document edges; otherwise it keeps the full image. Review and adjust that suggestion. It makes JPEG copies up to 1600 pixels on their longest side and aims for about 350 KB per image. Check their previews and reported sizes before sending; the size target is not guaranteed. Your original photos are unchanged and are not attached. If your email app cannot use the email file, download the ZIP, extract it and attach its JPEG copies and CSV yourself.
Online exchange rates are optional. Manual rates keep the whole preparation process offline. Selecting Online does not send a request by itself: press Get historical rate for that document. This sends only the source currency, final currency and chosen date to api.frankfurter.dev, with no credentials or referrer. Frankfurter can see your IP address and request. The returned rate and observation date appear beside the document and in the report. These are reference rates and may differ from a bank or card charge. If the service cannot supply a rate, use a manual rate; the page never silently uses today's rate.
The report belongs to this tab until you take it away. There is no account or document history here. Keep the page open while reviewing, and copy the report or save the CSV before leaving. Closing or reloading the page loses the in-memory batch. A report you copy, download or hand to another app remains wherever you put it.
What the page's other scripts are given. The site's ad, measurement and donate-button scripts load as on the other tools. They are not handed photographs, OCR text, filenames, merchant names, amounts or document counts. The code that reads the photos and builds the report is served from this site and listed in the repository.
Reading works offline; delivery depends on the app. Wait for the page's Offline line to say it is ready, then disconnect and read another photo. The cached OCR engine, review form, totals, copying, JPEG preparation, manual conversion and downloads still work. Online rate lookup requires a connection. Your email app may save a draft while offline; actually sending it requires whatever connection that app uses.
Check it yourself. None of the above has to be taken on trust. This page is generated from the templates and config in the repository by a build script you can read and run yourself, and the result is committed to the dist branch — so you can diff what is served against what a build of the sources produces:
The files worth reading first are config/site.toml for the Content-Security-Policy, src/ocr.js for the local OCR wrapper, src/main.js for review and the email/share handoffs, src/attachments.js for JPEG copies, src/email.js for the email file, src/fx.js for conversion and optional historical-rate requests, and vendor/ for the engine and its licences. The report and attachments are assembled in the tab; the visitor chooses an email app or downloads an email file, and sends it themselves.
If your employer's security software warns about an upload. It is watching the moment a file is chosen in a browser, and it cannot know whether the page intends to send it — so it warns on the choosing. Nothing is sent here: open your browser's developer tools, switch to Network, and choose a file. There is no request carrying it, and no request at all beyond the page's own local preview. That is the same check anyone in your IT team can run in half a minute.
1 Add receipt or invoice pictures
One document per picture. Add up to 20 JPEG, PNG, WebP or AVIF images, 20 MB each. English text is read on this device, using an OCR engine included with the page. AVIF pictures use your browser’s decoder.
Keep the whole document in view, upright and in good light. For HEIC pictures, use HEIC to JPG first. PDFs and handwritten receipts are not supported.
2 Check each document
Check the crop and make sure the attachment is readable. OCR can misread digits or pick the wrong total: compare each suggestion with the picture, correct the fields, choose the final email currency and review its exchange rate, then tick “I checked this document”. Each picture counts as one document; adding it twice counts it twice.
OCR, cropping and manual conversion stay on this device. Historical rate lookup is optional and starts only when you press “Get historical rate”. It sends the two currency codes and receipt date to Frankfurter, which also sees your IP address. Your pictures, merchants, amounts and receipt numbers stay on this device.
Custom final currency code The default is the most common document currency; ties use the first one encountered. A currency you choose manually stays selected.
Choose one final currency for the email grand total. Every document uses this choice; changing it here or on a document updates the whole batch and clears rates and confirmations.
Your pictures and editable details will appear here.
3 Totals and email
Totals include checked documents only. Original amounts remain grouped by currency; a bare $ does not tell us which dollar you mean. Each checked document also contributes its converted amount to one grand total in your final email currency. Converted amounts are rounded individually to two decimal places.
Every email export includes the cropped, compressed JPEG copies. “Email with images” opens your device’s share sheet when it supports files; choose your email app and enter the recipient there. Otherwise it downloads an email file containing the report and attached images. Open that .eml file in a compatible email app to compose, forward or resend it; draft support varies by app. The recipient above is used in the email file. You review and send the email yourself.
The ZIP contains the prepared JPEG images and CSV for attaching manually. Pictures are resized to at most 1,600 pixels on the longest edge, with a target of 350 KB each; actual size is shown below each preview. Check small print before sending. Originals stay unchanged, and processing stays on this device.
Drag the crop edges, or use the pixel fields. With the crop focused, arrow keys move it; Alt + arrows resize it and Shift makes larger steps. Keep every document edge and its total inside the crop.
Select the attachment preview to check it at full size. Changing the crop or rotation requires checking the document again.
Text read from this picture
NORTH STREET CAFERECEIPT R-1042Date: 2026-10-04Coffee and lunch CAD 21.50Tax CAD 2.80TOTAL CAD 24.30Thank you
MAPLE OFFICE SUPPLIESINVOICE INV-208Date: 2026-10-03Paper CAD 40.00Tax CAD 5.20AMOUNT DUE CAD 45.20
Photos stay on this device during processing. {total} resources loaded; optional historical rates may contact Frankfurter. {platform}Unexpected connections were observed: {hosts}. {platform}ready — OCR, manual conversion and downloads work offline; online rate lookup needs a connection.Choose one valid three-letter final email currency for the batch.Enter the receipt’s conversion date as a complete calendar date. Historical lookup requires today or earlier; ambiguous printed dates need your review.Enter a positive exchange rate with a decimal point and up to 12 decimal places.Get a historical rate for the current currencies and date, or choose a manual rate.This converted amount exceeds the supported range. Check the amount and rate.1 {base} = {rate} {quote}Enter the amount of {quote} for 1 {base}.Choose the document and final email currencies first.The currencies match. Rate 1 is applied on this device; no lookup is needed.Manual rate. Conversion date: {date}. Check it against your source before confirming.Getting the historical reference rate…Frankfurter reference rate dated {date}; requested receipt date {requested}. Review it before confirming.The historical rate could not be retrieved or verified. Enter a manual rate, or try again.No rate is available for this currency pair and date. Enter a manual rate.The rate request timed out. Enter a manual rate, or try again.Rate request cancelled.Converted document value: {amount} {currency}A reviewed conversion is needed before this document enters the grand total.{amount} {currency}Sum of {checked} checked documents, rounded individually to two decimal places; {review} still need review.Final email currency: {currency}Exchange rate: 1 {base} = {rate} {quote}Rate source: manual, conversion date {date}.Rate source: Frankfurter reference rate dated {date}; requested receipt date {requested}.Rate source: same currency, fixed rate 1; no online request.Grand total: {amount} {currency} across {count} checked documents; documents in batch: {documents}.Conversion still needs review.Requested conversion dateExchange rateRate sourceRate date usedFinal email currencyConverted valueManualFrankfurter referenceSame currencyDocument countChecked document countGrand totalWaiting to read this picture.Reading {name} ({percent}%).Preparing the local OCR engine for {name}.Read {count} pictures. Check each document before emailing.This picture could not be read. You can enter the details yourself or try reading it again.A total was suggested. Check every field against the picture.No clear document total was found. Enter it from the picture.More than one possible total was found. Enter the correct total from the picture.Reading stopped. Enter the details yourself or choose Read again.Wait for the current reading to finish, or stop it first.Add up to 20 pictures. Remove a document to make room for another.{name} is not a supported JPEG, PNG, WebP or AVIF picture.{name} is larger than 20 MB. Use a smaller picture.{name} could not be opened as a picture. Try exporting it as JPEG or PNG.Document cropFull picture for adjusting the document cropA crop was suggested from the document edges. Check it and adjust if needed.No clear document edges were found. The whole picture is selected; adjust the crop if needed.Your crop is selected. Check the prepared attachment before confirming.Preparing the cropped JPEG attachment…{width} × {height} px · {size} KB JPEG (original {original} KB).This image remains above the 350 KB target to keep it readable.The attachment could not be prepared. Try Suggest crop or use a different picture. Email export needs a prepared JPEG for every document.Wait for the cropped JPEG attachment to finish before checking this document.Image attachment: {name}Attachments: {count} cropped JPEGs, {size} KB in total.Enter a valid total with up to two decimal places before checking this document.Enter the three-letter currency code printed on the document before checking it.Checked against the picture.Needs reviewCurrency not specified{currency}: {amount} across {count} checked documentsReceipt and invoice summaryDocuments: {count}; checked: {checked}; need review: {review}.{number}. {name}Merchant / supplier: {value}Date: {value}Receipt / invoice number: {value}Value: {currency} {amount}Not enteredOriginal totals by currency (checked documents only):No checked totals yet.These totals exceed the supported range. Use smaller batches before emailing.Check every document’s fields, conversion rate and prepared attachment before emailing.Enter one valid email address, or leave the recipient blank. The subject must stay on one line.Email file downloaded with {count} cropped JPEG attachments and the report. Open it in your email app; compose, forward or resend as supported.The email file could not be created. Download the images and CSV, then attach the images in your email app.Downloaded {count} cropped JPEGs and the CSV in one ZIP. Extract it to attach the JPEGs to your email.The ZIP could not be created. Save the JPEGs from their previews and download the CSV separately.Report copied.Copy was unavailable. The report is selected above; copy it using your device’s copy command.Sharing was unavailable. Use Download email file, or download the ZIP and attach its JPEG images manually.The cropped JPEG images and report were handed to the share sheet. Review the attachments and complete sending in the email app you selected.receipt-invoice-email.emlreceipt-invoice-images.zipreceipt-invoice-summary.csvDocumentMerchant / supplierDateReceipt / invoice numberCurrencyTotalCheckedYesNo
Did this do the job?
What went wrong?
Thank you — that helps.
Only the answer is sent, and only when you press a button. Never your file, its name, or anything about it.
# Receipt & Invoice Extractor — photos to a report you review
Read the photos, check the fields and crops, then email compressed images with each amount and the totals.
> Read receipt and invoice photos locally, review crops and amounts, then convert each document into one email currency using manual or historical online rates. Email compressed images, individual values and a grand total.
Photos are read locally. Optional historical-rate requests send only currencies and the chosen date to Frankfurter. Email and sharing are explicit handoffs to an app the visitor chooses.
## Your photos are **read on this device**. Online rates are optional. You choose what to email or share.
The photographs are decoded and read on this device. The OCR engine and English language data come with the page, and no photograph or extracted field is uploaded for OCR. Manual exchange rates, copying the report and downloads are local too. Only pressing Get historical rate contacts [Frankfurter](https://frankfurter.dev/) with the two currency codes and the chosen date. That service sees the request and your IP address, but receives no image, amount, OCR text, filename or email address. Email and sharing are your next step: pressing those buttons hands the report, or the files you choose to share, to an app on your device. You choose the recipient, review what goes with it, and send it yourself.
- ✗ No processing upload
- ✗ No account
- ✓ Offline OCR
- ✓ Check every document
- ✓ Send through your own app
## How to extract receipt and invoice details from photos
1. **Choose clear photos.** Add up to 20 JPEG, PNG, WebP or AVIF pictures, each at most 20 MB. Use one receipt or invoice per picture. English printed text is the supported OCR language. Photograph the whole document in even light, with the text upright and sharp.
2. **Read, crop and compare.** Run OCR, then inspect each photo beside its suggested fields and raw text. Rotate a sideways image and read it again if needed. Adjust the crop so all document edges and text remain inside it, then reread that crop. Correct the merchant, date, reference, currency and total. A merchant or reference can stay blank when it cannot be read reliably. In particular, distinguish the final total from a subtotal, discount, cash tendered, change, tax amount or remaining balance.
3. **Confirm each document.** Check the fields, crop and conversion. Choose the currency printed on the document, then one final email currency shared by every document. Enter each exchange rate manually, or choose Online and press Get historical rate after checking the receipt date. The direction is shown as one unit of the document currency in the final currency. Same-currency documents use a rate of one. Only confirmed converted amounts enter the grand total. Remove duplicate photos before counting a receipt twice.
4. **Take the report into your app.** Check the prepared JPEG previews and sizes. Use Email with images to choose your email app where supported, or download the email file with the report and JPEG attachments. Review and send the message yourself. If your app cannot open the email file, download and extract the ZIP, then attach its images and CSV in a new message.
## The longer version
[Extract receipt and invoice details from photos](https://abox.tools/guides/extract-receipts-and-invoices/): How to check receipt OCR and crops, choose one email currency and manual or historical rates, then email compressed images with each converted value, the document count and a grand total.
## Also in the box
- [Images to PDF](https://abox.tools/images-to-pdf/): Put your pictures into one document.
- [Document Scanner](https://abox.tools/document-scanner/): Photograph the page. Get back something that looks scanned.
- [Extract Audio from Video](https://abox.tools/extract-audio-from-video/): Drop a video in and take the sound out of it. The picture is never decoded, and nothing is uploaded.
- [Audio Trimmer](https://abox.tools/trim-audio/): Mark the parts worth keeping as it plays. Get them back as one file, cut where you said.
## Questions
### Will it read every receipt or invoice correctly?
No. OCR can mistake a digit or miss faint printing, tiny text or a stylized business logo. The parser avoids discount and tendered-total labels, but it cannot use a label OCR did not read. Merchant and reference fields can stay blank when there is no reliable candidate. Compare every suggestion with the photo and confirm each document yourself before exporting it. This tool does not extract line items or prove that an invoice's arithmetic is correct.
### Can one picture contain several receipts?
Use one receipt or invoice per picture. The tool treats each image as one document and does not split a receipt collection or template sheet. Add a separate picture or crop for each document, with its identifying details and final amount visible. Otherwise text from different receipts can be mixed into one suggestion.
### How are dates and currency symbols interpreted?
The document date stays as printed. For an online exchange rate, check it and choose the date in the separate conversion-date field; a date such as 24/09/2018 is not automatically converted there. A pound sign suggests GBP. A dollar sign alone leaves the currency for you to choose, because it can mean USD, CAD, AUD or another dollar currency. Check every suggested code against the document.
### Which files and languages can it read?
JPEG, PNG, WebP and AVIF photographs, up to 20 in a batch and 20 MB per file. The included OCR model reads English printed text. Other scripts, handwriting, PDFs and HEIC files are not supported inputs here. For an iPhone HEIC photo, first make a JPEG with the device's photo app or the HEIC converter on this site.
### What do the count and totals mean?
Each photo counts as one document. Every document shows its original amount and its converted value in the same final email currency. The grand total adds the checked converted values, each rounded to two decimal places, and the report also keeps the original currency totals. Email and attachment downloads require every document to be checked. Duplicate photos count twice unless you remove one.
### Does the email button send anything automatically?
No. Where supported, it offers the report and compressed JPEG copies through the device's share sheet; choose your email app there. Otherwise it downloads an email file containing the report and attachments. Review the recipient, contents and attachments, then send it yourself. The page cannot tell whether your email app accepted them or whether you eventually sent the message.
### Are the cropped images attached to the email file?
Yes. The downloaded `.eml` file contains the report and every prepared JPEG as an attachment. Compatible apps open it as a draft; others may open it as a message that needs Forward or Resend. Your original photos are unchanged and are not attached. The ZIP download contains the same JPEGs and CSV if you need to attach them manually. No browser can guarantee that every email app will accept a draft file or a share-sheet handoff.
### How is the default email currency chosen?
Each document with a valid currency code has one vote. The most common code becomes the final email currency; ties use the first occurrence in the current document order. Missing or incomplete codes are ignored. Reading, correcting or removing documents updates the default. Choosing a final currency manually keeps your choice. Use default currency restores the automatic choice. A changed final currency clears previous exchange rates and confirmations.
### Can I choose a currency that is not in the list?
Yes. Choose Custom and enter a three-letter code for the document or final email currency. Changing the final currency updates every document and clears their prior rates and checks. Online coverage depends on the currency pair and date. If no historical rate is available, enter a rate manually; no latest rate is substituted.
### Are my photos uploaded for OCR?
No. Tesseract reads them inside your browser using the English data that ships with the page. Copying and downloading are local actions. Choosing email or device sharing intentionally passes the selected information to another app, which handles any later delivery.
### Why can a very detailed photo still give a poor result?
Glare, blur, folds and a distant page can hide letters even in a large image. OCR enlarges small crops by up to three times and adds a narrow white border, keeping the working copy within 2400 pixels on its longest side. This can help the engine read small lettering, but cannot restore detail missing from the photo. Fill the frame with one document, keep the print sharp and evenly lit, and rotate a sideways page before reading it again. The original and email attachment are not enlarged for OCR.
### Does it work offline?
Reading, editing, cropping, manual conversion, counting, JPEG preparation and downloads work after the page and OCR assets have been cached. Online historical-rate lookup needs a connection; a rate already fetched remains available in the open tab. Opening a draft can work offline, but delivering email normally requires your app's connection.
### How do historical rates use the receipt date?
Check the receipt's printed date and enter it in the conversion date field. Ambiguous dates are not guessed. Choose Online and press Get historical rate. The result names its actual observation date, which may be earlier than the requested date when no rate was published. Compare it before confirming. You can instead enter a separate manual rate for every document. The email records the rate, source and date used for each converted value.
## How the privacy claim is verifiable
- **The OCR happens on your device.** A photograph contains pixels rather than text, so reading it needs an OCR engine. This page carries Tesseract and English language data with it instead of handing the photograph to a server. The browser reads your chosen files in memory. Neither the photos nor their extracted fields are stored by this site. The engine and data are about 8 MB before delivery compression, cached with the tool. Their versions, source files and [licences are listed alongside them](https://abox.tools/receipt-invoice-extractor/vendor/README.md).
- **A suggested amount still needs your eyes.** A faded digit, a reflection or a subtotal near the bottom can produce a convincing wrong answer. Compare the merchant, date, reference, currency and total with the picture, correct them, and check that the whole document remains inside its crop. Only confirmed documents enter the totals, and every remaining document must be confirmed before email or attachment download opens. Changing a field, crop or rotation requires another check. A copied report or CSV can include unfinished rows, marked as needing review. Confirmation records your review; it is not an independent proof of the document's arithmetic.
- **Email is a handoff you control.** Where file sharing is supported, Email with images opens the device's share sheet with compressed JPEG copies and the report. Choose your email app and review the recipient, body and attachments there. Otherwise, download the email file containing the report and every JPEG attachment. Compatible apps open it as a draft; others may need Forward or Resend. Nothing is sent by this page. Your email app and provider handle delivery under their own settings.
- **Outgoing pictures are cropped, compressed copies.** Adjust each crop to keep the entire receipt or invoice. The page makes a suggested crop when it finds clear document edges; otherwise it keeps the full image. Review and adjust that suggestion. It makes JPEG copies up to 1600 pixels on their longest side and aims for about 350 KB per image. Check their previews and reported sizes before sending; the size target is not guaranteed. Your original photos are unchanged and are not attached. If your email app cannot use the email file, download the ZIP, extract it and attach its JPEG copies and CSV yourself.
- **Online exchange rates are optional.** Manual rates keep the whole preparation process offline. Selecting Online does not send a request by itself: press Get historical rate for that document. This sends only the source currency, final currency and chosen date to api.frankfurter.dev, with no credentials or referrer. Frankfurter can see your IP address and request. The returned rate and observation date appear beside the document and in the report. These are reference rates and may differ from a bank or card charge. If the service cannot supply a rate, use a manual rate; the page never silently uses today's rate.
- **The report belongs to this tab until you take it away.** There is no account or document history here. Keep the page open while reviewing, and copy the report or save the CSV before leaving. Closing or reloading the page loses the in-memory batch. A report you copy, download or hand to another app remains wherever you put it.
- **What the page's other scripts are given.** The site's ad, measurement and donate-button scripts load as on the other tools. They are not handed photographs, OCR text, filenames, merchant names, amounts or document counts. The code that reads the photos and builds the report is served from this site and listed in the repository.
- **Reading works offline; delivery depends on the app.** Wait for the page's Offline line to say it is ready, then disconnect and read another photo. The cached OCR engine, review form, totals, copying, JPEG preparation, manual conversion and downloads still work. Online rate lookup requires a connection. Your email app may save a draft while offline; actually sending it requires whatever connection that app uses.
**Check it yourself.** None of the above has to be taken on trust. This page is generated from the templates and config in the repository by a build script you can read and run yourself, and the result is committed to the `dist` branch — so you can diff what is served against what a build of the sources produces: https://github.com/A-Box-of-Tools/website
The files worth reading first are `config/site.toml` for the Content-Security-Policy, `src/ocr.js` for the local OCR wrapper, `src/main.js` for review and the email/share handoffs, `src/attachments.js` for JPEG copies, `src/email.js` for the email file, `src/fx.js` for conversion and optional historical-rate requests, and `vendor/` for the engine and its licences. The report and attachments are assembled in the tab; the visitor chooses an email app or downloads an email file, and sends it themselves.
How to extract receipt and invoice details from photos
Choose clear photos. Add up to 20 JPEG, PNG, WebP or AVIF pictures, each at most 20 MB. Use one receipt or invoice per picture. English printed text is the supported OCR language. Photograph the whole document in even light, with the text upright and sharp.
Read, crop and compare. Run OCR, then inspect each photo beside its suggested fields and raw text. Rotate a sideways image and read it again if needed. Adjust the crop so all document edges and text remain inside it, then reread that crop. Correct the merchant, date, reference, currency and total. A merchant or reference can stay blank when it cannot be read reliably. In particular, distinguish the final total from a subtotal, discount, cash tendered, change, tax amount or remaining balance.
Confirm each document.Check the fields, crop and conversion. Choose the currency printed on the document, then one final email currency shared by every document. Enter each exchange rate manually, or choose Online and press Get historical rate after checking the receipt date. The direction is shown as one unit of the document currency in the final currency. Same-currency documents use a rate of one. Only confirmed converted amounts enter the grand total. Remove duplicate photos before counting a receipt twice.
Take the report into your app. Check the prepared JPEG previews and sizes. Use Email with images to choose your email app where supported, or download the email file with the report and JPEG attachments. Review and send the message yourself. If your app cannot open the email file, download and extract the ZIP, then attach its images and CSV in a new message.
The longer version
Extract receipt and invoice details from photosHow to check receipt OCR and crops, choose one email currency and manual or historical rates, then email compressed images with each converted value, the document count and a grand total.
No. OCR can mistake a digit or miss faint printing, tiny text or a stylized business logo. The parser avoids discount and tendered-total labels, but it cannot use a label OCR did not read. Merchant and reference fields can stay blank when there is no reliable candidate. Compare every suggestion with the photo and confirm each document yourself before exporting it. This tool does not extract line items or prove that an invoice's arithmetic is correct.
Can one picture contain several receipts?
Use one receipt or invoice per picture. The tool treats each image as one document and does not split a receipt collection or template sheet. Add a separate picture or crop for each document, with its identifying details and final amount visible. Otherwise text from different receipts can be mixed into one suggestion.
How are dates and currency symbols interpreted?
The document date stays as printed. For an online exchange rate, check it and choose the date in the separate conversion-date field; a date such as 24/09/2018 is not automatically converted there. A pound sign suggests GBP. A dollar sign alone leaves the currency for you to choose, because it can mean USD, CAD, AUD or another dollar currency. Check every suggested code against the document.
Which files and languages can it read?
JPEG, PNG, WebP and AVIF photographs, up to 20 in a batch and 20 MB per file. The included OCR model reads English printed text. Other scripts, handwriting, PDFs and HEIC files are not supported inputs here. For an iPhone HEIC photo, first make a JPEG with the device's photo app or the HEIC converter on this site.
What do the count and totals mean?
Each photo counts as one document. Every document shows its original amount and its converted value in the same final email currency. The grand total adds the checked converted values, each rounded to two decimal places, and the report also keeps the original currency totals. Email and attachment downloads require every document to be checked. Duplicate photos count twice unless you remove one.
Does the email button send anything automatically?
No. Where supported, it offers the report and compressed JPEG copies through the device's share sheet; choose your email app there. Otherwise it downloads an email file containing the report and attachments. Review the recipient, contents and attachments, then send it yourself. The page cannot tell whether your email app accepted them or whether you eventually sent the message.
Are the cropped images attached to the email file?
Yes. The downloaded .eml file contains the report and every prepared JPEG as an attachment. Compatible apps open it as a draft; others may open it as a message that needs Forward or Resend. Your original photos are unchanged and are not attached. The ZIP download contains the same JPEGs and CSV if you need to attach them manually. No browser can guarantee that every email app will accept a draft file or a share-sheet handoff.
How is the default email currency chosen?
Each document with a valid currency code has one vote. The most common code becomes the final email currency; ties use the first occurrence in the current document order. Missing or incomplete codes are ignored. Reading, correcting or removing documents updates the default. Choosing a final currency manually keeps your choice. Use default currency restores the automatic choice. A changed final currency clears previous exchange rates and confirmations.
Can I choose a currency that is not in the list?
Yes. Choose Custom and enter a three-letter code for the document or final email currency. Changing the final currency updates every document and clears their prior rates and checks. Online coverage depends on the currency pair and date. If no historical rate is available, enter a rate manually; no latest rate is substituted.
Are my photos uploaded for OCR?
No. Tesseract reads them inside your browser using the English data that ships with the page. Copying and downloading are local actions. Choosing email or device sharing intentionally passes the selected information to another app, which handles any later delivery.
Why can a very detailed photo still give a poor result?
Glare, blur, folds and a distant page can hide letters even in a large image. OCR enlarges small crops by up to three times and adds a narrow white border, keeping the working copy within 2400 pixels on its longest side. This can help the engine read small lettering, but cannot restore detail missing from the photo. Fill the frame with one document, keep the print sharp and evenly lit, and rotate a sideways page before reading it again. The original and email attachment are not enlarged for OCR.
Does it work offline?
Reading, editing, cropping, manual conversion, counting, JPEG preparation and downloads work after the page and OCR assets have been cached. Online historical-rate lookup needs a connection; a rate already fetched remains available in the open tab. Opening a draft can work offline, but delivering email normally requires your app's connection.
How do historical rates use the receipt date?
Check the receipt's printed date and enter it in the conversion date field. Ambiguous dates are not guessed. Choose Online and press Get historical rate. The result names its actual observation date, which may be earlier than the requested date when no rate was published. Compare it before confirming. You can instead enter a separate manual rate for every document. The email records the rate, source and date used for each converted value.