Skip to content

Marketing campaigns

Bulk SMS and email to patients who gave marketing consent — with audience selection, a consent check and a send window.

Required permissions:
Clinic Admin
Reviewed: 2026-08-24

A campaign is one message sent to many patients at once — an invitation after a long gap, news about a new service, seasonal greetings. Heltio checks consent separately for every recipient and skips those the message could not lawfully reach.

This is a different feature from reminders: those rest on your contract with the patient, this one on their explicit marketing consent.

Open Marketing

How to do it

01

Collect the consents first

No consent, no send — and a missing consent is not an obstacle to route around. Consent is recorded on the patient card, in the Marketing consent card: Marketing — SMS and Marketing — Email separately. The Record consent button opens a dialog with a Note (optional) field — put how it was collected there, verbal at reception or paper form for instance.

Each channel shows Reachable or Blocked with a reason — No phone number or Patient objected to marketing (Art. 21), say.

02

Choose the audience

New campaign runs through three steps: Audience, Content, Review. Start with a name — Autumn reactivation, for instance.

On the Audience step you pick the Channel (it locks once you continue, because it drives both eligibility and content) plus the filters: Last visit on or after and before, City, Upcoming appointment, Include archived patients.

The Eligibility preview card recomputes live: In segment, Eligible, and the skips broken down into Objection, No consent, Opted out and No contact. Campaigns always cover adults only.

Under 2 is the step counter — a campaign has three. Under 3 is the content of the first one: the audience filters and the eligibility recount side by side.

Konto demonstracyjne — dane przykładowe, nie są to dane rzeczywisteNew campaign1Krok 12Krok 23Krok 3Krok 1 z 3: Dane podstawoweOpis bieżącego kroku. Wypełnij pola poniżej, aby przejść dalej.Formularz dla bieżącego krokuPole AWprowadź wartość...Pole BWprowadź wartość...Pole CWprowadź wartość...← WsteczDalej →2Step counter3Filters and eligibilityrecount
Step 1 of three — choosing the audience. The channel picked here locks when you continue, because both eligibility and content depend on it.
03

Write the message

For SMS you fill in the SMS message; for email, the Subject and the Message. Two starters help: Reactivation and Greeting.

The footer is appended automatically: "Reply STOP to unsubscribe" on SMS, an unsubscribe link on email. The counter under the field shows how many SMS segments the message takes — and that multiplies by the number of recipients.

04

Schedule the send

On Review you see the eligible count against the whole segment, Segments per message, Estimated SMS credits, Wallet balance and Sends left for this day.

The Send at field sets the time; Send now (within the 08:00–20:00 window) starts as soon as it can. Sending never leaves the Send window measured in clinic time — even if you set a night-time slot, the messages wait until morning. At most ten campaigns go out on any one day.

You confirm the campaign with Schedule campaign.

05

Check the results

A campaign on the list has the status Draft, Scheduled, Sending, Sent or Cancelled. Opening it shows the Queued, Sent, Delivered, Failed and Skipped counters, plus a Recipients list with the skip reason beside each person.

Cancel campaign stops the send: queued recipients will not be contacted, and messages already sent stay as they are. This cannot be undone.

When something doesn't work

CAMPAIGN_EMPTY_SEGMENT
Warning

This audience has no patients. Adjust the filters and try again.

What this means: The filters caught nobody, or everyone fell out at the consent check.

What to do: Widen the date range, drop the city filter, and look at the **Eligibility preview** to see which skip reason dominates.
CAMPAIGN_SMS_TOO_LONG
Warning

The SMS is too long. Shorten it and try again.

What this means: The text plus the appended footer exceeds the allowed length.

What to do: Shorten the text, or drop the Polish diacritics — without them a segment holds 160 characters instead of 70.
CAMPAIGN_DAILY_QUOTA_EXCEEDED
Warning

You've reached the daily campaign limit for that day. Try another day.

What this means: Ten campaigns are already scheduled for the chosen day.

What to do: Move the send to another day, or merge several campaigns into one.
CAMPAIGN_SCHEDULED_IN_PAST
Warning

The send time is in the past. Pick a future time.

What this means: The time you set went by before the campaign was saved.

What to do: Choose **Send now** or pick a time in the future.
SMS_WALLET_EMPTY
Error

Paused: the SMS wallet is empty. Top up to resume sending.

What this means: The balance ran out mid-send.

What to do: Click **Top up SMS wallet**. The campaign picks sending up where it stopped.
FEATURE_GATED
Info

Marketing campaigns aren't included in your current plan.

What this means: The feature needs a higher subscription plan.

What to do: Check your plan under [subscription](/pomoc/funkcje/finanse/subskrypcja-heltio).
TOO_MANY_REQUESTS
Warning

Too many requests. Wait a moment and try again.

What this means: Campaigns scheduled or eligibility recomputed too rapidly.

What to do: Wait a few minutes. A saved draft is not lost.

Who has access

Clinic Admin

Campaigns are created and sent by the clinic owner and admin only — it is the one feature where a single click reaches hundreds of people at once. Marketing consent on a patient card is recorded by the same roles; others see You do not have permission to change marketing consent.

Was this article helpful?

Didn't find an answer? Write to us.

Open the contact form