Set up a transactional WhatsApp message
Transactional WhatsApp messages are messages that your audience implicitly opts-into, like order confirmations, password reset codes, or account verification messages. You can send transactional WhatsApp messages programmatically through Customer.io.
Like transactional SMS, you must send a transactional WhatsApp message with a template. WhatsApp also requires you use a WhatsApp-approved content template.
Before you begin
Before you can send transactional WhatsApp messages, you need to:
- Enable WhatsApp in your workspace and set up a WhatsApp-approved sender.
- Create one or more WhatsApp-approved content templates. WhatsApp requires that messages use content that Meta has reviewed and approved before you can send them.
- Get your App API key. This is the bearer token that you’ll use when you call the transactional API to trigger a message.
Create a transactional WhatsApp message
You have to create a message template before you can send a transactional whatsapp message. Make sure it’s a WhatsApp-approved content template before you start sending messages. Then when you send a transactional WhatsApp message, you include the transactional_message_id of the template you created.
-
Go to Transactional, and click Send your first message or Create message—depending on whether you’ve already started creating transactional messages.
-
Give your message a Name and a Description and then click Next: Add Content. The name and description help your team members understand what kind of message this is (like “Two-Factor Authentication” or “Password Reset Code”).
-
Select WhatsApp and click Add Content.
-
Choose the WhatsApp content template you want to send. Templates labeled “Approved” have been approved by Meta and are ready to send.
-
Preview with sample data to see how your variables render.
-
Check that you’re sending to your desired WhatsApp-approved sender.
-
Click Save Changes and then click Done to finish set up.
-
Click Next: Configure Settings to review or change your message settings. In general, we recommend you use our defaults and set a trigger name so that it’s easier to send your message later.
-
Send to unsubscribed profiles? Unsubscribed profiles probably still want to receive your important transactional messages like order confirmations and password resets.
-
Enable link tracking? By default, we’ll track clicks on links in your transactional WhatsApp messages. Disable this setting if you don’t use our link shortening feature or want to keep the original links intact.
-
Protect sensitive data by disabling message retention? This setting prevents Customer.io from retaining your message content. You might want to do this to conceal sensitive messages, like password reset codes or verification tokens.
-
Queue messages as drafts? This setting generates a draft for every message you trigger rather than sending them automatically. You can review these messages under the Drafts tab and decide whether to send or delete them.
-
Assign message frequency limit?: If you want to count this transactional message as part of a message limit, turn this on and select your pre-made limit. Otherwise, click Manage message frequency limits to set one up in workspace settings.
-
Set a Trigger Name: This is a friendly name for your message that you can use instead of the
transactional_message_idwhen you send your message. It may help make your integration more human-readable if you use triggers that represent the kinds of messages you send—likepassword_resetororder_confirmation.
-
-
Now you’re ready to send your message. You can adapt the code sample on the Send Message screen to your code—wherever you intend to trigger transactional messages—or use our API directly. Send a test message to make sure your integration works as expected.