Message types
There are two types of messages when using WhatsApp for business communications. Depending on chat initiation and time frame, you will have to use these message types interchangeably.
- Templates - Preformatted and non-editable messages approved by WhatsApp
- Free-form - Standard free-flowing messages which support all media types
The message type you use depends on if you are messaging customers within the messaging window. Regulation dictates that you must stick to pre-approved message templates when messaging customers outside of this window.
Message templates
Message templates ensure that business-initiated communication follows WhatsApp guidelines. Message templates contain predefined text and are preformatted. These templates can be reused when there is a need to send the same message multiple times.
When you send a message template, you can send the template identifier (template name) instead of sending the message content.
Templates can contain placeholders. When you send the template message, you can replace the placeholders with values or personalized information.
Template headers can contain media that provide additional information. Templates can also be made interactive by registering buttons as part of the message.
Message templates include the following sections:
- Header
- Body
- Footer
- Buttons
To send notifications by using the WhatsApp Business Solution or the WhatsApp Cloud Business Solution, you must create and register your message templates and then submit the templates to WhatsApp for approval.
Make sure you are familiar with the template guidelines, as well as the limitations below.
Template names can contain only lowercase alphanumeric characters and underscores ( _ ). They cannot contain other characters or white space.
Header
Headers are optional. You can use headers to provide additional information to end users.
Headers can contain the following:
- Image
- Document
- Video
- Location (Early Access)
- Text (maximum of 60 characters, can include 1 placeholder)
Note
Direct link to media must be used in order to be displayed correctly. Youtube links are not considered direct links, but the links with extension ending such as .mp4 are. Check supported formats in Free-form section.
Body
The Body section is mandatory. The body must follow these guidelines:
- Can contain only text
- Can be registered either as plain text or as text with placeholders
- Can contain a maximum of 1,024 characters
- Must not contain newlines, tabs, or more than 4 consecutive spaces
- If you add sample content to one parameter, you must also add sample content to all other parameters
Footer
Footers are optional. They must follow these guidelines:
- Can contain only text
- Cannot contain placeholders
- Can contain a maximum of 60 characters
Buttons
Buttons are optional part of a template. In each, you can create 10 buttons from different categories:
- Quick reply - send fast predefined response. Limited to 10 quick reply buttons.
- Call button - input business phone number which customer can easily call you on by tap. Limited to one call button.
- Click to URL - tap and load specified URL in web browser. Limited to two URL buttons.
Text limit for each type is 25 characters.
Telephone number have 20 characters limit while URL 2000 characters.
Note
Buttons must be organized into two groups: quick reply buttons and non-quick reply buttons.
Template registration
1. Log in to web interface and select Channels and numbers.
2. Select WhatsApp.
3. Select the Senders tab.
4. For the desired sender, select three dots menu.
5. Select Manage templates.
6. Click Register template.
7. Define Template name, Category (Utility, Authentication, Marketing) and Language.
8. Follow specifications to register template successfully.
Free-form messages
Use free-form messages to send various message types. Cut-off control prevents messages from being delivered to users out of certain conditions.
Regular text messages or media messages (i.e. any non-message templates) can only be delivered within the first 24 hours since the customer last contacted your business. Message templates do not have this restriction and can be used if you need to contact customers outside of this window.
The following elements are available to send over WhatsApp, however, make sure to pay attention to element-specific limitations and supported options.
Text
Send a message in the form of text to customers. You can send text in any of the following formats:
- Bold (*using asterisks*)
- Italic (_using underscores_)
- Strikethrough (~using tildes~)
- Code (```using three backticks```)
Messages can contain up to 4096 characters per free-form message. Text limitations vary on the relevant sections in templates. You can also include emojis in text messages.
URL character counts are also included in message length limits. Make sure to keep text messages and URLs within the character limit. You also have the option to display URL previews in messages.
Documents
Send documents to customers. Documents should have names in the form of text, up to 240 characters. If no name is given, WhatsApp will assign one.
You can send the following document file types:
- DOC(X)
- PPT(X)
- XLS(X)
Document file sizes can be up to 100 MB.
Images
Send images to customers. You can also send messages in the form of an image and caption together. Image captions can be up to 3000 characters long.
The following image types are supported:
- JPG
- JPEG
- PNG
Image sizes can be up to 5 MB.
Audio
Send audio messages to customers. The following audio types are supported:
- AAC
- AMR
- MP4
- OPUS
Audio file sizes can be up to 16 MB.
Video
Send video messages to customers. You can also send messages in the form of a video and captions together. Video captions can be up to 3000 characters long.
The following video types are supported:
- MP4
- 3GPP
Video sizes can be up to 16 MB.
Stickers
Send stickers as messages to customers. There are a few formatting requirements to follow with stickers:
- WEBP files only
- Cannot exceed 100 kB
- Must be 512 x 512 px
- Must be 16px margin around sticker
- Must have transparent background
Animated stickers are not supported by WhatsApp.
Location
Send a static location in the form of a message. Location messages are in the form of interactive maps.
Included in location messages are your:
- Longitude - Coordinates between -180 and 180
- Latitude - Coordinates between -90 and 90
- Location Name - Name of the location (optional)
- Address - Address of the location (optional)
Contacts
Send a contact saved in your address book. This allows recipients to autosave contacts into their devices using a save button.
Contact messages consist of an array of contact-related objects. Each of those objects contains a further set of sub-objects.
High-level objects include:
- Name
- Address
- Emails
- Organization
- Phone
- URL
- Birthday
See the API section of these docs for more information about contact objects.
Interactive lists
Allow users to select from a list of up to 10 options to confirm a preference, e.g., a location for the service they are trying to find out more about.
Users will only be able to select one option at a time.
List messages are made up of the following:
- Header - Text shown at the top of the list message. Maximum of 60 characters (optional)
- Body - Message text content. Maximum of 1024 characters
- Footer - Footer text content. Maximum of 60 characters
- List
- List title - List button text. Maximum of 20 characters
- Section title - Not visible and used for reference. Maximum of 24 characters (optional)
- Row titles - Single selection options accompanied by a radio button
- Row descriptions - Provide additional context to selectable options (optional)
- List item title - Name of the list item. Maximum of 24 characters
- List item description - Details about the list item. Maximum of 72 characters (optional)
- Postback - Payload value for list item. Maximum of 200 characters
Interactive buttons
Use interactive buttons to send end users up to three options to choose from as an automated response. This allows them quickly reply selecting from the options that you provide.
These work in the same way as quick replies in message templates, but are available for free-form messages. Users will only be able to select one option at a time per message.
Quick reply messages are made up of the following:
- Header - Text up to 60 characters, or image, video, or document (optional)
- Body - Text up to 1024 characters
- Footer - Text only up to 20 characters (optional)
- Buttons - Up to 3 buttons, text only each containing up to 20 characters
Product message
Send an interactive message about a product or service that is present in your catalog. Customers can ask questions about the product, add the product to the cart, and submit the cart without leaving the chat.
To send a Product message, you must have a Meta catalog that is connected to your WhatsApp Business Account. Refer to the Manage Catalog section for more information.
Product messages contain the following components:
- Body (mandatory)
- Footer
- Action (mandatory)
The Action element contains the following components:
- Catalog ID
- Product Retailer ID: The product ID that is present in the catalog.
Note
Product messages are available over Answers, Conversations, and API.
Multi-product message
Send an interactive message about products or services that are present in your catalog. You can include a maximum of 30 products, presented in a maximum of 10 sections, in the message. Customers can ask questions about the product, add the product to the cart, and submit the cart without leaving the chat.
To send a Multi-product message, you must have a Meta catalog that is connected to your WhatsApp Business Account. Refer to the Manage Catalog section for more information.
Multi-product messages contain the following components:
- Header (mandatory)
- Body (mandatory)
- Footer
- Action (mandatory)
The Action element contains the following components:
- Catalog ID
- Section
- Title
- Product Retailer ID: The product ID that is present in the catalog.
Note
Multi-product messages are available over Answers, Conversations, and API.
Send Location CTA
Send Location CTA (Call-to-Action) button enables customers to send their location more easily.
Customers have option to share their location or location of a nearby place. Sharing live location is not supported.
Note that businesses cannot send "Send Location CTA" as a first message to the customers. If the customer has contacted the business in the last 24 hours, then this type of message can be sent.
Send Location CTA is available over API and can be used with the Answers Call API element.
Payments message
WhatsApp Payments enables customers to pay their order inside WhatsApp. Payment solutions consists of two different messages: order_details and order_status.
Send order_details message for payment initiation, which always contains the same four components: header, body, footer, and action.
Inside action component, include all the information needed for the customer to complete their payment.
After receiving payment signal for an order, you should communicate the confirmation of the payment to the customer via order_status message.
More information about WhatsApp Payments you can find here.
WhatsApp Flows
WhatsApp Flows enable business to create and iterate their own rich end-to-end customer experience that allow customers to complete tasks without leaving WhatsApp.
It represents a library of components, layouts, and connectors businesses can combine and mix with customer data to create a single data flow supporting custom use cases.
Each solution is tailored to the client's needs. WhatsApp Flows can be used as Offering products to customers, Manage orders and delivery, Collecting feedback Creating personalized offers, and so on.
Note
To integrate WhatsApp Flows, reach out to your Infobip Account Manager or contact support team by using Infobip contact form.
Inbound messages
Inbound messages are forwarded to you in real-time when you are using WhatsApp for two-way communication.
If you are forwarding messages to an API endpoint, you will need to grant permission to it for the Infobip platform. Connections can be secured with additional authorization headers.
Customers can send you the following WhatsApp components in messages:
- Text
- Image
- Audio
- Voice
- Video
- Document
- Location
- Contact
- Button
- Interactive button reply
- Interactive list reply
- Order message
- Other media
Received media is accessible for up to 30 days. It can be deleted within this time through the API
Quoted messages
End users can quote messages to indicate that they are replying to that message. The reply from the end user contains the quote ID.
Referral
On platforms such as Facebook and Instagram, when an end user clicks an ad that contains a click-to-WhatsApp button and sends a message to your business, you receive the following information about the ad, along with the message:
- Whether the user clicked an ad or a post
- URL of the ad
- Facebook ID of the ad
- Which headline was used
- Body from the ad
- Unique per click identifier
- Media information that user saw and clicked
Product question
If an end user sends you a question about the product in a Product or Multi-product message, the context of the inbound message contains information about the product.
Additional functionality
In the WhatsApp API, you can mark inbound messages as read.