GRID
GRID, short for Good Receipt and Invoice Digitalisation, is a repository app for goods receipts and invoices from every unit across MINDEF SAF, not just fuel claims from vehicle operators. Whoever receives the goods photographs the receipt, an AI model reads it, and an RPA flow built by a partner team files the extracted data into the finance system.
Nobody skips the finance form on purpose. They skip it because the next task is already in front of them.
- 1
The person. Personnel across MINDEF SAF's units receive goods and are meant to log the receipt into a finance form, so it lands in an auditable repository and the finance team knows what payment is owed.
In practice, whoever received the goods is already on to the next task, so receipts go unlogged. That leaves a gap in the audit trail and a delay finance only discovers when they go looking for it. - 2
Framing. I read it less as a missing-form problem, since the finance form already existed, and more as a capture-and-handoff problem: the record needed to get created reliably despite people being busy, and in a shape a downstream automation could act on without anyone re-typing it.
Receipts also arrive in whatever format the issuing company printed them in, so intake had to normalise that variation before the repository or the RPA flow could depend on it. - 3
My role. Lead developer.
I designed and built the intake app (capture, AI-assisted extraction across varying receipt formats, and repository storage) on PowerApps and Vite, developed spec-first with Claude Code's Superpowers workflow. A team of five: a product owner, a data analyst, and two RPA developers who built the flow that reads my app's output and files it into the finance forms. Two months. - 4
Iteration. The obstacle I handled largely alone was the interface with the RPA team: I had to learn what UiPath needed from my app's output before I could shape it to trigger their flow reliably, rather than assume a format and find out later it didn't fit.
Goods receipts also come from whichever company issued them, in whatever layout that company uses, so extraction had to hold up across formats I hadn't seen yet rather than one template hard-coded to a single issuer. - 5Validation. In pilot now, ahead of the planned rollout across MINDEF SAF.
Role of AI
- Human need
- Personnel across MINDEF SAF who receive goods but never get the receipt logged, because the next task is already in front of them.
- What the AI does in the product
- Reads a photographed goods receipt or invoice, in whatever format the issuing company used, and extracts the fields the finance form and the RPA flow need, so the person who received the goods confirms a record instead of transcribing one.
- What I did
- Lead developer. Built the capture app, the AI-assisted extraction across receipt formats, and the repository the RPA flow reads from.
What exists now
- Shipped
- A capture app with AI-assisted extraction across varying receipt and invoice formats, one auditable repository for records submitted across MINDEF SAF, and an RPA hand-off that files the extracted data into the finance forms without manual re-entry.