3portals: requester, procurement, admin
v1.1Android app release
4roles, enforced in the database
AEDwastage loss, auto-calculated
The brief
Give a busy cafe one tracked flow for everything it buys: who asked for it, who ordered it, whether it arrived right, and whether the invoice matches. Then show what gets wasted each day and what it costs.
What I built
An installable command center. The kitchen raises a request, procurement orders and tracks it, and the admin sees every purchase, quality check, invoice and wastage record in one place.
The flow
- Request. Kitchen staff raise a request and follow its timeline.
- Procurement. The procurement officer accepts it, places the vendor order and tracks ETA and delivery, with push notifications for new requests.
- QC & close. Received goods are checked for quantity and quality, then the invoice is tallied before the request closes.
- Wastage. Supervisors log daily wastage by menu item. The app calculates the loss in AED and shows trends and top reasons.
Built properly
- Roles enforced by Postgres row-level security, not just hidden buttons
- Installable on any phone, plus a native Android build
- Menu items and prices sourced from the cafe’s own spreadsheet