Skip to main content

Broadcast Campaigns

Menu path: Admin -> Broadcast Campaigns

This section is used to send bulk messages to customers by email, Telegram, or both.

Main pages

  • Broadcast Campaigns
  • Create Campaign
  • Campaign Details

Before you create a campaign

Make sure the delivery channels are ready first.

What you can do

  • save a campaign as draft
  • queue a campaign for delivery
  • choose email, Telegram, or both
  • send to different customer groups
  • review delivery and open metrics

Important workflow note

In the current admin panel, this section includes:

  • list page
  • create page
  • details page
  • queue action for draft campaigns

There is no normal edit page in this section.

Because of that, it is better to save a campaign as Draft first, review it carefully, and queue it only after the content is correct.

Create Campaign field guide

FieldWhat it meansValidation or good input
Campaign NameInternal name used by adminsRequired. Keep it under 190 characters
ChannelDelivery methodRequired. Choose Email, Telegram, or Email + Telegram
AudienceWho should receive the campaignRequired. Choose the group that matches your goal
Email SubjectSubject line for email deliveryRequired when channel includes email. Keep it under 190 characters
Use Default Email LayoutControls whether the standard email layout is usedUse enabled for normal branded emails
Selected CustomersOne or more specific customersRequired when audience is Single customer or Selected customers
Require Verified EmailExtra filter for valid verified email usersOptional
Require Verified CustomerExtra filter for fully verified customersOptional
Newsletter OnlyExtra filter for newsletter subscribersOptional
Telegram Connected OnlyExtra filter for customers with Telegram connectedOptional
Email BodyMain email contentRequired when channel includes email
Telegram MessageMain Telegram contentRequired when channel includes Telegram

Audience options

The create page supports these audience groups:

  • All customers
  • Single customer
  • Selected customers
  • Verified email
  • Fully verified customers
  • Newsletter subscribers
  • Telegram connected customers

How audience and extra filters work

The Audience field chooses the main group.

The extra filter switches can narrow that group even more.

Example:

  • audience = All customers
  • Newsletter Only = enabled

Result:

  • only newsletter subscribers receive the campaign

Another example:

  • audience = Selected customers
  • Require Verified Customer = enabled

Result:

  • only the selected customers who are fully verified receive it

Use Default Email Layout

This field has two modes:

  • Use mailLayout.blade.php
  • Send raw HTML only

Use the default layout if you want the standard email design and branding.

Use raw HTML only if you already prepared a full custom email body yourself.

Available placeholders

You can personalize campaign text with placeholders.

The application supports placeholders such as:

  • {{customer_name}}
  • {{customer_first_name}}
  • {{customer_email}}
  • {{website_title}}
  • {{default_email}}
  • {{default_phone}}
  • {{site_url}}
  • {{today}}

Use them exactly as written.

Example placeholder use

Email example:

Hello {{customer_name}},
<br>
Welcome to {{website_title}}.

Telegram example:

Hello {{customer_name}}, today is {{today}}.

Buttons on the create page

The create page gives you these main actions:

  • Queue Campaign: saves the campaign and starts delivery
  • Save Draft: saves the campaign without starting delivery
  • Cancel: leaves the page

When each field becomes required

  • Campaign Name is always required
  • Channel is always required
  • Audience is always required
  • Email Subject is required for Email and Email + Telegram
  • Email Body is required for Email and Email + Telegram
  • Telegram Message is required for Telegram and Email + Telegram
  • Selected Customers is required for Single customer and Selected customers

Campaign details page

The details page shows:

  • pending recipients
  • accepted or reached recipients
  • failed recipients
  • read or open count
  • campaign status
  • recipient activity log

Email open tracking is supported through a tracking pixel.

Telegram does not provide reliable read receipts, so Telegram delivery is not counted as open or read in the same way.

Campaign status guide

The list and details page can show campaign statuses such as:

  • draft
  • queued
  • processing
  • completed
  • partially failed
  • failed

Recipient activity meanings

Inside Campaign Details, the recipient activity table helps you understand what happened for each recipient.

Common status meanings:

  • pending: waiting to be sent
  • processing: currently being handled
  • delivered or sent: accepted by the delivery process
  • opened or read: email was opened or tracked as read
  • failed: the message could not be delivered

Draft campaign action

If a campaign is still in Draft, the details page shows a Queue Draft button.

This lets you review the campaign first and start it later.

Common mistakes

  • choosing Email + Telegram but filling only one message body
  • forgetting to add selected customers when the audience requires it
  • queuing a campaign before SMTP or Telegram is working
  • using filters that make the audience too small or empty
  • writing a Telegram message but forgetting the email subject for an email campaign
  • sending a large campaign first instead of testing with a small one
  • saving the wrong content and then expecting a normal edit page to exist

If the campaign does not save

Check these points first:

  • campaign name is filled
  • channel is selected
  • audience is selected
  • email subject is filled if the campaign uses email
  • email body is filled if the campaign uses email
  • Telegram message is filled if the campaign uses Telegram
  • selected customers are chosen when the audience requires them

Best practice

  • test with one small audience first
  • keep message text short and clear
  • do not queue a campaign until SMTP or Telegram is working
  • use draft mode when you still need approval
  • use placeholders carefully and test them in a small campaign
  • review the details page after sending so you can catch failures early