One inbox for WhatsApp and email
Conversations
Every contact keeps a single timeline regardless of which channel they arrived on. Ownership, SLA timers, collision detection, and a handover between the agent and a person that is explicit in both directions.
WhatsApp, taken seriously
The 24-hour window is a first-class concept
WhatsApp only allows free-form replies inside the window a contact opens. Outside it, the composer offers approved templates and nothing else — you find out before you type, not after Meta rejects the send.
- Window state is visible on the conversation itself
- Templates are the ones Meta has already approved, nothing else
Last inbound message · yesterday, 6:12 pm
Free-form replies are locked — send an approved template
Human and agent, explicit in both directions
Takeover, and explicit return
A rep takes over and the agent stops. It resumes only when handed back deliberately — never on its own, mid-negotiation, because a timer expired.
- Who is driving is always visible on the thread
- Internal notes travel with the conversation, invisible to the contact
Sales Agent
Internal note · good running volume, taking this one — Rohan
Rohan · took over
The rest of the inbox
Collision detection without websockets
A presence write when a conversation opens, read back on the poll. Two reps answering the same person is the failure this exists to prevent.
Hindi and voice notes
Voice notes are transcribed, and Devanagari renders properly rather than as a row of boxes. For the Indian market this is table stakes, not a feature.
Internal notes
Context for colleagues, never visible to the contact, interleaved into the thread where it happened.
Messages are append-only
No edit, no delete. Corrections are new messages, so the record of what was actually said stays intact.
See it with data in it
The demo is the real product, seeded with two businesses that sell completely differently.