Purchase orders approved over WhatsApp
A construction finishing company's purchase and supply-order cycle, from request to approval to supplier, run entirely through WhatsApp and recorded in a database.
- Role
- Solution designer and builder; ran the client demo.
- Period
- 2026
- Status
- Demo approved, production scoping
- Stack
- n8n, WhatsApp (Evolution API), Supabase
Architecture
System steps in order
- Request
- Site request on WhatsApp (Input)
- Record request (Data)
- Route by amount threshold (Logic). Feeds: Approver notified on WhatsApp
- Approval
- Approver notified on WhatsApp (Output)
- Approve or reject by reply (Input)
- Update status (Data). Feeds: Supplier step
- Supply
- Supplier step (Logic)
- Reminders on WhatsApp (Output)
- Full history per project (Data)
The problem
Staff on site requested materials by phone and chat. Approvals depended on who answered, and nothing was recorded, so spend per project could not be traced.
What I built
A WhatsApp-only workflow: a request is captured and recorded, routed for approval based on its amount, approved or rejected by reply, passed to the supplier step, and followed by reminders. Every step is stored in Supabase.
Key decisions
- Rules first, AI only where it pays. Running cost stays near zero and the flow is predictable.
- Reply-based steps. Interactive buttons are planned for the move to the official WhatsApp Cloud API.
- A real database from day one instead of spreadsheets, so it can grow into an ERP module.
Results
The demo ran without failures and the client moved to a requirements phase for a production ERP module (budget tracking per item and accounting integration).
In action
Project A supplies
- Site engineer
Need 40 bags of tile adhesive for Villa 12, Project A
09:15 - Procurement assistant
Request PR-0193 recorded and sent to the site manager for approval (EGP 18,000).
- Site manager
Approved
- Procurement assistant
Sent to supplier. Reminder set for delivery date.
Behind the scenes
Recording request
- item
- Tile adhesive
- qty
- 40
- unit
- bag
- project
- Project A
- est_cost_egp
- 18000
- route
- Site manager approval