A behind-the-scenes look at our AI WhatsApp integration and the architecture that makes it scalable and reliable.
The constraint that shaped everything
WhatsApp webhooks expect a fast acknowledgement. Anything that takes seconds — a model call, a database lookup across three systems — cannot happen inside the request. So the webhook does one job: validate, enqueue, return 200.
Queue first, think later
Every inbound message lands on a queue keyed by conversation. Workers pull, assemble context, call the model, and push the reply. Per-conversation keys mean a burst from one customer never delays another, and a failed worker retries without duplicating replies.
Grounding beats cleverness
The model never answers from memory. It answers from retrieved records — order status, appointment slots, live pricing. Hallucination stops being a risk when the answer is assembled from your own data and the model only phrases it.
The human escape hatch
Low confidence, three failed clarifications, or any mention of a complaint routes straight to a human with full transcript context. Measuring how often that fires is the single most useful quality signal we collect.
If a number in this article does not match what you see in your own dashboard, that gap is worth an hour of someone’s time. Ask us about it.