A customer taps call in their WhatsApp chat with your number and a published voice agent answers. Enable it with a whatsapp.call.inbound trigger on a Twilio WhatsApp integration. From then on it is an ordinary voice call — recorded, analysed and billed like a phone call, able to end the call and press keypad buttons — listed under Calls as WhatsApp. Gupshup numbers cannot take calls.

Prerequisites

  • The number is a WhatsApp integration on Twilio.
  • Your WhatsApp Business Account has a messaging limit of at least 2,000, which Meta grants after Business Verification. Below it, Twilio refuses to turn calling on.
  • The sender’s Voice Endpoint Configuration in Twilio is empty. Talqing will not replace one that points at another app.
  • A published voice agent whose required variables all have defaults — a call carries no request to supply them.

Turn calls on

Pick a published voice agent in the number’s Calls cell under WhatsApp → Numbers, or:
Talqing creates a TwiML app named Talqing WhatsApp calls +<number> in your Twilio account and sets it on the sender; nothing else in Twilio or Meta needs touching. The call button then appears in the customer’s chat with your number (reopening the chat’s info page shows it sooner). Disabling the trigger, or disabling or deleting the integration, clears the sender’s voice configuration and deletes the app. Enabling the integration again turns calling back on. Every WhatsApp call is hosted in the us region, whatever the number’s country.

One thread per person

A call and an open chat with the same person are one conversation: the voice agent sees the chat so far, and the text agent’s next reply sees the call. A WhatsApp call always continues their open WhatsApp chat, whatever the voice agent’s conversation.context says; with no open chat it joins their newest conversation. The caller is the same phone:<your number>:<their number> contact as their messages and their phone calls to that number. Every call, even one that is refused, refreshes their 24-hour messaging window. A batch row’s columns are in userdata too. A caller who hides their number shows as WhatsApp user in Calls and has no phone number variables.

Messages during a call

What the caller sends in the chat while the call is on goes to the voice agent, not the text agent: an email address they type, a photo, a PDF. The voice agent reads it as sent on WhatsApp and answers out loud, unless the caller is speaking, in which case their turn picks it up. No chat reply is sent, and the message appears in the call’s transcript. Images reach the agent only if its model can see them, and voice notes are not transcribed during a call. The same holds on a phone call to a number that is also your WhatsApp number.

No transfer to a phone number

Meta does not allow a WhatsApp call to be bridged to the phone network. A transfer fails with calls on WhatsApp can't be transferred to a phone number, and its on_failure runs.

Cost

Twilio bills the WhatsApp leg and the SIP leg to Talqing per minute, on your Twilio account. Meta charges nothing for a call the customer starts. Talqing charges the voice platform fee, and your AI providers bill as for any call.

When something goes wrong

Next

WhatsApp

Connect the number and answer its messages.

Inbound calls

What any inbound voice session knows and can do.