Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.digifist.com/llms.txt

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

Templates are built in Galantis and submitted to Meta for review from the same interface. The template builder walks through each structural component — header, body, footer, and buttons — and lets you preview the assembled message before submitting. Once submitted, Meta reviews the template and returns an approval or rejection, typically within minutes to a few hours.

What this covers

  • The four template components and their options
  • How to create and submit a template
  • Variable placeholder syntax
  • Component requirements and limits
  • Submission behavior and what happens after

Creating a template

1

Open the template builder

Go to Templates → New Template in the Galantis dashboard.
2

Set the category

Select Marketing or Utility. This must be set before building the template content — it is a declaration of intent that Meta evaluates against your message. See Template Categories if you are unsure which applies.
3

Set the language

Select the language code for this template (e.g., en, es, pt_BR). Each template is tied to a single language. If you need the same message in multiple languages, create separate template records — one per language.
4

Build the template components

Configure the header, body, footer, and buttons as described below.
5

Preview and submit

Review the assembled template in the preview panel. When ready, click Submit to send it to Meta for review. The status changes to PENDING_APPROVAL immediately.

Template components

Header (optional)

The header appears above the body text. It is optional but strongly recommended for templates that use image or product formats — a text-only template without a header is valid but may perform less well visually.
A single line of plain text. Supports one optional variable placeholder ({{1}}).Use for: subject-line-style context above the body — store name, offer headline, or a personalized greeting that would feel redundant in the body.

Body (required)

The body is the main text of the message. It is the only required component — a template with only a body and no header, footer, or buttons is valid. Variable placeholders are defined in the body using positional syntax: {{1}}, {{2}}, {{3}}. Each placeholder is mapped to a customer or order data field when the template is used in a campaign or automation. Variable positions must be sequential starting from {{1}} — gaps in the sequence (e.g., using {{1}} and {{3}} without {{2}}) will cause submission to fail. Rich text — the body supports bold (*text*), italic (_text_), and strikethrough (~text~) formatting.
Meta requires that all variable placeholders in a submitted template include example values — concrete sample text that demonstrates what the variable will contain at send time. Submitting a template with empty variable examples is a common rejection cause. Fill in realistic example values for every {{N}} placeholder before submitting.

A short line of static text below the body. Does not support variables. Character limit applies — keep it brief. Common uses:
  • Opt-out instruction: Reply STOP to unsubscribe
  • Brand tagline
  • Legal or compliance notice

Buttons (optional, up to 3)

Buttons appear below the footer and give the customer a tappable action. Up to three buttons can be added per template, but all buttons must be of compatible types — not all button type combinations are supported by Meta.
A tappable reply button that sends a predefined text response back to your WhatsApp number when the customer taps it.Use for: simple binary responses (“Yes, I’m interested” / “No thanks”), feedback collection, or opt-in confirmation flows.The reply text is defined at template creation time and is fixed — it cannot be personalized per recipient.

Submission and what happens next

When you click Submit, Galantis sends the template to Meta’s Template API. The template status changes to PENDING_APPROVAL and Meta begins its review. Meta reviews templates for:
  • Category accuracy — does the content match the declared category?
  • Variable example completeness — are all {{N}} placeholders accompanied by example values?
  • Content policy compliance — does the message contain prohibited content?
  • Button configuration validity — are the button types and values correctly formed?
Approval is typically returned within minutes to a few hours. The template status updates automatically in Galantis when Meta responds — you do not need to manually check or refresh. See Approval Lifecycle for the full status reference.

Best practices

  • Write the body copy first, then set variables. Decide what the message says before deciding what to personalize — over-using variables produces awkward, robotic-feeling messages.
  • Always include example values for every variable placeholder. Empty examples are a rejection trigger. Use realistic values that reflect actual customer data — Sarah for customer.first_name, $89.00 for order.total_price.
  • Keep footer text genuinely brief. The footer competes with the body for the customer’s attention. Reply STOP to unsubscribe is ideal — anything longer reduces the clarity of the main message.
  • Test button URLs before submitting. A URL button linking to a broken or redirecting URL is a poor first impression and may affect quality signals. Verify all URLs are live and landing on the intended destination.
  • Do not resubmit a rejected template without addressing the rejection reason. Repeated submissions of the same rejected content signals disregard for Meta’s policies and may affect your account standing.