# Supported WhatsApp Business Calling scenarios
___

WhatsApp Business Calling supports several inbound and outbound call flows. Each scenario depends on the call initiator (user or business), the routing logic, and the destination platform (for example, Conversations, SIP, or WebRTC).

Use the tables below to understand how to configure and route different WhatsApp call flows using Infobip products and APIs.
___

## User-initiated calling scenarios

The following call flows are supported when the user initiates a WhatsApp call to your business. Select to expand each scenario context.

WhatsApp end users calling to Conversations

| Scenario | Description |
| --- | --- |
| WhatsApp calls to [Conversations](https://www.infobip.com/docs/conversations) | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to Conversations.**How to implement**:
                - Log in toInfobip web interfaceand go to **Channels and Numbers** >**Numbers**.
                - Click or tap your voice-enabled WhatsApp sender and go to the **WhatsApp Voice** tab.
                - Under **Inbound Configuration**, select **Forward to Conversations** |
| WhatsApp calls to [Conversations](https://www.infobip.com/docs/conversations) withIVR API | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to an IVR created with the IVR API. The IVR scenario can transfer this incoming call to an agent in Conversations.**How to implement:**
                - Create your IVR scenario with theCreate a Voice IVR scenariomethod, and save the returned `scenarioId`.
                - ContactSupportto associate this scenario with your sender. |
| WhatsApp calls to [Conversations](https://www.infobip.com/docs/conversations) with [Moments IVR](https://www.infobip.com/docs/moments/flow-elements/ivr) | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to an IVR created as a flow in Moments. The flow can transfer this incoming call to an agent in Conversations.**How to implement:**
                - Create a flow in Moments where the trigger is [Start incoming call](https://www.infobip.com/docs/moments/flow-elements/ivr#start-incoming-call-ivr-element).
                - Within the `Start Incoming Call` trigger, select your voice-enabled WhatsApp sender. Note that the same number could be listed twice in the number dropdown list: once for its WhatsApp voice capability, and once for its regular PSTN voice capability.
                - Make sure your flow includes the [Transfer call to agent](https://www.infobip.com/docs/moments/flow-elements/ivr#transfer-call-to-agent) action. |

WhatsApp end users calling your IVR

| Scenario | Description |
| --- | --- |
| WhatsApp calls toIVR (API) | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to an IVR created with the IVR API.**How to implement:**
                - Create your IVR scenario with theCreate a Voice IVR scenariomethod, and save the returned `scenarioId`.
                - ContactSupportto associate this scenario with your sender. |
| WhatsApp calls to [Moments IVR](https://www.infobip.com/docs/moments/flow-elements/ivr) | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to an IVR created as a flow in Moments.**How to implement:**
                - Create a flow in Moments where the trigger is [Start incoming call](https://www.infobip.com/docs/moments/flow-elements/ivr#start-incoming-call-ivr-element).
                - Within the `Start Incoming Call` trigger, select your voice-enabled WhatsApp sender. Note that the same number could be listed twice in the number dropdown list: once for its WhatsApp voice capability, and once for its regular PSTN voice capability. |

WhatsApp end user calls are redirected to your own contact center platform or telephony system

| Scenario | Description |
| --- | --- |
| WhatsApp calls to [SIP trunking](https://www.infobip.com/docs/voice-and-video/sip-trunking) | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to your voice equipment (SBC, PBX) over SIP trunking. This can allow WhatsApp end users to reach a business on their own contact center platform or regular phone environment, but calling at no cost (for the end user).**How to implement:**
                - Have at least one [SIP trunk defined](https://www.infobip.com/docs/voice-and-video/sip-trunking#setting-up-a-static-trunk) towards your SIP equipment
                - Define a route in the [call routing application](https://www.infobip.com/docs/voice-and-video/call-routing) that includes at least one of your SIP trunks
                - Set up the call routing action on the WhatsApp sender:
                  - Log in toInfobip web interfaceand go to **Channels and Numbers** >**Numbers**.
                  - Click or tap your voice-enabled WhatsApp sender and go to the **WhatsApp Voice** tab.
                  - Under **Inbound Configuration**, select **Forward to Call Routing** and select the route you defined above. |

WhatsApp end user calls are redirected to your web or mobile application

| Scenario | Description |
| --- | --- |
| WhatsApp calls to [webRTC](https://www.infobip.com/docs/voice-and-video/webrtc) | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to a predefined webRTC user in the web or mobile application you developed based on our webRTC SDKs. This can allow WhatsApp end users to reach a business in their voice-enabled application but call at no cost (for the end user).**How to implement:**
                - Define a route in the [call routing application](https://www.infobip.com/docs/voice-and-video/call-routing) that includes at least one webRTC destination.
                - Set up the call routing action on the WhatsApp sender:
                  - Log in toInfobip web interfaceand go to **Channels and Numbers** >**Numbers**.
                  - Click or tap your voice-enabled WhatsApp sender and go to the **WhatsApp Voice** tab.
                  - Under **Inbound Configuration**, select **Forward to Call Routing** and select the route you defined above. |

Build your own voice inbound scenario

| Scenario | Description |
| --- | --- |
| WhatsApp calls to the custom voice application of the customer, built with the [Calls API](https://www.infobip.com/docs/voice-and-video/calls) platform | Incoming calls from WhatsApp users to our WhatsApp sender will be redirected to the custom voice application that the customer has developed (and is hosting) based on our Calls API platform.**How to implement:**
                - Log in toInfobip web interfaceand go to **Channels and Numbers** >**Numbers**.
                - Click or tap your voice-enabled WhatsApp sender and go to the **WhatsApp Voice** tab.
                - Under **Inbound Configuration**, select **Forward to Subscription** and select your call configuration. |

IMPORTANT
It is strictly forbidden to connect WhatsApp Business Calling to PSTN. For instance, forwarding an inbound WhatsApp call to your existing business phone number is not allowed.

## Business-initiated calling scenarios

These flows start with your business placing a call to a user, based on accepted call permissions. Select to expand each scenario context.

Conversations agent calling a WhatsApp end user

| Scenario | Description |
| --- | --- |
| WhatsApp calls from [Conversations](https://www.infobip.com/docs/conversations) | This scenario allows an agent in Conversations to initiate a voice call to a WhatsApp end user.For detailed instructions, refer to the [Start a new WhatsApp call](https://www.infobip.com/docs/conversations/calls#start-a-new-whatsapp-call-whatsapp-business-calls) section. |

An agent on your contact center platform or voice telephony platform calling a WhatsApp end user

| Scenario | Description |
| --- | --- |
| [SIP trunking](https://www.infobip.com/docs/voice-and-video/sip-trunking) to WhatsApp end user | Incoming call requests from your voice platform are sent to Infobip over a SIP trunk. Using Infobip call routing, this call request is converted into a business-initiated call to a WhatsApp end user.**How to implement:**
                - Have at least one [SIP trunk defined](https://www.infobip.com/docs/voice-and-video/sip-trunking#setting-up-a-static-trunk) towards your SIP equipment
                - Define a route in the [call routing application](https://www.infobip.com/docs/voice-and-video/call-routing), with a SIP filter based on your defined SIP trunk, and include a WhatsApp destination type
              Ensure that the `from` value on your SIP calls is set to the WhatsApp sender's MSISDNYou must get the end user's call permission separately. |

A WebRTC user (web or mobile) places a call to a WhatsApp end user

| Scenario | Description |
| --- | --- |
| [webRTC](https://www.infobip.com/docs/voice-and-video/webrtc) to a WhatsApp end user | The WebRTC SDK does not have a method to place a call to WhatsApp end users directly. Call routing can be used as a bridging system.**How to implement:**
                - Define a route in the [call routing application](https://www.infobip.com/docs/voice-and-video/call-routing), with a WEBRTC filter, and include a WhatsApp destination type.
                - From your WebRTC application, make an application call to the `CALL_ROUTING` application.You must get the end user's call permission separately.The webRTC call to `CALL_ROUTING` does not include any information related to the WhatsApp sender or WhatsApp end user's MSISDN to be used on the outbound WhatsApp call. This means that you will need to either hardcode these values in the WhatsApp destination in the route or use a URL destination type for a more flexible implementation. A simpler approach might be to develop your voice application based on Calls API to drive the whole scenario (see the [Build your own voice inbound scenario](#build-your-own-scenario) below). |

Build your own voice outbound scenario (Calls API platform)

| Scenario | Description |
| --- | --- |
| Your custom voice application built with the [Calls API](https://www.infobip.com/docs/voice-and-video/calls) platform is triggering outbound WhatsApp calls. | Your application can implement whatever use case is needed, including bridging WhatsApp calls to WebRTC, SIP, or even other WhatsApp participants. WhatsApp calls are handled in a similar way as any other Calls API-supported endpoint type (phone, webRTC, SIP, Viber).You must get the end user's call permission separately. |

___

