Template Messages

A message template is required for the Business to start a new conversation with User. This is required if there was no interaction between the accounts previously or if the last message sent by the User has more than 24h. See more information about this here.

Template messages must be submitted to Meta for approval before they are available to use. In addition, templates may be disabled automatically based on customer feedback. Once disabled, a template cannot be sent in a template message until its quality rating has improved or it no longer violates Meta's business or commerce policies.

Each WhatsApp Business Account can have up to 250 message templates. That means 250 message template names, and each of them can have multiple language translations. For example, a message template called hello_world translated into two languages counts as a single message template in regards to this limit.

Create and Manage your Template Messages

There are multiple ways to submit a Template Message for approval and manage your approved templates.

In the 360dialog Hub

The Template Management feature in the 360dialog WABA Management UI supports both text and media templates. See our Template Message Management documentation.

In the API

There are multiple ways to submit a Template Message for approval and manage your approved templates. Use the Create new WABA template endpoint to submit new template for approval.

You can also retrieve or delete template messages from a specific account.

Some important things to note:

Ensure that your templates meet Facebook's strict Message Template Guidelines.

  1. We support create and delete for templates. Editing a template is not yet available.

  2. The Create API call allows you to add a message template in a specific language.

  3. The Delete API call allows you to delete all translations of a message template you specify by name.

  4. When you create a message template, make sure to be consistent when providing translations.

  5. Every template has to be approved by Facebook.

    • You can use your template, as soon as its status changes to approved

      • This can take up to 48h. If your template is still in status submitted after two days, please contact Help and Support.

      • You can include allow_category_change=true in your API request to avoid template rejection due to miscategorization. Including this parameter and value will allow Meta to assign whatever category they determine to be appropriate.

To see the different elements that can be used in a Template Message, read Template Elements.

Create a template

POST https://waba-v2.360dialog.io/v1/configs/templates

Headers

{
    "category": "MARKETING",
    "components": [
        {
            "text": "Lorem ipsum dolor sit amet",
            "type": "BODY"
        },
        {
            "format": "TEXT",
            "text": "Lorem ipsum",
            "type": "HEADER"
        },
        {
            "text": "Lorem ipsum",
            "type": "FOOTER"
        },
        {
            "buttons": [
                {
                    "phone_number": "+1(650) 555-1111",
                    "text": "Lorem ipsum",
                    "type": "PHONE_NUMBER"
                },
                {
                    "example": [
                        "https://www.website.com/dynamic-url-example"
                    ],
                    "text": "your-url-button-text",
                    "type": "URL",
                    "url": "https://www.website.com/dynamic-url-example"
                }
            ],
            "type": "BUTTONS"
        }
    ],
    "language": "en_US",
    "name": "template_test_123",
    "namespace": "f65cda29_76cb_af89_cee6_f7f5b2a4006a",
    "rejected_reason": null,
    "status": "submitted"
}

Get template list

GET https://waba-v2.360dialog.io/v1/configs/templates

Path Parameters

Headers

{
  "count": 0,
  "filters": [],
  "limit": 1000,
  "offset": 0,
  "sort": ["id"],
  "total": 0,
  "waba_templates": [
    {
      "category": "string",
      "components": [
        {
          "format": "string",
          "type": "string"
        },
        {
          "text": "string",
          "type": "string"
        }
      ],
      "language": "string",
      "name": "string",
      "namespace": "string",
      "rejected_reason": "string",
      "status": "string"
    }
  ]
}

Delete a template

DELETE https://waba-v2.360dialog.io/v1/configs/templates/{template_name}

Path Parameters

Headers

{
    "meta": {
        "developer_message": "template name=`<template_name>` was deleted",
        "http_code": 200,
        "success": true
    }
}

Some things to keep in mind before deleting a message template:

  • If that message template name exists in multiple languages, all languages will be deleted.

  • Messages that have been sent but not delivered (e.g., if the customer's device is offline) will attempt to be delivered for 30 days.

  • If a message from an approved message template is sent 30 days after deletion, you will receive a "Structure Unavailable" error and the customer will not receive the message.

  • Once deleted, the name of an approved template cannot be used again for 30 days. Use a different name to create future templates.

Editing Templates

It is currently not possible to edit templates in the API. In the meanwhile, you can edit a template manually using the WhatsApp Manager > Account tools > Message templates panel or using the 360dialog Hub.

Template Categories

A template message can have three different categories:

  • UTILITY

  • MARKETING

  • AUTHENTICATION

Utility templates

Utility templates are typically triggered by a user action or request. They must include specificity about the active or ongoing transaction, account, subscription, or interaction to which they relate. For example, an order confirmation must contain an order number.

Any template that has a mix of utility and marketing content will be classified as a marketing template.

Authentication templates

Authentication templates enable businesses to authenticate users with one-time passcodes (usually 4-8 digit alphanumeric codes), potentially at multiple steps in the login process (e.g., account verification, account recovery, integrity challenges).

For a template to be classified as authentication, a business must:

  • Use WhatsApp’s preset authentication message templates, which include optional add-ons like security disclaimers and expiry warnings.

  • Configure a one-time password button (copy-code or one-tap)

  • Follow content restrictions: URLs, media, and emojis are not allowed for authentication template content or parameters. Additional length restrictions of 15 characters also apply to parameters.

See Authentication Templates documentation for the specific requirements.

Marketing templates

Marketing templates are the most flexible – they do not relate to a specific, agreed-upon transaction and instead may relate to the business and/or its products/services. These templates may include promotions or offers; welcoming / closing messages; updates, invitations or recommendations; or requests to respond or complete a new transaction.

Any template that has a mix of utility and marketing content will be classified as a marketing template.

Template Statuses

Once a Template Message is created and approved, it can have the following statuses:

  • In-Review: Indicates that the template is still under review. The review process is done by Meta and it can take up to 24 hours.

  • Rejected: The template has been rejected during our review process or violates one or more of Meta's Policies.

  • Active - Quality pending: The message template has yet to receive quality feedback from customers. Message templates with this status can be sent to customers and will be monitored for rating. See Quality Rating.

  • Active - High Quality: The template has received little or no negative customer feedback. Message templates with this status can be sent to customers. See Quality Rating.

  • Active - Medium Quality: The template has received negative feedback from multiple customers but may soon become paused or disabled. Message templates with this status can be sent to customers. See Quality Rating.

  • Active - Low Quality: The template has received negative feedback from multiple customers. Message templates with this status can be sent to customers but are in danger of being paused or disabled soon, so it is recommended that you address the issues that customers are reporting. See Quality Rating.

  • Paused: The template has been paused due to recurring negative feedback from customers. Message templates with this status cannot be sent to customers. See Template Pausing.

  • Disabled: The template has been disabled due to recurring negative feedback from customers. Message templates with this status cannot be sent to customers.

  • Appeal Requested: Indicates that an appeal has been requested. See Appeals.

You can see the exact payload of every status when received via webhook here.

Template Approval Process

Each template must be reviewed and approved by Meta, before you can send them to customers.

Category Validation

When you send a template creation request, Meta immediately validate its category using the template categorization guidelines.

  • If Meta agrees with the category you selected, the template status is set to PENDING; the template will then go through template review.

  • If Meta disagrees with your designation, the template will be created, but its status is set to REJECTED . This will trigger a message template status update webhook with reason set to INCORRECT_CATEGORY and the rejected_reason field will have the value TAG_CONTENT_MISMATCH.We recommend including the allow_category_change property set to true in your template creation request. This will prevent your template from being rejected due to miscategorization and ensure it continues to template review process. See Appeals.

In both cases, the template's initial status is returned as part of the API response with template ID, status, and category. For example:

Example Response

{
    "id": "572279198452421",
    "status": "PENDING",
    "category": "MARKETING"
}

Template Review

Templates with a status of PENDING are undergoing template review. Meta reviews the contents of each newly created or edited template to make sure it adheres to their content guidelines and policies.

The review process can take up to 24 hours. In case you encounter any delays with the approval process, please reach out to our Support Team.

Based upon the outcome of this review, it will automatically change its status to APPROVED or REJECTED, which triggers a message template status update webhook, that can have one of the listed statuses below.

Monitoring Status Changes

Based on the outcome of category validation and template review, Meta will set or change the template's status to one of the following values:

  • APPROVED — The template has passed template review and been approved, and can now be sent in template messages.

  • PENDING — The template passed category validation and is undergoing template review.

  • REJECTED — The template failed category validation or template review.

Businesses can only send templates with an Active status. You receive the template status by the template_message_update webhook

Template Rejection

The following templates will be rejected immediately:

  1. Spam/Scam templates

    • unsolicited electronic communications,

    • chain letters,

    • pyramid schemes,

    • illegal or impermissible communications.

    Refer to WhatsApp Policy Enforcement to learn more.

  2. Duplicated templates: Templates CANNOT have the same name, content, and language. This will be flagged immediately.

If your template is rejected, you have the following options:

  1. Correct the error and re-submit: Edit the template so they align with Meta guidelines, and resubmit to review. You can do this from the 360dialog Hub, or via WhatsApp Business Manager.

  2. Request review via Account Quality: Appeal the rejection directly through Business Manager. Go to Account Quality > ‘Rejected message templates’, check the rejected template, and select Request review

  3. Create a new template: Create a new template via API, 360dialog Hub or WhatsApp Manager to submit to the approval process. Make sure to create it with different name and content, otherwise it will be rejected immediately.

Template Pausing

If a message template reaches the lowest quality rating (a status of Active - Low quality), it will automatically be paused for a period of time. Pausing durations are as follows:

  • 1st Instance: Paused for 3 hours

  • 2nd Instance: Paused for 6 hours

  • 3rd Instance: Disabled

When a message template is paused (status of Paused) it can't be sent to customers, so you should suspend any automated messaging campaigns that rely on that template. Although you won't be charged for attempting to send a paused message template to a customer, and the attempt won't count against your messaging limit, the API will reject such attempts. You should only resume these campaigns once the template's status has been changed back to Active.

You may wish to edit a paused template if you feel that editing its content will reduce the amount of negative feedback it may receive. Keep in mind, however, that once you edit a message template and resubmit it for approval, its status will change to In Review and it can't be sent to customers again until it has been re-approved and the status set back to Active.

Having Paused Templates won't impact the WABA from which the message template was sent, or cause the Messaging Limit to decrease. Other high-quality message templates can continue to be sent from the phone number. However, if a business consistently sends message templates that reach a Low quality status, the WhatsApp Business Account may eventually be impacted. See WABA Policy Enforcement.

Unpausing

A template will unpause on its own after satisfying the pause duration outlined above. Once unpaused, the template's status will be set to Active and you may begin sending it to customers again. If you haven't suspended any automated messaging campaigns that relied on a paused template, they should start working again. However, we recommend that you hold any campaigns that rely on a template that has been paused until it is unpaused, because the API will reject your requests anyway.

The template's quality rating will also be reset to a value based on the most recent customer feedback the template has received.

Similar to pause notifications, Meta will notify you by WhatsApp Manager notification, email, and webhook once the template's status has been set to Active.

Unpausing through the WhatsApp Manager

You can unpause any paused template through the WhatsApp Manager by clicking the ‘manually unpause it’ link highlighted in the screenshots below:

Note that templates paused during Template Pacing must be manually unpaused before they can be used again.

Template Read Rates

Beginning April 1, 2024, Meta is including templates read rates as a key factor in determining the quality of Marketing Message Templates, as an addition to traditional metrics like blocks and reports. This means that Meta will temporarily pause marketing message campaigns with low read rates, giving businesses time to iterate/edit the templates with the lowest engagement before scaling volume. Use the message_template_status_change webhook for information and template statuses changes.

How to track template message read rates?

In the WhatsApp Manager, you can monitor message read rates in real time via a dedicated dashboard with message template metrics.

Go to WhatsApp Business Manager > Left side menu in "Account Tools" > Template messages.

Select any message template, then click the template Insights tab to see additional metrics, including “Messages Read”. You also receive a read event webhook for each message (if the user has turned the “read receipts” setting on) via the messages webhook. See Webhook Events and Notifications.

Note that Meta system accounts for variations in user availability, analyzing read rate trends over an appropriate period, instead of solely relying on immediate response times, for example, in cases where the user may not check messages during work hours, which could result in low read rates. This ensures a fair and realistic assessment of message engagement.

How to improve template messages read rates?

Here are some strategies to improve template messages read rates:

Audience: Tailor your messages to specific user segments for more relevant communication.

Timing: To maximize chances of engagement with your templates, consider not sending on days when many businesses are competing for your customers’ attention, such as weekends or seasonal peaks.

Frequency of Messages: Monitor how many marketing conversations a customer receives per day and week to avoid overloading the customer.

Cool downs: Give customers that have stopped engaging with your templates a break. Always include the option to opt-out of marketing conversations on WhatsApp.

Relevance of the Message: Make sure the subject line or preview text clearly indicates the message's relevance. Similarly, if previous interactions have been negative, this may discourage people from reading messages.

Optimize the first 60-65 characters: This is what people see first in their message preview on WhatsApp. Make it engaging, convey the main point, personalize it, and test different approaches to see what works best.

Template Appeals

You can submit Template Appeals from the WhatsApp Business Manager. Meta's team reviews the case against the appealed violation and decides the outcome, which typically takes 24 to 48 hours. The appealed violation will either remain Unchanged, or be set as Reversed. See our documentation for WABA Policy Enforcement.

Official Meta Developer Documentation

Cost of WhatsApp Conversations

Last updated