Skip to content

Sending Campaigns

Learn how to send one-off campaigns to specific contacts and manage pending sends.

One-Off Campaign Sending

One-off campaigns let you send messages to contacts you select manually. This is useful for:

  • Seasonal promotions
  • Service reminders
  • Re-engagement campaigns
  • Announcements to specific customer segments

How to Send a Campaign

  1. Navigate to Marketing > Campaigns
  2. Open a one-off campaign (must be in Active status)
  3. Click the Send Campaign button
  4. Select recipients from your contact list
  5. Click Send to queue the messages

Filter Contacts

Use the search and filter options in the contact picker to find specific contacts quickly. You can filter by tags, last service date, or other criteria.

What Happens After Sending

When you click Send, the following happens:

  1. Batch Created - A batch record is created to track this send
  2. Messages Queued - Individual messages are scheduled for each recipient
  3. Review Window - Messages wait in queue during the cancel window (default 5 minutes)
  4. Sending Begins - Messages are sent in batches at your configured rate

Cancel Window

Before messages start sending, you have a brief window to cancel if needed. This gives you time to:

  • Review the recipient list
  • Catch any mistakes
  • Stop the send if something looks wrong

The cancel window duration is configurable in Settings > Campaigns.

Viewing Pending Sends

While messages are queued, you can see:

  • Total Recipients - Number of contacts receiving the campaign
  • Scheduled - Messages waiting to be sent
  • Sent - Messages already sent
  • Failed - Messages that couldn't be delivered

Batch Processing

To protect your sender reputation and avoid overwhelming mail servers, messages are sent in batches:

SettingDescriptionDefault
Batch SizeMessages sent per cycle10
Batch DelayWait time between batches60 sec
Cancel WindowTime before first batch starts5 min

Configure these settings in Settings > Campaigns.

Message Status Tracking

Each message goes through these statuses:

StatusDescription
ScheduledQueued and waiting to send
SendingCurrently being sent
SentSuccessfully sent to mail server
DeliveredConfirmed delivered (when available)
OpenedRecipient opened the email (email only)
ClickedRecipient clicked a link (email only)
FailedCould not be delivered

Messages are only sent to contacts who have given consent:

  • Email: Requires marketing_email_consent = granted
  • SMS: Requires marketing_sms_consent = granted

Contacts without consent are automatically skipped and marked as suppressed.

Re-sending to Same Contacts

You can send the same campaign to the same contacts multiple times. Each send creates a new batch, allowing you to:

  • Send seasonal reminders annually
  • Run monthly promotions
  • Re-engage inactive customers periodically

Avoid Over-messaging

Be mindful of how often you contact customers. Too many messages can lead to unsubscribes and damage your brand reputation.

Troubleshooting

"No eligible recipients" error

This means all selected contacts were filtered out due to:

  • Missing consent
  • Invalid email/phone
  • Already received this campaign recently (deduplication)

Messages stuck in "Scheduled"

Check that:

  1. The queue worker is running (php artisan queue:listen)
  2. The scheduler is running (php artisan schedule:work)
  3. The cancel window hasn't expired yet

High failure rate

Common causes:

  • Invalid email addresses
  • Phone numbers in wrong format
  • Mail server configuration issues

Check the email logs in Communication > Email Logs for specific error messages.

Field Service Management for Australian Businesses