System guide
Campaigns
From the Campaigns page, send approved templates to a large number of recipients at once.
A campaign sends one approved WhatsApp template to many recipients at once. The basic flow is: pick a template, upload a recipient list with the variables the template needs, choose a send time, and the system delivers the messages in batches at the scheduled time. This page covers how to create, run, and monitor a campaign.
Campaign list fields
Each row is one campaign. Columns:
| Column | What it shows |
|---|---|
| Name | The campaign name |
| Phone Number | The WABA channel the campaign sends from |
| Template | The template or template group used for this campaign |
| Status | Current state: Draft, Scheduled, Running, Paused, Completed, or Cancelled |
| Progress | Messages sent vs. total recipients |
| Created | When the campaign was created |
Creating a campaign
Click New Campaign at the top right to open the four-step wizard: basic info, recipients, schedule, and a final review. Use Back and Next to move between steps, or Cancel to discard.
Step 1 — Basic info
- Campaign Name — a name for your own reference, for example May Day Promotion. Required.
- Phone Number — the WhatsApp phone number the campaign sends from. Template options only load after a phone number is selected.
- Template Source — choose between a Single template (one fixed, approved template) or a Smart template group.
- Message Template / Template Group — select the specific template or template group to use.
Variable mapping
Once a template is selected, all template variables are listed and you need to specify the value source for each one. A campaign cannot continue while any variable is still unmapped.
- Text variables — set each to a CSV Column (the value is read per recipient from the named column in your file) or a Fixed Value (the same value for everyone).
- Media variables(for example an image header) — use the template's default image, pick one from the media library, paste a public image URL, or read a different URL per row from a CSV column.
Step 2 — Recipients
Upload a CSV file of recipients. Click the upload area or drag a file in; the file is validated as soon as it lands, showing the number of rows imported and any errors.
- The file must contain a
phoneorphone_numbercolumn. - A
nameorcontact_namecolumn is optional. - Any variable you mapped to a CSV column must match a column header (matching ignores case).
- The file needs a header row plus at least one data row.
Use CSV Template to download an empty file pre-filled with the right column headers — the surest way to get the names right. Re-uploading overwrites the previous upload.
Step 3 — Schedule
Pick one of three sending modes:
- Send Now — sending starts as soon as the campaign is created. This requires that you uploaded recipients in step 2.
- Send Manually — the campaign is created as a draft and waits until you trigger it from the detail page. Best when a final review is needed before going out.
- Schedule — pick a Date & Time (your local time zone). The campaign is created as Scheduled and sends automatically when that moment arrives.
Filter blacklisted recipients
Tick Filter blacklisted recipientsto skip any phone number on your organisation's blacklist. Skipped numbers are marked Skipped (blacklist) and counted separately; they do not count as sent. The option is off by default.
Step 4 — Confirm
The final step confirms all campaign details: campaign name, phone number, template or template group (with member count), recipient count (or "import later"), send time, and the blacklist-filter state. Once everything looks right, click Create to complete the setup.
Campaign status
A campaign moves through these statuses, and the actions available to you depend on where it is.
| Status | Meaning | Available actions |
|---|---|---|
| Draft | Created but not yet sent | Send Now, import recipients, Duplicate, Delete |
| Scheduled | Waiting for its scheduled send time | Cancel, Duplicate |
| Running | Sending in batches right now | Pause, Cancel, Duplicate |
| Paused | Sending interrupted; can resume | Resume, Retry failed, Cancel, Duplicate |
| Completed | Every recipient has been processed | Retry failed, Duplicate |
| Cancelled | Stopped before finishing | Duplicate |
Reading the sending stats
The campaign detail page provides three views of delivery status:
Stat cards
Five cards summarise the run: Total (all recipients), Sent, Delivered, Read, and Failed.
Chart and progress bar
The chart shows the read rate and the current sending progress.
Recipients table
The table lists every recipient with their Phone, Name, Status, Sent At, and any Error. Each recipient moves through these states:
| Status | Meaning |
|---|---|
| Pending | Not yet sent |
| Sent | Handed to WhatsApp, awaiting confirmation |
| Delivered | Reached the recipient's device |
| Read | The recipient opened the message |
| Failed | Sending failed; the Error column explains why |
| Skipped | Skipped by the system (for example a malformed number) |
| Skipped (blacklist) | On the blacklist; appears only when blacklist filtering is on |