What they did
Kushal Sapkota, an independent developer in Nepal, built an ordering agent for a cake shop client across five n8n workflows and 98 nodes. Messages come in from WhatsApp (through the 360dialog API) and a website chat, often mixing Nepali, Roman Nepali and English, as text, voice notes, photos or payment screenshots. Each one is deduplicated, transcribed or fetched, and checked against a pause flag for staff takeover. An AI Agent node with memory and five SQL tools (cakes, occasions, delivery zones, time slots, payment methods) returns a reply plus structured fields. Code then rechecks the owner's feature switches, validates items and dates and computes totals and fees in SQL. A vision model reads payment proofs. The bot replies with photos and a payment QR, saves the order in Postgres and alerts the owner on Telegram.
How it went
The author says it has been running in production for the client. Things that broke: the website chat went quiet for about an hour after a regenerated workflow was left inactive, a test left the bot stuck in English so a Roman Nepali customer got an English reply, and Meta rejected Nepali-script documents twice during WhatsApp business verification. No order volumes or time savings are given.
Worth knowing
The model never decides money. It cannot mark an order paid; a payment screenshot only flags the order for the owner to confirm, and prices come from the database, so an admin-panel change applies on the next message. Tests run on a copy of the workflow with send nodes off and fake numbers. Check every workflow's active flag after each deploy.