Skip to main content

WhatsApp Message Templates

A message template is a WhatsApp message that Meta has reviewed and approved in advance. It is the only thing you can send to a customer who hasn't written to you in the last 24 hours, and the only way to start a conversation yourself — order confirmations, shipping updates, appointment reminders, campaigns.

You create, edit and delete templates in Flowera. Meta still reviews every one, but you never have to leave the app to write them.

Not the same as flow templates

The Templates page is about ready-made flows. This page is about WhatsApp message templates.

Where to find them​

  1. Open Credentials and switch to the Connected Accounts tab.
  2. On the row of your WhatsApp number, press the template icon — Manage Templates.

The dialog lists every template of that number's WhatsApp Business Account, in every language, with search by name, category and language. Templates you made in Meta's own WhatsApp Manager show up here too — Flowera reads them live from Meta. An account with more than 1,000 templates shows the first 1,000 and a notice; manage the rest in WhatsApp Manager.

Don't have a number connected yet? See WhatsApp credentials.

Reading the list​

Each template shows its status:

StatusWhat it meansCan it be sent?
PendingMeta is reviewing itNo — wait
ApprovedReady to useYes
RejectedMeta turned it down; the reason is shown next to itNo — edit and resubmit
PausedMeta paused it after customers reported or blocked itNo — edit it, or wait for Meta
DisabledMeta switched it off for goodNo
In appealYou appealed a rejectionNo — wait
Limit exceededYour account hit its template limitNo
ArchivedArchived in WhatsApp ManagerNo
Being deletedDeletion is in progressNo

Two more details may appear beside the status:

  • Quality: GREEN / YELLOW / RED — how customers are reacting to the template. Red means many recipients report or block it; Meta pauses templates that stay there.
  • Rejected: … — Meta's reason for a rejection, such as INVALID_FORMAT or PROMOTIONAL (a utility template that reads like marketing).

The eye icon shows the template's full content.

Creating a template​

Press Create New. The editor has your settings on the left and a live WhatsApp-style preview on the right.

Start from a preset​

Quick Start Templates fill the editor with a working example you can adapt:

PresetCategoryWhat you get
Order ConfirmationUtilityName, order number and delivery date, plus a Track Order button
Shipping UpdateUtilityName and tracking number, plus a Track Package button
Appointment ReminderUtilityName, date and time, plus Confirm / Reschedule buttons
Verification CodeAuthenticationA one-time-code template (see below)
PromotionMarketingName, discount and expiry date, plus a Shop Now button
Product CarouselMarketingA swipeable strip of catalog products
Blank TemplateUtilityAn empty editor

Basic information​

  • Template Name — lowercase letters, numbers and underscores only (order_confirmation). It can't be changed later.
  • Category — Utility (updates about something the customer already did), Marketing (offers, promotions, anything else), or Authentication (one-time codes). Meta may move a template to another category when it reviews it, which changes what each message costs.
  • Language — the language the text is written in. Each language is a separate template: to send order_confirmation in English and Turkish, create it twice under the same name.

Header (optional)​

Header typeNotes
None—
TextUp to 60 characters; may contain one variable
ImageJPEG or PNG, up to 5 MB
VideoMP4, up to 16 MB
DocumentPDF, up to 100 MB
Product (catalog)Only with a View Product button

If a text header contains a variable (Your order {{1}} has shipped), fill Example value for the header variable as well. Meta refuses the template without it, so the editor won't submit until it is filled in.

For an image, video or document header you upload a sample file. Meta looks at it during review — it is never what your customers receive. When the flow sends the template, the WhatsApp tool asks for the real file as a public link.

Message body and variables​

The body holds up to 1024 characters. Use Insert Variable to add placeholders — {{1}}, {{2}} and so on, up to 10 — wherever the message changes per customer: a name, an order number, a date.

Every variable needs an example value. Meta reviews the template with your examples filled in, and rejects it without them. Two more rules Meta applies:

  • The body can't start or end with a variable. {{1}}, your order is ready is rejected; Hi {{1}}, your order is ready. is fine.
  • Variables are numbered in order, without gaps.

The footer is a short line of up to 60 characters under the message. You can add up to 3 buttons:

ButtonWhat it does
Quick ReplyA tappable reply; your flow receives it as a message
URLOpens a link. The link may end in one variable (https://shop.com/track/{{1}}), which needs an example
Phone NumberCalls your number
View Catalog / View Items / View ProductOpens your product catalog in WhatsApp

When a URL button's link ends in a variable, fill Example value for the URL variable with a sample of the part that replaces it (ORD-12345). Like every other example, Meta refuses the template without it.

A catalog button has to be the only button on the template. Catalog and product-carousel templates have a few more rules, which the editor enforces for you — see Selling from your catalog.

Verification code templates​

Choose the Verification Code preset, or the Authentication category, to send one-time codes. Meta writes the text of these itself — "123456 is your verification code." — so there is no body to fill in. You only choose the options:

  • Code expires after (minutes) — 1 to 90 minutes, shown under the message.
  • Add "For your security, do not share this code."

The message always has a Copy code button. Your flow supplies the code each time it sends.

Submitting​

Press Create Template. The template goes to Meta for review and shows as Pending; most reviews finish within 24 hours. Once it's Approved it appears in the WhatsApp tool's Select Template dropdown.

Editing a template​

Press the pencil icon on the template's row. Meta allows editing only Approved, Rejected and Paused templates — for any other status the pencil is greyed out.

  • The name and language can't change. To change them, create a new template.
  • The category can't change once the template is approved.
  • Saving sends the template back to Meta for review.
Editing an approved template takes it offline

An approved template can't be sent until Meta approves it again — usually minutes, at most a day. Flows that send it fail in the meantime. Meta also limits approved templates to one edit per 24 hours (and 10 per 30 days). If you change the number of variables, the header type or the buttons, update the flows that send the template as well.

A few templates use features the editor can't display — named variables ({{first_name}}), coupon-code buttons, or media carousels. Flowera tells you when you open one; edit those through an AI assistant instead (see below).

Deleting a template​

Press the delete icon on the row. This deletes that language only — other languages with the same name stay.

  • Approved templates can't be deleted from this dialog. Meta blocks a deleted approved template's name for 30 days, so this is deliberately harder to do by accident.
  • Disabled templates can't be deleted at all — Meta doesn't allow it.
  • Deleting can't be undone, and any flow still sending the template will fail.

When Meta changes a template​

Meta reviews templates and can pause or disable one, or move it to another category, at any time — usually because recipients reported it. The workspace owners get a WhatsApp template needs attention notification, in the app and by email, when Meta:

Meta…The notice includes
Rejects a templateMeta's reason and recommendation
Pauses a templateThe kind of pause — for 3 hours, for 6 hours, or a pacing pause, which does not lift by itself and must be unpaused in WhatsApp Manager — and Meta's description
Flags a template for low quality (quality drops to RED)That a pause may follow
Disables a templateMeta's reason
Changes the category, or announces that it willThe old and new category, and the date for an announced change

Edits to a template — in Flowera or in WhatsApp Manager — are only logged; they don't send a notice.

Automations that send the template keep firing, so check them: every send of a paused or disabled template fails until it can be sent again. A category change changes what each message costs. See Failure handling.

Webhook setup (admins)​

These notices come from Meta's template webhooks. Meta delivers them only to the Meta app's default callback URL — it ignores any per-account override URL — and only for the fields ticked in the Meta App Dashboard → WhatsApp → Configuration. Tick all four:

  • message_template_status_update
  • message_template_quality_update
  • template_category_update
  • message_template_components_update

A local or ngrok setup is not the app's default callback URL, so it never receives template webhooks — the notices only work on the environment that URL points to.

With an AI assistant​

Everything on this page — listing, creating (presets and header samples included), editing and deleting — is also available through the Flowera MCP server, so an AI assistant can do it for you. It can also edit the templates the editor can't display, and it wires an approved template into a flow with every variable filled in. Before it creates, edits or deletes anything it shows you exactly what will happen and waits for your go-ahead. See Build via MCP → WhatsApp templates.

Troubleshooting​

SymptomLikely cause
Template rejected as PROMOTIONAL / wrong categoryThe text reads as marketing. Pick Marketing, or remove the sales wording
Rejected as INVALID_FORMATA variable at the very start or end of the body, a missing example, or a URL variable that isn't at the end
The pencil is greyed outThe template is Pending, Disabled or another status Meta doesn't allow editing
Template doesn't appear in the WhatsApp toolIt isn't approved yet, or it belongs to another number's Business Account. Refresh the dropdown after approval
"A template with this name already exists"Names are unique per language. Pick another name, or edit the existing one
Can't reuse a name you deletedMeta blocks the name of a deleted approved template for 30 days