Skip to main content

Documentation Index

Fetch the complete documentation index at: https://knowledge.flowella.io/llms.txt

Use this file to discover all available pages before exploring further.

This page is a reference for the building blocks of a WhatsApp template — categories, headers, buttons, variables, and the submission lifecycle. For the step-by-step of creating and testing a template, see Templates.

Categories

Every template has exactly one category, set when you submit it to Meta. The category drives pricing and what content is allowed.
CategoryUse it forNotes
MarketingPromotions, offers, event invites, re-engagementMost expensive tier; subject to opt-in rules
UtilityOrder updates, account alerts, reminders, follow-ups to a user-initiated flowCheaper than Marketing; content must relate to a specific transaction or request
AuthenticationOne-time passwords and account verification codesStrict format; no marketing content allowed
If Meta thinks your template doesn’t match the category you picked, it will be rejected or re-categorised — common with Marketing content submitted as Utility.

Header formats

A template’s header is optional. When present, it can be one of:
  • TEXT — short string, may include one variable.
  • IMAGE — public HTTPS URL to a JPEG or PNG.
  • VIDEO — public HTTPS URL to an MP4.
  • DOCUMENT — public HTTPS URL to a PDF. You can supply an optional filename hint.
  • LOCATION — latitude, longitude, name, and address. Useful for store visits or delivery confirmations.
Media headers (IMAGE, VIDEO, DOCUMENT) require Meta to fetch the URL at send time. If the URL is unreachable or returns an error, the message will fail. Host media on stable infrastructure.

Body and variables

The body is the main message text. Variables use double curly braces with a 1-based index:
Hi {{1}}, your order {{2}} has shipped. Track it here: {{3}}
Rules:
  • Numbers must be sequential starting from {{1}} — you cannot skip indexes.
  • Provide a sample value for every variable when you submit. Meta uses the samples to evaluate the template.
  • Keep variables to short, predictable values. Long pasted blocks are a common rejection reason.
The same {{n}} syntax is used in TEXT headers and URL buttons (see below). Optional plain text shown after the body. No variables, no formatting.

Buttons

A template can include up to 10 buttons total, grouped as either quick replies or call-to-action — but not mixed in some combinations. Meta’s full rules vary by Cloud API version; in practice you will use:
Button typeWhat it doesExample
QUICK_REPLYSends a pre-set text reply back to your businessYes, that's me
URLOpens a web page. Can include a single variable in the URLhttps://acme.com/orders/{{1}}
PHONECalls a phone number+44 20 7946 0000
Quick reply buttons are useful when you want a structured response (good for analytics). URL and phone buttons are useful for routing recipients off WhatsApp into your stack.

Submission lifecycle

When you submit a template from Flowella, it moves through these states:
1

DRAFT

Saved in Flowella but not yet sent to Meta.
2

PENDING

Submitted to Meta. Meta is reviewing it (usually 24–48 hours).
3

APPROVED

Live and usable. You can send it from the inbox, the API, and HubSpot workflows.
4

REJECTED

Meta declined the template. The rejection reason appears on the template page. Edit and resubmit.
5

PAUSED or DISABLED

Meta has restricted the template, usually because of recipient feedback or low quality. Templates can come back from PAUSED automatically; DISABLED ones must be resubmitted.

Common rejection reasons

  • Promotional content submitted as Utility — re-submit as Marketing.
  • Variable samples that don’t match the body (for example, samples that contain links the body doesn’t justify).
  • Body or header text that looks like spam (excessive capitalisation, “Click here”, “Free!!!”).
  • Broken or unreachable media header URLs.
  • Footer text that contradicts the body.
Edit a copy of an APPROVED template rather than the original, so you keep a working version while Meta reviews changes.