The list
Each card shows the template’s name, category, status, type, language, Meta quality score when there is one, and the body text. A rejection reason or a failed submission is printed on the card in red. Two buttons sit at the top:- New Template — opens the source chooser: Start from scratch, or Use a template from the starter library. Both end in the same editor.
- Sync from Meta — pulls every template from your WhatsApp Business Account and mirrors it locally: new ones are added, changed ones updated, and templates that came from Meta but no longer exist there are removed. Drafts that were never submitted are kept. A very large library is synced in pages of 100, up to 2,000 at a time; press it again to continue.
Creating a template
Name, category and language
- Template Name — lowercase letters, digits and underscores only, up to 512 characters. Fixed once the template exists at Meta; to change it, create a new one.
- Category — how Meta polices the template:
- Language — must match the exact code at Meta.
en_USandenare different templates, and a template’s language is fixed once it exists.
Template type
One selector covers the header, because that is how Meta’s own manager presents it.Variables
Pick one scheme for the whole template. Meta rejects a mix, and the choice is fixed once the template exists at Meta.- Numbered —
{{1}},{{2}}, … Must be contiguous and start at{{1}}. - Named —
{{customer_name}}. Lowercase letters, digits and underscores, starting with a letter.
Body, footer and header
- Body text — up to 1,024 characters. It may not start or end with a variable; trailing punctuation does not help, so
Total comes to {{1}}.is refused exactly likeTotal comes to {{1}}. Put real words on both sides. - Footer — optional, up to 60 characters, and it cannot contain variables.
- Text header — up to 60 characters with at most one variable, plus a sample for it.
- Location header — carries nothing at build time. Meta takes the latitude, longitude, place name and address at send time, so every message can point somewhere different.
- Media header — choose a file, pick one from the media library, or paste a public link.
A file you pick is not uploaded until you press submit — close the dialog and it is simply discarded. A pasted link has to stay reachable for about 24 hours, because Meta fetches it during review.
Buttons
Up to 10 buttons in total, each with a label of at most 25 characters. Quick replies must be grouped before the rest.
A URL button takes at most one variable and it must sit at the end of the URL — Meta substitutes only the suffix.
Carousels
A carousel is an outer body plus 1–10 cards, and Meta’s rules are strict because it renders as one swipeable strip:- The outer message has no header, no footer and no buttons — those live on the cards.
- Every card needs an image or video header, and every card must use the same header format.
- Every card needs 1 or 2 buttons, and every card must use the same button types in the same order. Copy-code buttons are not allowed on cards.
- A card body is at most 160 characters and follows the same start/end variable rule as the main body.
Advisory warnings
Two things are flagged in the editor but never block you, because Meta’s own behaviour is not exactly predictable:- Too many variables for the length. Roughly two words per variable is the floor; below that Meta rejects the template.
- Two variables next to each other. The API accepts it, human reviewers often do not, and the message reads as a run of values.
Authentication templates
Picking Authentication swaps the whole editor. Meta writes and translates the wording — you cannot type a body — and that fixed shape is what makes these cheaper to send. You choose:- whether to append the security line “For your security, do not share this code.”
- Code expires after — 1 to 90 minutes, or leave it empty for no expiry line.
- How they get the code: Copy code (works on every device and needs nothing from you), One-tap autofill or Zero-tap (both fill the code into your own Android app and need its package name and signature hash).
- An optional button label.
Submitting and statuses
Submit for Approval sends the template to Meta. Review usually takes up to 24 hours and the status updates by itself.
Only Approved, Rejected and Paused templates can be edited. Editing an approved template sends it back for review, so it is Pending — and unsendable — until Meta answers.
Meta allows 100 template creations an hour. Submitting a whole pack goes out one at a time for this reason, and stops with a clear message if Meta refuses part-way.
What a send must carry
Meta rejects the whole message if one parameter is missing, so every sending surface in Watx asks for exactly the same things and refuses to send until they are filled in.
The five places this happens are the inbox template picker, the contact drawer, broadcast step 3, the
send_template automation step and the send_template flow node.
Templates you will not see in a picker
Meta ships a sample template calledhello_world with every account. It can only be sent from Meta’s public test numbers, so Watx hides it from the inbox, broadcast and automation pickers. It stays visible here so you can inspect or delete it.