Skip to content

Send messages

Compose one-off sends and save bulk campaigns from the Send screen.

8 min read

Open Send → Send in the sidebar.

What this page is for

The Send screen is where you compose outbound messages across WhatsApp, Email, Telegram, and WABA. Use it for:

  • One recipient — send now or schedule a single message.
  • Many recipients — enter a campaign name, pick a bulk target (CSV, spreadsheet, contacts, group, or WhatsApp group), and click Save Campaign to queue a tracked broadcast.

The page is organized in four numbered steps: Campaign name, Channels, Target, and Timing.

Send — page header, campaign name, and channel cards Sample data shown.

Step 1 — Campaign name

ControlWhat it does
TitleOptional for a single recipient. Required for bulk targets (CSV, spreadsheet, multiple contacts, a group, or multiple WhatsApp groups). Saved campaigns appear under Send → Campaign.

The blue note at the top reminds you that a campaign name is needed for multiple targets.

Step 2 — Channels

Enable one or more channels. Each enabled channel expands to show Send from, Template, and optional fallback settings.

Send — expanded channel with Send from, template search, and fallback Sample data shown.

ControlWhat it does
Channel row (WhatsApp, Email, Telegram, WABA)Turn a channel on or off. All channels start unchecked — pick only what you need.
Use as fallbackWhen on, that channel joins a fallback tier instead of the primary tier. Primary channels send first.
SequenceFallback tier order. Lower numbers run first; channels with the same sequence send together.
Send fromSearchable list of connected devices, bots, or email senders for that channel.
TemplateSearchable list of approved, active templates. Click a row to select; a preview appears below.
Cascade summaryShows Primary → Fallback 1 → Fallback 2 order. A fallback tier runs only if every channel in the previous tier failed.

Fallback example

  • WhatsApp — primary (fallback off)
  • WABA — fallback, sequence 1
  • Telegram — fallback, sequence 1 (sends with WABA if WhatsApp fails)
  • Email — fallback, sequence 2 (runs only if WhatsApp, WABA, and Telegram all fail)

Channels in the same fallback sequence send in parallel.

Step 3 — Target

Choose who receives the message. Available options depend on whether you entered a campaign name and whether timing is set to Recurring.

Send — target type grid and CSV upload Sample data shown.

Target types

TargetBest forNotes
InputOne-off test sendsOne phone, email, chat ID, or WABA number per enabled channel.
CSVUploaded recipient listUpload a .csv file. Requires a campaign name.
SpreadsheetGoogle Sheets or CSV URLPaste a published sheet or direct CSV link. Requires a campaign name.
ContactDirectory contactsOne contact without a campaign name; All contacts or a multi-select with a campaign name.
GroupDashboard contact groupAll members of a group. Campaign only.
WA GroupWhatsApp group chatOne group for a single send; multiple groups with a campaign name. WhatsApp must be the only enabled channel.

Which targets appear when

ModeAvailable targets
No campaign nameInput, Contact (one), CSV, Spreadsheet, Group, WA Group (one, WhatsApp-only)
Campaign name, send Now or ScheduleCSV, Spreadsheet, Contact, Group, WA Group
Campaign name, RecurringSpreadsheet, Group, Contact (all or selected)

CSV and spreadsheet columns

Columns depend on the channels you enabled:

Channel enabledColumn name
WhatsAppphone
Emailemail
Telegramtelegram
WABAwaba
Optional (all modes)name — used as a template variable

For Spreadsheet, use a Google Sheet published to the web or a direct CSV URL with the same column headers.

Step 4 — Timing

ControlWhat it does
NowSend immediately (one recipient) or start the campaign queue right away.
SchedulePick a Date and Time for future delivery. Without a campaign name, click Send to queue a one-off job on Send → Schedule. With a campaign name, click Save Campaign — the campaign appears under Send → Campaign with status Scheduled.
RecurringCampaign only. Set a start date/time and repeat every N minutes, hours, days, weeks, months, or years. Limits targets to Spreadsheet, Group, or Contact (all or selected).
Delay between recipientsCampaign only. Optional wait (0–3600 seconds) before each recipient. Same min and max = fixed delay; different values = random delay in that range.

Send — timing options, delay, and Save Campaign Sample data shown.

The footer shows the recipient count and the action button:

ButtonWhen it appears
SendNo campaign name — one recipient.
Save CampaignCampaign name entered — bulk send saved to Send → Campaign.

Recurring campaigns

Recurring is a campaign-only timing mode. Use it when the same message should go out on a fixed interval and the recipient list may change between runs — for example a Google Sheet you update weekly, or a contact group that grows over time.

Recurring is not available for one-off sends (no campaign name). If you clear the campaign name while Recurring is selected, timing resets to Now.

Send — Recurring timing with start date, interval, and Save Campaign

Sample data shown.

How to set up recurring

  1. Enter a Title in step 1 (Campaign name).
  2. Configure Channels and templates as usual.
  3. In step 3 (Target), choose Spreadsheet, Group, or Contact (all contacts or a custom selection) — other target types are hidden while Recurring is selected.
  4. In step 4 (Timing), click Recurring (the third option, beside Now and Schedule).
  5. Set Start — date and time for the first run.
  6. Set Every — a number and period: minute(s), hour(s), day(s), week(s), month(s), or year(s).
  7. Optionally set Delay between recipients (same as other campaigns).
  8. Click Save Campaign.

What happens on each run

When a recurring campaign runs, Kirisan re-reads the live source:

TargetOn each run
SpreadsheetFetches the current sheet or CSV URL again — new rows are included, removed rows are skipped.
GroupLoads the current members of the contact group.
ContactReloads All contacts or your Selected list from the directory.

Each execution is one run. After a run finishes, the campaign waits until the next interval, then starts another run with a fresh snapshot of the source. Track runs on the campaign detail page.

Recurring vs Schedule

ScheduleRecurring
RunsOnce, at the chosen date and timeRepeatedly, every N minutes/hours/days/etc.
TargetsCSV, spreadsheet, contacts, group, WA groupSpreadsheet, Group, or Contact
Best forOne-time blast at a specific momentNewsletters, sheet-driven lists, groups that change

For a single future send to one recipient, leave the campaign name empty and use Schedule — manage it on Scheduled sending. For a one-time bulk blast at a specific moment, save a campaign with Schedule timing instead.

Templates and variables

Channel templates live under Channel → channel → Templates. In template bodies:

  • {{name}} — per-template or per-recipient values (set in the editor or passed at send time)
  • [[u-name]] — account-wide custom constants from Resources → Variables → Custom
  • [[date-…]] / [[time-…]] — built-in date and time tokens

See WhatsApp Templates — Variables for a full breakdown.

When Input is the target and your templates use variables, fill in the variable fields shown below the recipient inputs before sending.

Media in templates — set a File URL in the template editor (direct HTTPS link or {{variable}}). File name is optional — leave it empty and Kirisan adds the extension from the file.

WhatsApp location — choose Location in the template editor. Only latitude and longitude are sent; there is no message or caption. See WhatsApp Templates — Location.

After sending

Every message appears in:

  • Logs → History — cross-channel activity
  • The channel’s own Logs screen — filterable send log with status and preview

Failed sends show an error status so you can retry or fix the device configuration. Saved campaigns open from Send → Campaign with live progress and per-recipient status.

Last updated: June 22, 2026
Was this page helpful?