Receipto is a lightweight, offline-first smart receipt reader designed for Android devices. It leverages a combination of classical computer vision and a localized TensorFlow Lite Key Information Extraction (KIE) engine to extract structured financial data such as Store Name, Date, Amounts, and Tax directly on-device. This ensures user privacy as no cloud APIs are involved, making it a fully offline solution.
The pipeline is designed to be deterministic and layout-aware, prioritizing predictable results over purely black-box ML predictions. It includes image capture and preprocessing using OpenCV, raw token extraction with Google's ML Kit, and key information extraction using TensorFlow Lite. Spatial heuristics are applied when necessary to ensure accurate data extraction.
The project adheres to Clean Architecture principles, with a clear separation of concerns between the UI layer, domain logic, and data persistence. The UI is built using Jetpack Compose, while data is managed using Room Database.
Built with