Starting April 1, 2023, WhatsApp will make changes to its template approval workflow. This guide explains the changes and what to expect from the WhatsApp Business API with Twilio.
- Key terms
- What is changing?
WhatsApp Templates page: The area in the Twilio Console where WhatsApp templates have historically been submitted for review by Meta. It is accessed via
Messaging > Senders > WhatsApp Templates.
Content API: API currently available in private beta that enables users to create and send rich messaging content over any Twilio-supported messaging channel. Access is granted through this form. Documentation can be found here.
Content Editor: Twilio Console product currently available in private beta that is built on top of the Content API. Content Editor enables users to create, approve, and manage templates from the Twilio Console. Access is granted along with the Content API on the form above and is accessible via
Messaging > Content Editor. Documentation can be found here.
What is changing?
Starting June 1, conversations will be priced by the category of the message template. For information on the pricing change, see our article here. In preparation for the pricing change, on April 1, Meta will start enforcing stricter template approval criteria. Meta will automatically update template categories on all existing message templates to the new categories: marketing, utility or authentication.
WhatsApp will start considering the category of the template to determine the price of business-initiated sessions. Templates will be categorized by WhatsApp based on the following criteria:
- Authentication: One-time passcodes.
- Utility: Facilitate a specific request or transaction or update to a customer about a transaction (i.e. post-purchase notifications, billing reminders).
- Marketing: Any business-initiated template that does not qualify as utility or authentication. Can include promotions, offers, informational updates, or invitations for customers to respond / take a certain action.
More information about how templates will be used to determine price can be found here. For full details, see Meta's documentation.
Sample Submission Requirements
Templates with media and templates with placeholder variables will require a sample to be submitted. Templates with placeholders that do not contain a sample will not be accepted by Meta. Twilio will support samples in the following ways:
- Twilio Console: The existing WhatsApp Templates experience under
Messaging > Senders > WhatsApp Templateswill support text templates with placeholders. Media templates, previously available in private beta, will no longer be supported through the WhatsApp Templates page.
- Content Editor: Both media templates and text templates with placeholders will be supported through the Twilio Content Editor, under
Messaging > Content Editor. This console experience supports WhatsApp and is Twilio's long-term omnichannel template solution.
- Content API: Text templates with placeholders can be created with the Content API. Creation of templates with placeholders through the "Templates API" (private beta) will no longer be supported.
We recommend adopting the Content Editor and Content API to continue to scale your WhatsApp use with resiliency to any potential future WhatsApp product and policy changes.
Templates with multiple languages
WhatsApp considers each template translation as a unique template subject to independent review. However, the WhatsApp Templates page in the Twilio Console reflects all translations as belonging to a single template. In a very small number of instances, this could result in a single template having more than one category. This may happen if nuances in language and inconsistent reviews by WhatsApp result in translations from different languages having different template categories. Twilio will always pass through the charge from WhatsApp based on the published fee and pricing information received programmatically by WhatsApp. To get a view of the category per template translation, we recommend using the Content Editor and Content API, which shows an individual template per translation.