Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Bank alerts to a day-book, with a local Gemma

Description and use

A browser‑only day‑book app for a Nigerian POS operator automatically parses Moniepoint email alerts, extracts transaction details and customer names using a local Gemma 3‑1B model, runs offline with WebGPU acceleration, and summarizes daily totals without sending data to a server.

Problem

A POS operator in Port Harcourt, Nigeria, manually records bank transfer alerts in a notebook, which is time‑consuming, error‑prone, and discourages daily balancing. Customers often claim payments have not arrived, causing further confusion.

Outcome

The app achieved 5/5 accuracy on real alerts for kind detection and 4/5 for name extraction, with 30/30 real‑world synthetic alerts for kind and 23/30 for name. The model runs offline after a one‑time 859 MB download, and the app functions without internet, making it suitable for unreliable connectivity.

Workflow

  • Paste Moniepoint alert emails into the app
  • The app parses fixed fields (time, amount) via code
  • Keyword rules identify the kind of money (transfer, airtime, reward, failed)
  • Gemma 3‑1B model extracts the customer’s name from the free‑text line
  • The app checks the name against guard rules and stores it as JSON
  • The user can confirm or reject the name; if rejected, the entry stays "not read"
  • The app calculates daily totals, estimated charges, and flags suspicious rows
  • The user copies the generated WhatsApp text to report to the business owner

Evidence

She pastes the alert emails, and she gets: Rows with the time, the amount, the kind of money and the customer's name. She types nothing.

Source

Gemma found most of them: on the run in the video it found 3 of 3; on an earlier test run it found 2 of 3.

Source

All data stays in the browser. Nothing goes to a server.

Source

The model is Gemma 3 1B instruct (ONNX, q4), running in the browser with transformers.js on WebGPU.

Source

  • Record date: 2026-10-19T06:56:30.313Z