Introduction
Infobip Omnichannel is a cloud-based communication platform that unifies multiple marketing and support channels—including SMS, WhatsApp, email, and RCS—into a single, continuous conversation flow. By linking these touchpoints to a central customer data platform, it allows businesses to track customer history and context in real time. This ensures that users never have to repeat themselves when switching between automated chatbots, human agents, or different messaging apps.
So how do we leverage such value-add from OIC? Here's a simple demo of using the OIC Infobip adapter to send WhatsApp messages from OIC.
OIC Infobip Adapter
The Infobip adapter is available for download on the Integration Store -
The adapter is now available in your connections list -
Invoking Infobip Omnichannel
As you can see, I need an api key to configure the connection. This I get from the Omnichannel portal -
I need to specify scopes - for this demo I will be leveraging WhatsApp from OIC. I will also be looking at mcp, so this is reflected in my choice of scopes -
Under
Channels, I choose all of the WhatsApp options.
You can check out the infobip docs
here.
Back to my connection configuration -
Now to a simple integration that sends a WhatsApp message.
Check out the actions supported -
I see the numbers available to me -
These numbers have been made available to me by Infobip; normally your number(s) would appear here.
The next page shows templates, these could be templates you have created and registered with Meta. Imagine a template for an initial marketing message to your customers. The template will have placeholders to which you can assign relevant values.
You can check out the template creation docs
here.
This is the target structure you will see in the OIC mapper -
My template is called loyalty_promo and just includes the some text, akin to Dear {{Name}} we're thankful to have you as our customer. As a token of our appreciation we'd like to offer you {{NN}} % off on your next purchase...
Infobip expects the following payload format for this specific invoke -
{
"messages": [
{
"from": "YourFromNr",
"to": "{{DESTINATION}}",
"content": {
"templateName": "loyalty_promo",
"templateData": {
"body": {
"placeholders": [yourName, your%discount]
}
},
"language": "en"
}
}
]
}
So I do the required mappings and test -
I've externalized most of the values in a lookup.
Let's test, by offering Renate a discount of 30%.