Whatsapp Cloud API
Last updated
Last updated
You can now migrate your connected WhatsApp 360dialog account to respond.io WhatsApp Business API to enjoy higher reliability, lower costs, and access to new features. Learn more about the migration process here.
To connect WhatsApp Cloud API, a Facebook app with WhatsApp Product enabled is required. Read this guide on how to set up your Facebook app.
Facebook announced the release of WhatsApp Cloud API on 20th May, and it’s available to any business of any size, big and small to communicate with customers using the official WhatsApp API.
This channel has a limited 24-hour messaging window due to WhatsApp regulations.
To chat with your customers over WhatsApp Cloud API, connect a WhatsApp Business Profile and Meta Business Account.
Facebook App and Meta Business Account are required and you must be the admin of both to connect.
Step 1: Navigate to Workspace Settings > Click Add Channel
Step 2: Locate the WhatsApp Cloud API Channel > Click Connect.
Step 3: Click the Connect With Facebook button.
Step 4: Sign in using the Facebook account with admin access to the Facebook App and Meta business account.
Step 5: In the dropdown list, select the WABA name with the WhatsApp number you would like to connect.
Step 6: Add the Callback URL. Go back to the WhatsApp section in Facebook Developer App. Navigate to the Configuration subsection and set up the Callback URL. Add the generated Callback URL and verify the token from YesHello to the corresponding fields at the webhook dialog.
Step 7: On the Facebook App, verify and save changes to the app.
Step 8: Subscribe to the webhook event. On your Facebook App, select the Webhooks tab under the Products panel and select WhatsApp Business Account in the dropdown list. Click on subscribe messages event.
Step 9: Click the toggle at the top of the page to turn on live mode.
Remember to fill in your privacy policy URL. If this is blank, you will not be allowed to turn on live mode.
Step 10: Click Save Changes to complete the setup.
Once you've completed the setup, any messages sent to your WhatsApp number will now be received in your Workspace.
WhatsApp Cloud API Channel can be configured with a unique Channel name.
Step 1: Navigate to Workspace Settings > Click Channels.
Step 2: Locate the WhatsApp Cloud API Channel > Click Manage.
Step 3: Configure the Channel name, which is used internally to identify the account.
Step 4: Click Save Changes to update the channel configuration.
Different channels provide different sets of Contact’s metadata to YesHello platform. Here’s the list of Contact’s data you’ll be able to obtain from this channel:
Phone number
Phone number ID
Profile name
Whatsapp ID
If there is a need to make a change or check your WhatsApp Cloud API Profile, it can be done on the YesHello platform.
Step 1: Navigate to Workspace Settings > Click Channels.
Step 2: Locate the WhatsApp Cloud API Channel > Click Manage > Profile.
Step 3: Click Sync Profile to obtain the latest WhatsApp Business Profile information from WhatsApp.
Step 4: Edit the following information as needed.
Fields
Description
Profile Photo
Image shown as the profile picture of the WhatsApp business account.
An image size of 640x640 is recommended.
About
The business's About text. This text appears in the business's profile beneath its profile image, phone number, and contact buttons.
Address
Address of the business. Maximum of 256 characters.
Description
Description of the business. Maximum of 512 characters.
Email address (in valid email format) to contact the business. Maximum of 128 characters.
Vertical
Industry of the business. Must be one of these accepted values:
Automotive
Beauty, Spa and Salon
Clothing and Apparel
Education
Entertainment
Event Planning and Service
Finance and Banking
Food and Grocery
Public Service
Hotel and Lodging
Medical and Health
Non-profit
Professional Services
Shopping and Retail
Travel and Transportation
Restaurant
Other
The business vertical cannot be set back to an empty value after it is created.
Website
URLs (including http://
or https://
) associated with the business (e.g., website, Facebook Page, Instagram). Maximum of 2 websites with a maximum of 256 characters each.
Step 5: Review the information and click Save Changes.
Before sending a message template to a Contact on the YesHello platform, ensure you've done the following:
Submitted the message template for approval
Added the approved message template to the Workspace by syncing the message template
Step 1: Navigate to Workspace Settings > Click Channels.
Step 2: Locate the WhatsApp Cloud API Channel > Click Manage.
Step 3: Click Templates > Submit Template to submit a message template for approval.
Step 4: Fill in the required information needed to create a template.
Field
Description
Template Name
The name can only contain lowercase alphanumeric characters and underscores ( _ )
Category
The category to which the message template belongs.
Language
The language that the template is written in.
Step 5: Create the message by filling in the necessary components, then review the message in the preview section. You may include parameters {{1}}, {{2}}, etc. as placeholders to be filled in with personalized content.
Building Block
Description
Body
The Body contains the most important text of your template. Only text is supported.
You may use markdown to format the content of this block. Learn more here.
Header
The Header is optional and serves as the title or header of your template. It supports the following:
Text
Image
Video
Document
* YesHello platform accepts uploads up to 20MB in size.
Footer
The Footer is optional and only supports text. It can be used to provide supplementary information in your message template.
Button
The Button is optional and adds interactivity to your templates. There are two types available:
Call To Action Button
Used to send your client to a Website or call a Phone Number
Maximum one URL and Phone Number per template
URL can have a parameter or personalization
Quick Reply Button
Used to get quick answers from your client
Maximum 3 Quick Reply buttons per template
Each Quick Reply button cannot have more than 20 characters
* Quick Reply Buttons are supported only on iOS, Android and web platforms, but not on Windows platform. Refer to more details here.
Step 6: Provide sample value
This is only applicable if you have included any parameters in your message template content.
Providing sample values to the parameter in the message template will assist the WhatsApp reviewer in understanding the message you are trying to send to your Contacts.
Important Link: WhatsApp Message Template guidelines
Step 1: Navigate to Workspace Settings > Click Channels.
Step 2: Locate the WhatsApp Business Platform (API) channel > Click Manage.
Step 3: Click Templates > Sync Template to begin the syncing process.
The synchronization process has been completed. This means:
The message templates will be listed with their corresponding statuses.
The last synced date time will be updated.
If your template is rejected, the rejection reason will be displayed below the rejected message template.
The following table lists the possible statuses for the message templates:
Status
Description
Submitted
The message template is submitted and pending approval.
Approved
The message template is approved and can be sent to contacts.
Rejected
The message template is rejected and cannot be used.
Use the search and filter at the top right corner of the listing to easily find your templates!
The file type supported by WhatsApp and the maximum file size for the type is as follows:
Audio & Video (16MB)
Document (100 MB)
Image (5 MB)
Sticker (100 KB)
Messages that are not supported will have a fallback display with Unsupported Message or Custom Payload text and Type (if available). For any unsupported file type or file that exceeds the maximum file size sent via WhatsApp Cloud API, the file will automatically be turned into a URL link on the YesHello platform. For Custom Payload, you can click Show More to view the JSON payload of this message. Examples of unsupported messages for WhatsApp Cloud API are: - Contact Card - Reactions - Deleted Message - Polls - Ephemeral Message
A rate limit is the number of API calls an app or user can make within a given time period defined by the channel. Learn more about the rate limits for this channel here.
Make sure that the number you've connected to the platform is a WhatsApp Cloud API number.
This can happen when the messages webhook is not subscribed.
Step 1: Navigate to the Facebook App Webhook page
Open the Facebook App and navigate to the Webhooks page.
Step 2: Verify the subscribed event
Select Whatsapp Business Account and verify if the messages event is subscribed.
Step 3: Send a test message
Send a test message to the WhatsApp phone number and check if it arrived.
When the user connected to WhatsApp Cloud API changes their Facebook password, the permissions will be outdated and need to be refreshed.
Step 1: Navigate to Workspace Settings > Click Channels.
Step 2: Locate the WhatsApp Business Platform (API) channel > Click Manage.
Step 3: Click Troubleshoot > Refresh Permission to refresh WhatsApp permissions.
Step 4: Send a test message to the WhatsApp phone number and check if it arrived.
This can happen due to a few reasons:
When the session for validating the access token has expired.
There was a change to the user's admin privilege in Meta Business Manager.
There was a password change on Meta Business Manager.
To solve this error, you must refresh your WhatsApp Cloud API channel permissions and send a test message again.
You must be the admin of the Meta Business Manager to be able to refresh permission.
This can happen when the Contact has not agreed to WhatsApp terms and privacy policy.
If your Contacts cannot receive messages from your WhatsApp Cloud API number, make sure that they have agreed to the latest WhatsApp terms and privacy policy.
The phone number used for WhatsApp Cloud API can't be used in the WhatsApp personal or business app. You'll have to delete the account on the WhatsApp personal or business app before you can use the number to sign up for awhatsApp Cloud API.
You can still use the number for other purposes, such as calling and receiving SMS after registering it on the WhatsApp Business Platform.
Once you use a phone for WhatsApp Cloud API you can no longer use that number on the WhatsApp Business App.
It isn’t mandatory to complete Facebook Business Verification to start sending messages on WhatsApp. Without business verification, your business will still be able to:
Respond to unlimited user-initiated conversations.
Send business-initiated conversations (message templates) to 250 unique customers in a rolling 24-hour period.
Register up to 2 phone numbers.
Businesses can initiate Business Verification only when they're ready to scale business-initiated conversations or want to become an Official Business Account.
Yes, you can monitor your messaging and spending analytics in real-time for your WhatsApp business account in the Insights tab of your Meta WhatsApp Manager. Read more here.
Messaging limits determine the maximum number of business-initiated conversations each phone number can send in a rolling 24-hour period. These limits do not apply to user-initiated conversations. A business-initiated conversation starts when the first message is delivered to a customer and ends 24 hours later. Read more here.
You can add a payment method to your Whatsapp Business account in Business Manager. Learn how to add a payment method to your WhatsApp Business Account here.
This is most likely due to you exceeding the monthly free tier threshold without a valid payment method. To resolve this issue, add a valid payment method.
WhatsApp API uses a conversation-based pricing model that charges businesses for the number of conversations they have. A conversation starts when your business' message is delivered to a customer and lasts for a 24-hour customer service window, during which any number of messages can be exchanged between the customer and the business. Businesses incur charges for each individual conversation, regardless of how many messages are sent or received within that customer service window.
Learn more about WhatsApp Pricing here.
There are a few requirements and steps needed to delete a phone number, read more here.
You can send a test broadcast from the platform using the Meta test number. However, a broadcast using the test number is limited to five recipients. You must first add these five recipients to the phone number list in the Meta Developer tools.
If you do not add recipients to this list or if you attempt to send a broadcast to recipients not on this list, you will receive this error message:
No, this number is automatically provided to all accounts to use for sending test messages and cannot be deleted. Just be careful to note that this is a test number not to be used for other purposes.
WhatsApp passes the Contact’s phone number in a format that is different from the E.164 format that YesHello uses. This difference causes Contacts from certain countries to be duplicated. Should this occur, do reach out to our hotline number.
To change your Cloud API display name, follow these steps:
Navigate to Your FBM > WhatsApp Account > Phone Number. This page displays your messaging limit and quality.
Hover over the pencil icon next to the display name to enable editing.
Click Next to submit your new display name to Meta for approval.
Await confirmation of approval from Meta.
After receiving approval from Meta for your new display name, complete the following steps:
Re-register your phone number using the newly approved display name.
Execute a POST API call to verify your phone number.
Make another POST API call to re-register the verified phone number.
Once successful, your Cloud API's display name update is complete.
This error will occur if you have recently updates your Facebook credentials, it may disrupt the Channel connection on our platform, leading to errors when sending messages.
To resolve this issue, you need to refresh the channel permissions on our platform using your updated Facebook credentials. This process requires an Admin role. By refreshing the permissions, you'll re-establish the connection with the new credentials, ensuring that your outbound messages are sent successfully without encountering errors.
If you have a question, feel free to contact our support team here