AI Customer Support Agent for Web, Gmail, WhatsApp & HandoffAI Customer Support Agent for Web, Gmail, WhatsApp & Handoff
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started
AI Customer Support Agent for Web Form, Gmail & WhatsApp An AI support agent that answers customer questions across a web form, Gmail and WhatsApp, and hands off to a human team when it should. Load-tested with 200+ messages and no lost messages.
I built an AI customer support agent as a demo for a fictional SaaS company called Flowmint. Customers can write through a web form, Gmail or WhatsApp. The agent finds the answer in a knowledge base, replies on the same channel, and passes the conversation to a human team (Billing, Sales, Support) for refunds, special pricing, or when a customer asks for a person.
One agent for three channels, with replies formatted for each (a clean HTML email, a short WhatsApp message, a private web tracking page)
Safety rules written in code: it can only quote approved prices, and refunds always go to a human
Remembers returning customers on email and WhatsApp
Private ticket tracking page with a secret tracking code
If the AI service is busy, it switches to backup AI models, and to a knowledge-base answer if all are limited
I load-tested the agent for 24 hours with 200+ messages across all three channels, using simulated customers plus real emails and WhatsApp messages I sent myself.
212 messages in, 212 replies out, none lost
Only 3.3% needed a human
Areas I’m improving: faster replies with a paid AI plan, and spam protection for the web form.
Tech stack: Python, FastAPI, OpenAI Agents SDK, Kafka, PostgreSQL, Next.js, Docker, Gmail API, WhatsApp Cloud API.
Post image
Eros's avatar
Writing the safety rules in code, not in the prompt, is the part I like most: approved prices only, and refunds always go to a human. My RAG demo also passes the question to a person when the guide has no answer. How does your agent decide that a customer "asks for a person": a fixed list of phrases, or does the model decide?
Neelum's avatar
Thanks Eros, great question. It's both.
There are two layers. The first is deterministic rules in code: a list of phrases ("talk to a human", "real person", "live agent", ...) and short WhatsApp messages like "agent" that trigger a hand-off. The second is the model, which can...
Back to feed
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started