CTA URL Buttons
How to send an interactive CTA (Call-to-Action) URL button message on the WhatsApp Cloud API — a button that opens a website when tapped.
On this page
A CTA URL button message shows a single tappable button that opens a URL in the phone's browser when tapped. Unlike reply buttons (which send data back to your server), a CTA button just opens a link. Use it for "Pay Now", "Track Order", "Visit Website", or any action that takes the customer to a webpage.
Sending a CTA URL button#
{
"messaging_product": "whatsapp",
"to": "919959623255",
"type": "interactive",
"interactive": {
"type": "cta_url",
"header": {
"type": "text",
"text": "Your order is ready!"
},
"body": {
"text": "Click below to complete your payment."
},
"footer": {
"text": "Secure payment powered by Razorpay"
},
"action": {
"name": "cta_url",
"parameters": {
"display_text": "Pay Now",
"url": "https://yourstore.com/pay/order-1023"
}
}
}
}Fields#
| Field | Required | Description |
|---|---|---|
action.name | yes | Always "cta_url" |
action.parameters.display_text | yes | Button label (max 20 characters) |
action.parameters.url | yes | The URL that opens when tapped |
header | no | Optional — supports text, image, video, document |
footer | no | Optional text below the button |
Real-world use cases#
- Pay Now → links to a payment gateway
- Track Order → links to a shipment tracking page
- View Invoice → links to a hosted PDF or invoice page
- Book Appointment → links to a booking form
Frequently asked#
How do I add a link button to a WhatsApp message?
Use type: "interactive" with interactive.type: "cta_url". Set
action.parameters.display_text as the button label and action.parameters.url as the URL
that opens when tapped.
What is the difference between a CTA button and a reply button?
A CTA button opens a URL in the browser — nothing comes back to your server. A
reply button sends the button's id to your webhook
when tapped. Use CTA for links; use reply buttons for bot interactions.
Can I add an image above the CTA button?
Yes. Add a header object with "type": "image" and the image URL.
How many CTA URL buttons can I add?
Only one per message. For multiple links, use a list message or send the links in the body text.
Gotchas & common mistakes#
Was this page helpful?
Still stuck? Open a support ticket and our team will help.