WhatsApp Calling API
The WhatsApp Calling API is the Business Platform capability that lets a business place and receive live voice calls directly inside a WhatsApp chat — no phone number to dial, no separate telephony app, no call charges from a carrier. Instead of pushing customers off WhatsApp to a helpline, an agent (or an automated flow) can escalate a text conversation into a voice call within the same thread, keeping context, identity, and history intact. It runs over WhatsApp's own VoIP layer on the WhatsApp Business API, which means calls are internet-based and end-to-end encrypted like ordinary WhatsApp calls, but triggered and managed programmatically through your BSP. For Indian businesses already running notifications, support, and commerce on WhatsApp, calling closes the last gap where customers previously had to switch channels.
In one line
WhatsApp Calling API is a WhatsApp Business Platform feature that lets businesses make and receive encrypted voice calls inside the WhatsApp chat itself — either customer-initiated or business-initiated (with the customer's opt-in) — instead of routing people to a separate phone line.What the WhatsApp Calling API actually is
Historically, a WhatsApp Business number could receive messages but could not take a real voice call — the call button was often disabled, and businesses fell back to printing a separate helpline. The Calling API changes that by exposing WhatsApp's native VoIP calling to the Business Platform, so a call becomes a first-class part of the conversation rather than a hand-off to another system. There are two directions to understand. In a user-initiated call, the customer taps the call button inside your WhatsApp chat and rings your business; your BSP delivers a call-connect webhook and the audio is bridged to your agents or contact-centre stack. In a business-initiated call, your system rings the customer — but only after the customer has explicitly permitted it, so unsolicited cold-calling is not possible. Because it is WhatsApp VoIP, calls are end-to-end encrypted, work over any data connection, and carry no per-minute telecom charge from a mobile carrier.
- User-initiated: the customer taps 'call' inside your chat and reaches your business
- Business-initiated: your system calls the customer, but only with prior permission
- Runs on WhatsApp's encrypted VoIP — internet audio, not a PSTN telephone call
- Managed through your WhatsApp Business API provider, not the consumer app
Why it matters for Indian businesses
India is a WhatsApp-first market, so a customer who has been chatting with your brand expects to stay in that chat when things get complicated. Voice inside WhatsApp removes the two biggest points of drop-off: dialling a helpline (and navigating an IVR to explain themselves from scratch) and identity verification. When a call happens inside an existing WhatsApp thread, the agent already sees the order, the ticket, and the message history, so nobody starts cold. This is genuinely useful for high-intent, high-friction moments — a loan applicant stuck on a document upload, a shopper hesitating on a large purchase, a delivery that needs a quick address confirmation, or a support case that is faster to resolve by voice than by typing. Keeping the interaction on one channel also keeps the conversation record in one place, which matters for quality monitoring and dispute handling.
How it works in practice
Calling capability is enabled at the phone-number level in the WhatsApp Business Platform and configured through your BSP. Once turned on, incoming calls surface as webhook events your platform can accept, reject, or route, and outgoing calls are placed through the API — subject to the customer having granted permission. Meta enforces guardrails to protect the user experience: business-initiated calls require an explicit opt-in (typically captured through a call-permission request the customer approves in-chat), there are limits on how often you may ring someone, and a caller must respect the customer's choice rather than retrying endlessly. Practically, most teams pair calling with their existing message flows: a chatbot or agent offers 'talk to us' at the right moment, the customer consents, and the call connects with full context. The exact rollout, number eligibility, and any usage rates depend on Meta's current program and region, so onboarding is best done with a partner who tracks the live status.
- Enable calling on the number, then configure routing through your BSP
- Inbound calls arrive as webhook events to accept, reject, or route to agents
- Outbound (business-initiated) calls require a granted call-permission opt-in
- Frequency and behaviour limits apply to protect users from spam calling
Common mistakes and misconceptions
The most frequent error is treating the WhatsApp Calling API as a replacement for a full cloud telephony or PSTN system — it is not a dialer for cold outbound campaigns, and any attempt to bulk-call customers without consent will breach policy and risk your number's quality rating. A second misconception is that enabling calling automatically lets you ring anyone who has your number; business-initiated calls need explicit permission first. Teams also confuse calling with messaging billing: voice is a separate capability from message delivery, so it does not change how your marketing, utility, and authentication template messages are priced. Since 1 July 2025, WhatsApp bills those messages per delivered message by category, with the 24-hour service window remaining a free reply window rather than a billing unit — the Calling API sits alongside that model, not inside it. Finally, do not assume feature parity across every country and number on day one: availability rolls out in phases, so confirm eligibility before you design a voice-first flow.
- It is not a mass-outbound dialer — no cold calling, consent is mandatory
- Enabling calling does not grant permission to call any contact
- Voice is separate from message billing and does not alter template pricing
- Availability rolls out regionally — verify your number is eligible first