Inspiration
Fake and altered receipts are a quiet but serious problem, from expense fraud to refund abuse and even insurance claims. In smart cities, digital trust matters. We wanted a way to verify receipts instantly, without relying on manual checks or centralized authorities.
What it does
Analyzes a receipt and determines whether it’s likely legitimate or tampered with. It checks arithmetic consistency, detects anomalies like future dates or missing fields, assigns a fraud score with clear reasons, and allows verified receipts to be cryptographically certified and later verified.
How we built it
Frontend: Flutter UI Backend: Javascript (Node.js) handling API calls, verification logic and receipt processing. APIs and Services: Gemini: for structured output and clear reasoning of why a receipt was detected as fraudulent. Solana: for storing a cryptographic fingerprint (hash) of verified receipts on-chain, enabling tamper-proof verification without storing sensitive data
Challenges we ran into
Getting Solana CLI set up as we weren't familiar with the process. Integrated backend with frontend
Accomplishments that we're proud of
Reliable structured output from Gemini
What we learned
Learned how to integrate backend with frontend Using gemini to make a web app
What's next for Receipt-Identifier
Visually scanning receipts
Built With
- dart
- flutter
- google-genai
- javascript
- solana
Log in or sign up for Devpost to join the conversation.