Skip to main content
This is the full step-by-step walkthrough for creating a new template. If you’re new to templates, read Templates Overview first.
Create template screen in Xobito

Before you start

Have these ready:
  • A clear purpose for the message (offer, reminder, confirmation).
  • Your copy in the target language.
  • If you want a media header: an image, video, or PDF sample file (Meta reviews it).
  • A valid template name — lowercase letters, digits, and underscores only.

Open the template builder

1

Go to Templates

In the sidebar, click Templates.
2

Click 'Add Template'

The button sits at the top of the template list.

Step 1 — Name, category, language

1

Enter a template name

Up to 512 characters. Must match the pattern ^[a-z0-9_]+$ — lowercase letters, digits, and underscores only. No spaces, no capital letters, no dashes. Examples: welcome_message, order_confirmation, april_sale_2026.
2

Pick a category

Choose Marketing or Utility. See Templates Overview for what each category means.
3

Pick a language

Xobito supports 80+ IANA language codes — en, en_US, es, pt_BR, hi, fr, de, ar, and many more. Pick the one that matches the language you will actually write the body in.
Template name must follow the strict pattern ^[a-z0-9_]+$. Anything else is rejected by the form before submission.

Step 2 — Header (optional)

The header appears at the top of the message. Choose one type:

None

No header — the body is the first thing the recipient sees.

Text

Plain text header. Supports one variable like {{1}}.

Image

Upload a sample JPG or PNG.

Video

Upload a sample MP4.

Document

Upload a sample PDF.
For IMAGE / VIDEO / DOCUMENT headers, you upload a sample file during creation. Meta uses it for review. When you later send the template (in a campaign or chat), you can attach a different file of the same type.
If you use a text header with a variable, provide an example value for Meta’s sample check.

Step 3 — Body (required)

The body is the main message text.
1

Write your core message

Keep it clear, friendly, and on-brand. WhatsApp users expect direct, conversational text.
2

Add variables where you want personalisation

Insert {{1}}, {{2}}, {{3}}… wherever you want a value swapped in at send time. Numbers must be sequential starting at {{1}}. See Dynamic Templates.
3

Provide example values

For each variable, enter a realistic sample value. Meta’s reviewers use these to see what a real message looks like. Use plausible values like Alex, A1042, Friday — not test or xxx.

Body formatting

WhatsApp supports basic rich formatting inside the body:
  • *bold* renders as bold
  • _italic_ renders as italic
  • ~strike~ renders with a line through
  • Triple backticks for monospace
  • Line breaks — press Enter

Example body

Hi {{1}}, thanks for choosing us!

Your order *#{{2}}* is confirmed and will be delivered by {{3}}.

Reply HELP for assistance.
Example values: {{1}}=Alex, {{2}}=A1042, {{3}}=Friday. The footer is a small piece of grey text at the bottom of the message. Footers do not support variables. Typical uses:
  • Legal disclaimers — “Standard rates apply.”
  • Opt-out instructions — “Reply STOP to unsubscribe.”
  • Brand tagline.

Step 5 — Buttons (optional)

Xobito currently supports Quick Reply buttons on templates. Quick Reply buttons are tappable buttons that send a preset reply back to your WhatsApp number.
Meta’s template platform supports other button types (URL, Phone Number) too, but the Xobito template builder is focused on QUICK_REPLY handling today. If you need URL or phone buttons, check the builder for availability in your version — if they are not shown, use plain text with a link inside the body instead.
Typical Quick Reply use cases:
  • Order confirmation: Confirm / Change delivery.
  • Appointment reminder: I'll be there / Reschedule.
  • Quick survey: 👍 Good / 👎 Bad.

Step 6 — Preview and save

1

Check the live preview

The builder renders the template as it will appear on the recipient’s phone.
2

Read it out loud

Catch typos, awkward phrasing, or missing variable labels before Meta sees it.
3

Save

Saving the template submits it to Meta automatically. The status moves to PENDING while Meta reviews.

Template lifecycle

Once submitted, your template is one of four statuses:
Template statuses
StatusMeaning
DRAFTSaved but not yet submitted.
PENDINGMeta is reviewing.
APPROVEDUsable immediately in campaigns, chat, and automations.
REJECTEDMeta rejected it. Review, edit, resubmit.
Only APPROVED templates can actually be sent. Attempts to send a DRAFT, PENDING, or REJECTED template are blocked.
Meta rejection reasons are logged internally by Xobito but the exact rejection reason is not shown in the Xobito UI today. To understand why a template was rejected:
  • Check Meta Business Manager — rejection reasons appear there.
  • Or contact support to pull the server-side logs.
See Meta Approval for common rejection causes and fixes.

Using an approved template

Once the status turns green (APPROVED), you can use the template in:
  • Live chat — send the template directly inside any conversation.
  • Campaigns — pick it as the message for a broadcast. See Create a Campaign.
  • Template bots — schedule it to send automatically on a trigger or delay.
  • API — send via the /messages/template endpoint.

Tips for first-time template authors

Your first template should be a short plain-text message with no variables and no media. It’s the fastest path to approval and teaches you the flow.
Meta flags aggressive marketing language. 🎉🎉🎉 BIG SALE 50% OFF!!! is a near-guaranteed rejection.
welcome_new_customer_en is clearer than t1 or test_v3 — you’ll thank yourself later.
Approved templates cannot be edited — you create a new template instead. Adopt a naming convention like _v2 from the start.

Next steps

Dynamic templates

Personalise the message per recipient using variables.

Meta approval

Understand how reviews work and why templates get rejected.

Variables & media

Full reference for headers, media, and variable rules.

Run a campaign

Put your approved template to work.