Telerivet's direct integration with WhatsApp makes it easy to set up a WhatsApp Business Account and send and receive messages with WhatsApp users in any country.
Telerivet's integration supports many WhatsApp messaging features, including:
- sending WhatsApp template messages
- sending and receiving images, audio, video, or documents
- sending link buttons to make it easy for a user to take action on your website (without showing the full URL in the message), and optionally tracking clicks
- sending quick-reply buttons to make it easy for recipients to send common responses (e.g., responses to a multiple-choice question)
- configurable fallback to SMS or other channels when sending messages to contacts who don't have WhatsApp
By default, Meta will charge you directly for the usage fees incurred by your WhatsApp Business Account, and Telerivet will charge you separately for usage of the Telerivet platform. For organizations that are unable or choose not to pay Meta directly, Telerivet supports passing the Meta charges through to your Telerivet account.
WhatsApp Pricing
Until July 1, 2025, Meta charges for WhatsApp on a per-conversation basis. Meta charges for conversations that you initiate, with pricing that depends on the category of the template message (marketing, authentication, or utility) as well as the country of the recipient.
As of November 1, 2024, Meta announced that all WhatsApp service conversations are free – if a mobile phone user initiates the conversation, Meta doesn't charge for any messages within the 24-hour customer service window.
View conversation-based pricing details »
When paying Meta directly, Meta only accepts payment via credit/debit cards in certain countries. If your organization can pay Meta directly via credit/debit card, we recommend using this method.
If your organization can't pay Meta via credit/debit card, it's possible to pass through Meta's WhatsApp usage fees to your Telerivet account. When WhatsApp usage fees are passed through to Telerivet, an additional per-message fee will apply. If you need to pay for WhatsApp charges via your Telerivet account, contact support.
Note: Meta has announced that they plan to switch to per-message pricing for WhatsApp as of July 1, 2025 (see details).
Adding a WhatsApp route
Setting up a WhatsApp route in Telerivet only takes a few minutes. Telerivet will step you through the process of creating a WhatsApp Business Account, verifying a phone number, and connecting it to your Telerivet account.
To add a WhatsApp route within a Telerivet project, click Routes > Add Route, then select "Chat App" and click WhatsApp.
In some Telerivet projects, it may be necessary to request Telerivet to enable WhatsApp before you can add a WhatsApp route.
When you click "Login with Facebook", a window will open that guides you through several steps, shown below.
The first step is to create a Meta business portfolio, or select an existing business portfolio:
The next step is to create a WhatsApp Business Account, or selecting an existing account, as well as to create or select a business profile corresponding to a WhatsApp display name and phone number. (Each WhatsApp Business Account can have multiple phone numbers associated with it, with different display names.)
When adding a new phone number, it is necessary to verify ownership of that phone number via phone call or SMS and linking it to your WhatsApp Business Account.
After creating a new business portfolio, Meta will verify your organization's name and review the website URL provided to ensure that it is a valid business or organization. Meta may restrict access to WhatsApp Business Account features if they determine that your organization is prohibited or if the information provided is invalid.
Configuring Billing for WhatsApp
If your account has been configured so that WhatsApp usage fees are passed through to your Telerivet account, you can skip this step.
After adding a WhatsApp route, go to the Meta Billing and Payments page and follow the steps to add a business payment method (credit or debit card) to your Meta account.
On the WhatsApp Business Accounts tab, select your WhatsApp Business Account and ensure that it is linked to your business payment method:
Meta will automatically charge your card when a certain balance is reached based on your usage. Your current balance can be seen on the Accounts page, by selecting the WhatsApp Business Accounts tab.
Increasing WhatsApp Messaging Limits
Meta limits each WhatsApp number to a certain number of business-initiated conversations per 24 hours. Initially, this limit is 250 business-initiated conversations per 24 hours.
To increase this limit, submit your business to Meta for business verification. Meta may also increase your limit automatically based on your usage and your phone number's quality rating (view details).
Submitting and Sending Message Templates
In order to send WhatsApp messages that are not in response to a message received from a mobile phone user, the message must match an approved template. You can submit templates to Meta for approval via the WhatsApp Manager.
When the template is approved by Meta, it will automatically be synchronized with the Templates dialog in Telerivet:
To quickly find a template, you can search templates by their name or content. Templates that are synchronized from WhatsApp are shown with "[WhatsApp]" next to their name. These templates only be edited in the WhatsApp Manager, and cannot be edited directly in Telerivet's Templates dialog.
To select a particular template message to send, click the template in the Templates dialog. (It is also possible to type or copy/paste the text of the template directly without using the Templates dialog.)
If the template message has any parameters, like {{1}}, {{2}}, {{3}}, you'll need to fill those parameters in with the actual values before sending the message. It is possible to fill the parameters in with a variable like [[contact.name]] or [[contact.vars.example]].
The first template parameter will be selected by default when you select a template from the Templates dialog, and you can use Tab and Shift+Tab to navigate between parameters.
When sending a message, if the message content matches the Body section of one of the approved templates in your WhatsApp Business Account, Telerivet will automatically send it as a template message. In order for a message to match a template, the message content must match the template body exactly (although any value can be used in place of one of the template parameters).
If the message doesn't match the Body section of an approved template, the message will be sent as a non-template message, which will only work if the contact has sent a message in the past 24 hours.
Sending Media Attachments
When composing a message in Telerivet, click "Media" to select a media attachment. This can be used when sending both template and non-template messages.
In order to send template messages with media attachments, the template must be configured with a Header with the type Image, Video, or Document. (Audio files can only be sent as non-template messages.) If the template requires a certain type of attachment, the message must have an attachment of a compatible type in order for the template to be matched.
Sending Link Buttons
When composing a non-template message in Telerivet, click "Link Button" to configure a button that the user can click to open a website URL. The button text and URL can be dynamic and use variables like [[contact.vars.example]] if needed.
Telerivet can optionally track clicks on the link button, by selecting "Shorten links / track clicks". Since the URL is not visible to the user, it will have no visible effect in the message.
When sending template messages, link buttons must be configured within the template itself. When defining the template in the WhatsApp Manager, add a "Visit website" button.
When sending a template message in Telerivet, do not use the "Link Button" option. The template will be matched based on the message text and the template's Body section, and the link button configured in the matched template will automatically be added to the message.
Note: When sending template messages, Telerivet currently only supports static URLs within link buttons. Dynamic URLs with parameters are not supported in link buttons within template messages. The "Shorten links / track clicks" feature is also not supported in link buttons within template messages. However, it is possible to send dynamic or shortened links in template messages in place of a template parameter like {{1}} in the Body section of a template.
Sending Quick Reply Buttons
When composing a non-template message in Telerivet, click "Quick Replies" to configure up to 3 buttons to send along with the message that the contact can click to easily send a particular reply. If the user clicks the button, an incoming message will be received in Telerivet with the content exactly the same as if they had typed the text of the button directly. Quick replies can be dynamic and use variables like [[contact.vars.example]] if needed.
When sending template messages, quick reply buttons must be configured within the template itself. When composing the template, add up to 3 "Custom" quick reply buttons and enter the reply text.
When sending a template message in Telerivet, do not use the "Quick Replies" link. The template will be matched based on Body section of the template and the message text, and the quick replies configured in the matched template will automatically be added to the message.
Configuring Fallback to SMS or other channels
When sending messages via a WhatsApp route, if the recipient phone number does not have WhatsApp installed, they will not receive the message. In this case, the message will have the Failed status in Telerivet, with the error message "Message Undeliverable."
If you need to send messages but you don't know which recipients have WhatsApp installed, you can configure Telerivet to automatically fallback to SMS or another messaging channel after a message fails to send via WhatsApp.
There are two ways to implement automatic fallback in Telerivet: Custom Routes and Message Status Services. Custom Routes are easier to configure for the most common cases, while Message Status Services are more advanced but support more customizable actions when a message fails to send.
Either way, your project will need at least one other route that supports sending text messages (SMS, MMS, or another chat app like Viber). In some cases, it may be possible to use the same phone number for SMS as for WhatsApp. However, fallback to SMS is also possible when using a different phone number or alphanumeric sender ID.
Learn more about the types of routes available in Telerivet »
Configuring Fallback via Custom Routes
Using Custom Routes, it is possible to configure another route to use if the WhatsApp route fails to send a message.
To create a Custom Route, go to Routes > Custom Routes > Add Custom Route in your Telerivet account.
First, click "Add action..." then click "Choose route(s) to send message" and select your WhatsApp route.
Then, click "Add action..." again, then click "Choose route(s) to send message" and select the route to use if the message fails to send via the WhatsApp route. The two routes should be listed in separate steps, with the WhatsApp route on top, as shown below:
When sending messages via the Custom Route as defined above, if the message is sent successfully via the first route, the second route will not be used. If the message fails via the first route for any reason, Telerivet will automatically retry sending the message via the second route.
If you don't want to automatically resend all failed messages, it is also possible to configure your custom route to only resend messages for certain failure reasons. The WhatsApp Cloud API returns various numeric error codes for certain failure conditions, such as when a message is undeliverable (error code 131026) or when a non-template message was sent to a recipient more than 24 hours after they last replied (error code 131047).
In Custom Routes, the [[error_code]] variable will be set to the WhatsApp Cloud API's numeric error code if the message fails to be sent via a WhatsApp route. This variable can be used to determine whether or not to retry sending the message.
To retry sending the message only for certain WhatsApp error codes, click "Add condition...", select the [[error_code]] variable on the left side, and enter the error code on the right hand side. (To match multiple error codes, click "or...".). Then, click "Add action..." within the condition and add the fallback route, as shown below:
Configuring Fallback via Message Status Services
Using Message Status Services, it is possible to configure custom actions to be triggered when a WhatsApp message's status changes to "Failed". Custom actions may include:
- resending the message immediately or after a delay (via a different route or even retrying via the same WhatsApp route)
- sending an email notification
- adding or removing the contact from a group
- updating contact variables
- blocking sending messages to the contact
- adding a label to the message
- updating custom variables on the message
- notifying a webhook URL
- running custom JavaScript code with the Cloud Script API
Message Status Services provide more flexibility than Custom Routes, which only support resending the message immediately via a different route.
To configure fallback via a Message Status Service, go to the Services page and click Add New Service > Custom Actions > "When message status changes".
Select the status "Failed" and deselect the other statuses.
Expand "Advanced settings" and select your WhatsApp route (otherwise the service will handle all routes by default).
Click "Add action..." then click "Resend message". Click "same route" then select the route to resend the message from.
The actions in the screenshot above will resend all failed messages from the WhatsApp route via another route, regardless of the reason why the message failed. If you only want to resend messages that fail for certain reasons, you can add conditions that use the [[error_code]] variable to handle particular numeric error codes returned by What'sApp Cloud API, such as error code 131026 when a message is undeliverable:
One of the advantages of Message Status Services is the flexibility to add custom actions besides simply re-sending the message. For example, if you receive the error code 131026, you could add the contact to a group of contacts that don't currently use WhatsApp:
Note: If a project has Message Status Services that handle messages in the "Failed" status and has Custom Routes, Telerivet will trigger the Message Status Services for failed messages, but will not attempt to retry sending failed messages via a Custom Route.
Fallback to SMS When Sending Media Attachments, Link Buttons, and Quick Replies
Telerivet's WhatsApp integration supports several features that are not available in SMS, such as media attachments, link buttons, and quick replies. If a WhatsApp message using these features is automatically re-sent via an SMS route, the SMS message will appear as follows:
- Media attachments will not be included in the SMS message
- Quick replies will not be included in the SMS message
- If the message contains a link button, a new line of text will be added to the end of the SMS message with the button text, a space, and the link URL. Note: this will increase the number of characters in the SMS message and may increase the number of SMS parts.
Telerivet supports sending messages up to 2,000 characters in length, although certain SMS providers may have lower character limits. If an SMS message has too many characters to fit in a single SMS part, it will automatically be sent as a multipart concatenated SMS message, which may increase the costs of sending SMS messages (learn more).
Comments
0 comments
Article is closed for comments.