#Build01 · F&B · Internal tools
Lexie Ops Tool
Replaced manual invoice reconciliation with a structured GRN and PO system. Fewer errors, zero manual hassle.

reduced errors
/month saved
/month saved
Problem
Lexie's tracked purchase orders and goods receipts manually — invoices photographed on WhatsApp, reconciled by hand once a week. No single source of truth for what was ordered vs. what arrived, no price-variance visibility, payables reconstructed manually.
Solution
We built a web app to create POs (manual or CSV) and send them to vendors over WhatsApp. On arrival, staff photograph the invoice — Claude Vision OCR extracts line items, staff review/edit, and the system matches it to the original PO (exact → fuzzy → manual), flagging off-PO items separately. A GRN-first dashboard shows items received, price trends, and payables.
Process
Started with PO creation and WhatsApp send, then added OCR-based GRN capture once the PO flow was trusted. The dashboard was reworked mid-build — the original PO-vs-GRN KPI cards compared against the wrong baseline, so it was rebuilt GRN-first. Branch management (multi-branch, reassign-or-purge on delete) was added last.
Technical details
How it's built.
What runs where, what it talks to, and what was handed over.
- PO creation (manual + CSV) with fuzzy item matching
- WhatsApp PO delivery to vendors
- Photo-based GRN capture with Claude Vision OCR
- PO-to-GRN matching, off-PO items tracked separately
- GRN-first dashboard: items received, price trend, payables
- Multi-branch support with safe branch deletion
Architecture
How the pieces connect.
GRN photo → stored in Vercel Blob → Claude Vision OCR extracts line items → human review/edit → matched to PO (exact/fuzzy/manual) → stored in Postgres → GRN-first dashboard.
We used to reconcile invoices by hand every week. Sarthak built us a tool that put inwarding, GRNs and POs in one flow. Saved us hours, and we finally trust our numbers.
More builds

Pick a time, or just message. Either way you talk to the person building your tool.


