Create an SMS Campaign
This guide explains how to create, configure, and manage an SMS campaign to send messages to beneficiaries.
Access
Menu: Communications → SMS Campaigns → New campaign
Step 1: Create the Campaign
- Go to SMS Campaigns
- Click the New campaign button
- Fill in the form:
| Field | Type | Description | Required |
|---|---|---|---|
| Name | Text | Descriptive campaign name | Yes |
| Event type | Selection | Message type (reminder, info, etc.) | Yes |
| Description | Text | Internal notes (optional) | No |
- Click Save
Use a descriptive name including date and type, for example: "Payment Reminder March 2026 - Bissau"
Campaign Detail Page
After creation, you are redirected to the detail page displaying:
Header
- Campaign name
- Event type badge
- Status badge
- Action buttons (based on status)
Statistical Cards
| Card | Description |
|---|---|
| Total recipients | Total number of added recipients |
| With phone | Recipients with valid number |
| From selection | Added from system |
| From import | Added via Excel file |
Tabs
| Tab | Description |
|---|---|
| Recipients | Recipient list and management |
| Preview | Preview of generated messages |
| Import | Import from file (if draft) |
Step 2: Add Recipients
Option A: From the System
To add beneficiaries from the registry:
- In the Recipients tab, click Add beneficiaries
- The selection modal opens
- Configure:
| Field | Description |
|---|---|
| Search | Search by name or code |
| Language | Language for these recipients' messages |
- Select beneficiaries:
- Check individually
- Or use "Select all (this page)"
- Navigate between pages if needed
- Click Add
Option B: Import from Excel/CSV
To import an external list:
- Go to the Import tab
- Click Download template to get the template
- Fill in the file with columns:
| Column | Description | Format |
|---|---|---|
| telephone | Phone number | +245XXXXXXXXX |
| nom | Recipient name | Text |
| langue | Preferred language code | pt, cr, ff, etc. |
- Click Browse and select your file
- Click Import file
- Check the import report
Numbers must be in international format: +245 followed by 9 digits.
Invalid numbers are automatically flagged.
Step 3: Manage Recipients
Recipients Table
| Column | Description |
|---|---|
| Name | Recipient name (+ beneficiary code) |
| Phone | Number with validation icon |
| Language | Selected language |
| Source | "Selection" or "Import" badge |
| Actions | Delete (if draft) |
Visual Indicators
| Icon | Meaning |
|---|---|
| ✓ Green | Valid phone number |
| ✗ Red | No number or invalid |
Statistics by Language
At the top of the list, badges show distribution:
- Portuguese: 150
- Crioulo: 230
- Fula: 45
- etc.
Delete Recipients
Individually:
- Click the Delete icon (trash) on the row
All recipients:
- Click Delete all
- Confirm the action
Deleting all recipients is irreversible.
Step 4: Preview Messages
Access
- Go to the Preview tab
- The system displays a sample of 10 messages
Generate Messages
- Click Generate messages to refresh the preview
- Verify that messages are correctly formatted
Displayed Information
For each preview:
| Element | Description |
|---|---|
| Name | Recipient name |
| Phone | Phone number |
| Language | Language badge |
| Message | Personalized message text |
Template Indicators
| Badge | Meaning |
|---|---|
| Green | Template found, message generated |
| Red | Template missing for this language |
If a message shows "Template missing", create the corresponding template in Settings → SMS Templates.
Step 5: Validate the Campaign
Once the campaign is ready:
- Verify all recipients have valid numbers
- Check message preview
- Click Mark as ready
- Campaign changes to Ready status
Return to Draft
If you need to modify a "Ready" campaign:
- Click Return to draft
- Campaign returns to Draft status
- You can modify recipients again
Step 6: Export for Operator
To send to SMS operator:
- Click Export
- The system generates a formatted Excel file
- Download the file
- Transmit it to your SMS operator
Export File Content
| Column | Description |
|---|---|
| Telephone | Number in international format |
| Message | Personalized message |
| Langue | Language code |
| Nom | Recipient name |
Available Variables
Messages can contain variables:
| Variable | Description | Example |
|---|---|---|
{nom} | Beneficiary name | Mamadou Diallo |
{montant} | Transfer amount | 50,000 GNF |
{reference} | Transaction reference | TRF-2026-001 |
{date} | Transfer date | 15/03/2026 |
{cycle} | Cycle name | March 2026 |
{programme} | Program name | PCH-GB |
Message Example
Template (Crioulo):
{nom}, bo transferensia di {montant} sta pronto. Bo referensia: {reference}. Data: {date}.
Generated message:
Mamadou Diallo, bo transferensia di 50,000 GNF sta pronto. Bo referensia: TRF-2026-001. Data: 15/03/2026.
Post-Send Tracking
After transmission to operator:
- Export automatically marks campaign as Exported
- Add notes about the send if needed
- Track delivery report (if provided by operator)
Available Actions by Status
| Status | Available Actions |
|---|---|
| Draft | Edit, Add recipients, Import, Delete recipients, Mark ready |
| Ready | Export, Preview, Return to draft |
| Exported | Preview, Re-export |
Best Practices
Before Sending
- Test first: Send to a few test numbers
- Check templates: Ensure all languages are correct
- Plan timing: Avoid nighttime sends
- Inform teams: Prepare agents to receive calls
Message Content
- Be concise: Maximum 160 characters per SMS
- Include essentials: Who, what, when, where
- Avoid jargon: Use simple language
- Test translations: Have native speakers validate
After Sending
- Track feedback: Note beneficiary questions
- Analyze failures: Update invalid numbers
- Document: Note lessons learned
Use Cases
Payment Reminder for a Region
- Create campaign "Payment Reminder - Region X"
- Type:
paiement_reminder - Add beneficiaries filtering by region
- Select appropriate language
- Preview and validate
- Export for operator
Multilingual Notification
- Create campaign "Program Change Information"
- Type:
information - Add beneficiaries in batches by language:
- First batch in Portuguese
- Second batch in Crioulo
- etc.
- Check distribution by language
- Preview messages in each language
- Validate and export