Skip to main content
A Request Contact Info template asks the customer to share their phone number with one tap. It is built for customers you can reach only by their business-scoped user ID — for example, someone who contacted you through their WhatsApp username, so you never received their phone number. When the customer taps the button, WhatsApp shares their number in the chat and the Gateway forwards a contacts message to your webhook.

How it works

  1. You create a template with a Request Contact Info button and wait for Meta’s approval.
  2. You send the template to the customer through the Messaging API.
  3. The customer taps Share Contact Info.
  4. WhatsApp posts the customer’s contact card in the chat.
  5. Your webhook receives an incoming message with type: "contacts" that contains the phone number.

Create the template in the panel

Follow the normal Create Template steps. In Step 4 — Template Content:
  1. Write the body. Explain why you need the number — for example, to deliver an order.
  2. Click + Add Button and select Request Contact Info.
  3. Click Next, review the summary, and click Create.
The button has no fields to fill in:
The body is the only place you can explain the request, so state the reason clearly. Customers are more likely to share their number when they know why you need it.

Send the template

The button is static, so you don’t add a button component. Send only the components your header and body need.
If the body has variables, add a body component exactly as for any other template. See Send Template Messages.

Receive the shared number

When the customer taps the button, your webhook receives an incoming message with type: "contacts". The envelope is the same as every other incoming message — see Incoming Message Events.
Sharing is the customer’s choice. If they never tap the button, no contacts message arrives. Don’t build a flow that waits for it indefinitely.