Receipt Scanner

com.receiptscanner.app
by AU9913 auggie@nakaMOtown.com

Photograph receipts, extract data offline with on-device OCR, organize into sections (business/personal/cost codes), batch-import folders, export tax-ready CSV/XLSX, archive originals with SHA-256 provenance.

Receipt Scanner: offline receipt photography with on-device OCR (Tesseract), user-defined sections (business/personal/cost codes), batch folder import, review-before-save, CSV/XLSX export with SHA-256 image provenance, and year archive zips for tax backup. Nostr-friendly, no network required.

First release: Aug 31, 2026, 9 total releases.

Most recent release: Sep 15, 2026.

Repo

Appears in 0 app stacks.

0 sats / 0 zaps received in the past year.

Sats Received

Underlying data available via MCP: app_zaps, app_releases.

Zap Count

Underlying data available via MCP: app_zaps, app_releases.

Releases

  • Sep 15, 2026 0.4.1
    0.4.1: review a receipt against its photo with a vision model, and start collecting the data that makes that unnecessary. "Review with AI" on a receipt sends the photo plus what the on-device OCR read, and returns merchant, date, total, subtotal, tax and currency with a per-field confidence, shown as a field-by-field diff with a tick box on each change. "Review N poor reads" runs the same pass over a backlog, stoppable mid-run, reporting real token usage; it skips receipts already read well and receipts a review has already seen, so a re-run does not bill for the same ones twice. The API key is entered on the device and held in EncryptedSharedPreferences - it is never in the APK, and the request goes from the phone to Anthropic directly, with no server in between. Every correction - the model's or yours - writes a labelled row: the photo hash, exactly what the OCR produced, what turned out to be true, and the build that produced it. A reading you confirm as already correct records too, behind an explicit tick, because a corpus of failures alone cannot show a regression; a reading missing its merchant, date or total is never offered that tick, and a bulk AI run never records a confirmation. Export is split in two: labels alone (about 900 bytes a receipt) and labels with photos (about 8.5 MB a receipt), because receipt photos are financial records and every copy is a copy. Includes 0.4.0 and all of 0.3.9 (reading the faded top of a thermal slip as its own image), 0.3.8 (crop to the paper, not to a sheen beside it), 0.3.7 (camera light, tap-to-focus, photos saved to the gallery and shareable, totals whose decimal point OCR dropped), 0.3.6 (photo on the receipt screen, delete a receipt, mangled-separator dates), 0.3.5 (tilted photos), 0.3.4 (EXIF orientation), 0.3.3 (shading correction) and 0.3.2.
  • Sep 13, 2026 0.3.7
    0.3.7: the camera has a light, and tapping the receipt focuses there (with a ring, plus an autofocus/exposure pass before every shutter, so a capture no longer fires mid-hunt). Photos now leave the app: a capture is also written to Pictures/ReceiptScanner where the gallery can see it, and the receipt screen gains Share photo and Save to gallery. A total whose decimal point OCR dropped is recovered — "TOTAL AMT: uSD $143 10" used to save with no total at all — kept narrow enough that a reference number or an EMV field cannot become an amount. Includes 0.3.6 (photo on the receipt screen, delete a receipt, mangled-separator dates), 0.3.5 (tilted photos), 0.3.4 (EXIF orientation), 0.3.3 (shading correction), 0.3.2 (receipt crop, undated receipts visible, detail screen) and the 0.3.1 upgrade-crash fix.
  • Sep 13, 2026 0.3.6
    0.3.6: the photo a receipt was read from is now on the receipt screen (tap for full size), receipts can be deleted — row, line items and both stored images, with a confirm step — and a date whose separators OCR mangled is recovered: 09/04/2026 read back as 0970472026 used to save with no date at all. Currency codes are matched case-insensitively (a scan read USD as usD and fell back to a bare $) and the merchant name is trimmed of OCR debris. Includes 0.3.5 (tilted photos), 0.3.4 (EXIF orientation), 0.3.3 (shading correction), 0.3.2 (receipt crop, undated receipts visible, detail screen) and the 0.3.1 upgrade-crash fix.
  • Sep 10, 2026 0.3.5
    0.3.5: photos taken at a slight angle read properly. A tilted slip made Tesseract group text across two printed rows at once, and the rectangular crop kept a wedge of the surface at each side, which was read as text and thinned the strokes near the edges. The page is now levelled and everything outside the paper painted white — but only as a second opinion, when the first read comes back weak or with no date, and only if it produces more believable text. Includes 0.3.4 (EXIF orientation, sideways-photo fallback, currency from the amount), 0.3.3 (shading correction), 0.3.2 (receipt crop, undated receipts visible, detail screen with copyable OCR text) and the 0.3.1 upgrade-crash fix.
  • Sep 10, 2026 0.3.4
    0.3.4: fixes scans taken with the phone's own camera. The app never read the EXIF Orientation tag, and a phone stores a portrait photo as landscape pixels plus that tag, so OCR was reading the receipt on its side and returning noise — while the same photo shared from another device (which strips the tag and stores the pixels upright) read fine. Orientation is now applied when the image is decoded and baked into the pixels on import. Photos that arrive with no tag but rotated pixels are re-read rotated when the first pass reads as noise, and the best result is kept. Currency also no longer picks a garbled letter over the symbol attached to the total. Includes everything in 0.3.3 (shading correction for unevenly lit photos) and 0.3.2 (receipt-aware crop, undated receipts visible again, tappable detail screen with copyable OCR text, locale-aware dates, upgrade-crash fix).
  • Sep 10, 2026 0.3.3
    0.3.3: fixes OCR on unevenly lit photos. Tesseract binarises with one global threshold, so a shadow or fold across part of the receipt made that part unreadable while the rest scanned fine — merchant, address and date were the usual casualties. The photo is now shading-corrected (the paper's own brightness is estimated and divided out) before OCR reads it, and the line-confidence cut no longer discards real-but-hard lines. Includes everything in 0.3.2: receipt-aware crop, undated receipts no longer invisible in the list/exports/archive, tappable detail screen with copyable OCR text, locale-aware dates, and the 0.3.1 upgrade-crash fix.
  • Sep 3, 2026 0.3.0
    0.3.0: user-defined sections (create/rename/delete, per-section filtering, section picker at review, scoped CSV/XLSX/archive exports with new section column; deleting a section detaches, not deletes, receipts). Fixed native OCR crash caused by truncated tessdata on some boots (size-verified extraction + init check).
  • Sep 3, 2026 0.2.0
    0.2.0: batch import (multi-select + whole folder), SHA-256 hash column tying every row to the original photo, Archive-year zip (CSV+XLSX+originals), save/share anywhere via Android share sheet, Room migration v2. Fixes: import error handling.
  • Aug 31, 2026 0.1.0
    Initial release. - Photograph receipts; on-device Tesseract OCR extracts merchant, date, currency, line items, subtotal, tax, total, payment method — fully offline, no LLM. - Per-field confidence + totals cross-check; flagged entries go to a review screen. - Local Room storage; tax-ready CSV (RFC-4180) and XLSX export, year-filtered. - DE and US receipt formats, $/€ amounts. Note: this is the first public build — camera capture flow and tessdata bundling improvements are next up.