"Omnichannel" became a slide-deck word, which is why it barely means anything now. Most of the writing about it is aimed at retail and marketing rather than at whoever has to build it.
Here is the narrow definition, and what it actually demands of a platform.
The definition
> Omnichannel is the customer continuing one conversation as they move between channels.
They write on WhatsApp, reply to an email two days later, call the week after. On your side that is one history, with one contact.
Being present on several channels without that shared history is multichannel. It is a different thing, and it is what most companies actually have.
| Multichannel | Omnichannel | |
|---|---|---|
| Channels | Several | Several |
| History | One per channel | One per customer |
| Identity | Phone here, email there | One contact with both |
| Channel switch | The customer repeats everything | Picks up where they left off |
The test is simple: a customer who wrote on WhatsApp yesterday emails today. Does whoever answers see yesterday?
What that requires of a platform
Four things. Missing any one, you have separate inboxes with a logo on top.
1. Unified contact identity. The same customer has to be one record, with phone, email and chat IDs linked. Without it nothing else is possible: there is no "their conversation" if there is no "them".
2. A thread that survives a channel switch. The conversation has to be keyed by contact, not by channel. That sounds obvious and it is exactly where most implementations break, because the easy path is a message table per integration.
3. One send API that picks the channel. If sending SMS and sending WhatsApp are two different calls with two different shapes, the channel decision ends up scattered through your product. One call, with channel as a parameter, keeps that decision in one place.
4. Fallback. Channels fail. The WhatsApp 24-hour window closes, a number cannot receive SMS, an email bounces. Without fallback, "omnichannel" just means you have more ways for the message not to arrive.
What it looks like in code
A platform that solves the four things above makes sending look like this:
terminalcurl -X POST https://api.zavu.dev/v1/messages \ -H "Authorization: Bearer $ZAVUDEV_API_KEY" \ -d '{ "to": "+14155551234", "channel": "auto", "text": "Your order is out for delivery." }'
channel: "auto" is the part that matters: the channel choice belongs to the platform, based on what that contact actually has, rather than to your code. Changing channel later is not a refactor.
And reading back is by conversation, not by channel:
terminalcurl https://api.zavu.dev/v1/conversations \ -H "Authorization: Bearer $ZAVUDEV_API_KEY"
Each conversation carries the channels it has already used. A thread that started on WhatsApp and continued by email is one row, with channels: ["whatsapp", "email"].
The right order to build it
Almost everyone does this backwards, adding channels first and trying to unify afterwards. That creates silos that are expensive to merge.
When omnichannel is not worth it
Worth saying, because the word sells well and the investment does not always pay back.
With one channel, the gain is zero. If 95% of your customers use WhatsApp, do WhatsApp extremely well before anything else.
At low volume, one person holds the context in their head. The pain arrives when the team grows and the context stops fitting.
If the problem is the service rather than the channel, a platform will not fix it. Omnichannel supplies the history; answering well is still the team or the agent.
The moment it starts paying is usually recognisable: customers already arrive through two or three channels and your team is losing context between them.
Omnichannel and AI agents
This changed over the last two years. An AI agent needs exactly the same foundation: contact identity, per-conversation history, a channel to be reached on.
The difference is that a human compensates for a bad platform by asking "have you contacted us before?". An agent does not compensate. It answers with whatever context it has, and if that context is fragmented by channel it answers wrong, confidently.
So if you are putting an agent in front of support, the omnichannel foundation stops being a refinement and becomes a prerequisite. How to build an AI agent covers the rest.
Keep reading
- CPaaS providers compared: who delivers this foundation and who does not.
- CPaaS vs UCaaS: which of the two categories you are shopping for.
- WhatsApp API: the complete guide: the channel that usually carries the most volume.
- How to build an AI agent: when the foundation becomes a prerequisite.