Integration Patterns | Developer Documentation
Integration Patterns
Updated: Feb 25, 2026
Possible high-level approaches
| Approach | Number setup | Business Solution Provider responsibilities | Calling Tech Provider responsibilities | End business responsibilities |
|---|---|---|---|---|
Message BSP capable of Calling | Existing messaging number extended for calling or new number | Not applicable because there is only a single partner involved. | ||
Single number independently operated by both messaging BSP and Calling BSP/TP | ||||
Exclusive Calling ISV | New number for calling | Not applicable because there is no messaging BSP | ||
Multi-platform solution using Calling ISV registered as Tech Provider (TP) | New calling exclusive number serviced (only) by Calling TP |
Multi-solution conversations (MSC)
Multi-solution Conversations allow multiple solutions on the same phone number, localizing messaging and calling in a single chat thread.
Integrating using a third party calling provider detailed design
The following logical architecture illustrates how to integrate WhatsApp Business Calling using a third party (3p) calling provider.
In this scenario, you would use the 3p vendor behind the scenes, and that 3p vendor would not be visible to Meta. This pattern is similar to any other SaaS service you may be using.
The diagram also illustrates how this architecture can be optionally extended to integrate with the SIP infrastructure on your side.
Our terms disallow use of PSTN on any leg of the WhatsApp call in the overall call flow.
Even if you bridge WA call into the SIP world, you must ensure it still stays exclusively on VoIP and never touches the PSTN. SIP trunk by itself is not disallowed because technically a SIP trunk can be used without any PSTN at all.
(Right click image and choose “Open in new tab” for enlarged image)Single app vs. multiple apps
This section covers guidelines and considerations for reusing your existing messaging app for calling vs. creating a new app specifically for Calling API features.
To integrate with the WhatsApp Calling API, you need to call Graph API endpoints and process Webhooks from Meta. This requires you to have an app, and almost always, you should already have an app that is used for messaging.
In short, you can reuse an existing app which is used for Embedded Signup and for a messaging use case.
In this setup, the Webhook Callback URI is the same for both message and call related webhooks, but the webhook payload can be used to distinguish between the two categories of functions (messaging and calling). Hence you can still forward Calling API specific webhooks to a calls related component from your main webhook business logic.
Reusing the same app offers the following benefits:
Having separate apps is still supported, see the Get Started FAQ for details.
Guidelines for Media path integration
The WhatsApp Business Calling VoIP stack is designed to be compatible with WebRTC. However, to ensure smooth integration with the WhatsApp protocol, Meta restricts the supported functionalities. As a result, the following requirements and recommendations apply.
Mandatory requirements
If any mandatory requirement is unmet, the call will fail. This failure can occur either during the call signaling phase, leading to a rejected call, or during the media packet decoding phase.
Recommendations
While the following aspects are not mandatory, they are recommended to achieve high call quality and reliability.
No comments to display
No comments to display