Thenimart NiBot
Multi-agent shopping assistant on thenimart.com — intent routing for orders, product recs, and support tickets in English and Tamil.
Problem
A multi-vendor marketplace cannot staff 24/7 chat in two languages and still look up real order rows and SKUs.
What we built
Webhook in, intent out, specialists on Supabase + Gmail. NiBot greets on thenimart.com: browse products, track order, today’s deals.
How it runs in real time
Shopper opens the blue chat chip on thenimart.com. Message hits the webhook with a session id. NiBot classifies intent. If they paste an order id, the Order Specialist reads Supabase and answers with real delivery state. If they name a category, the Concierge calls getProducts / getProductRecommendation and can return a checkout path. If they need help, Support Manager creates a ticket, emails them, and the widget confirms. Memory keeps “that biryani order” in context across turns. Tamil and English on the same flow.
Pipeline
01
Webhook + session
Chat widget posts the message and session id into n8n.
02
NiBot intent
AI agent appends intent (order_status, shopping, support_ticket). Code node extracts it for the Switch.
03
Specialists
Order Specialist ↔ Supabase. Shopping Concierge ↔ product DB. Support Manager ↔ tickets + Gmail.
04
Clean reply
Strip tooling markup. Respond to Webhook so the Thenimart chip shows a normal answer.
In the canvas
- ▸ Intent JSON from NiBot — no brittle keyword lists
- ▸ Supabase for live orders and catalogue
- ▸ Window Buffer Memory on every specialist
- ▸ Bilingual English + Tamil
- ▸ Ticket ids generated in Code nodes + Gmail
NiBot is the chat widget on Thenimart (Ennem’s marketplace). A webhook takes the shopper’s message plus a session id. An intent agent (NiBot) appends JSON such as order_status or support_ticket. A Code node extracts the intent; a Switch fans out to three specialists: Order Specialist (Supabase, live delivery by order id), Shopping Concierge (catalogue search + recommendations), Support Manager (ticket ids + Gmail confirmation). Every agent has Window Buffer Memory so the thread stays human. Responses are sanitised before Respond to Webhook, so the shopper never sees n8n JSON. The same canvas handles bilingual English/Tamil and can hand a checkout link — discovery to transaction without a human agent on shift.
Proof

Results
- ▸ Live chat on thenimart.com (NiBot greeting + track-order chips)
- ▸ Order status from Supabase, not a canned reply
- ▸ Auto support tickets with unique ids + Gmail confirm