Creating a Campaign¶
The campaign wizard walks you through four steps: General → Audience → Template → Review & Schedule. Your progress is saved as a draft after each step, so you can leave and come back.
Step 1 — General¶
| Field | Description |
|---|---|
| Campaign Name (required) | Internal name, e.g. "Summer Promo 2026". Not shown to customers. |
| Description (optional) | Internal note about what the campaign is for. Not shown to customers. |
| Campaign Type | Marketing, Utility, or Reminder — see Campaign Types. |
| WhatsApp Channel (required) | The production channel the campaign sends from. The sender number and credentials are frozen at launch. |
The channel list shows each deployment's environment, version, and capability badges. Channels without the Campaigns capability (e.g. Meta test numbers) are shown but cannot be selected.
Where did the Campaign Body field go?
The message text field no longer lives on this step. Because campaigns always send an approved template, a "body" only matters when your template has a placeholder mapped to it — so the wizard asks for it in the Template step, only when you map a placeholder to Campaign Body. See Template Variables.
Step 2 — Audience¶
Choose who receives the campaign:
| Source | Description |
|---|---|
| All Customers | Every contact in your WhatsApp conversation history |
| Upload CSV | A CSV file — column 1: phone in E.164 format (e.g. +919876543210), column 2: name (optional). Invalid rows are skipped and reported. |
| Select Conversations | Manually pick conversations from a searchable list |
After a CSV upload the wizard shows how many valid recipients were found and any rows it skipped.
Step 3 — Template¶
Pick one of your approved WhatsApp templates. Templates that are pending or rejected don't appear — create and sync templates from the Templates page first.
Depending on the template you pick:
- Template with
{{N}}placeholders — a Configure Message Variables panel appears. Map every placeholder to a variable (recipient name, campaign body, business name, date…). You can't continue until all placeholders are mapped. See Template Variables. - Template with an image header — pick a Media Library asset (must be Public visibility) to send as the header image.
- Fixed-content template (no placeholders) — the wizard shows exactly what recipients will receive. Your campaign name and description are internal only and are not part of the message.
A live message preview updates as you configure — placeholders show as [Variable Label], and text you type for Campaign Body appears verbatim.
Step 4 — Review & Schedule¶
Review the summary (channel, name, type, audience, template) and the final "This is what will be sent" preview.
Then choose when to send:
| Option | Behaviour |
|---|---|
| Send Now | Sending starts immediately after you click Launch Now |
| Schedule | Pick a date and time; the campaign launches automatically |
How scheduling works
- The date and time you pick are in your local timezone (shown under the picker).
- The campaign starts within about one minute of the scheduled time.
- A scheduled campaign can be cancelled any time before it starts, from the campaign list.
- You must pick a time before the Schedule Campaign button activates.
Send Now is immediate
"Send Now" campaigns start sending right away — double-check the preview before launching.