ISP Billing ISP Billing Documentation
Italiano Back to website
Communications and support

Campaigns and communications

CRM customer campaigns and newsletters for external subscribers, with contact confirmation and withdrawal.

Last updated: 2026-09-29

Newsletter contacts outside the CRM

Under Communications → Newsletter contacts, collect subscriptions from people who are not CRM customers. The directory shows name, contact, channel, source, confirmation and withdrawal. You can also search by name; a dash appears when no name was supplied. States are Awaiting confirmation, Subscribed and Unsubscribed. History shows subscriptions and withdrawals with the accepted text.

CSV imports and operator-created subscriptions are unavailable. On public forms each person enters and confirms their own contact. Hotspot registrations record explicit opt-in during registration without an additional newsletter confirmation. Email, SMS and WhatsApp have separate permissions: confirming one does not enable the others. A newsletter subscription does not create a CRM customer.

Configure forms and embed them on a website

Open Subscription forms from the directory. Communications write permission is required. Enter a title, introduction, HTTPS privacy notice link, commercial consent text and offered channels; enable Accept new subscriptions and save. Up to 50 forms can distinguish websites or collection points.

Choose Edit / Script in the list and open Add to your website. Choose a Compact card for the footer, a Button that opens the form in a dialog, an Inline form with immediately visible fields, or a Direct link for menus, social posts and existing buttons. Cards and buttons open the form only when clicked. Customise the card title and short text, button label and colours; the opened form retains the ISP logo and colours.

The Preview offers desktop and mobile examples with fields and submission disabled. Try the button and close the dialog with Close or Esc. Embed customisations are included in the copied code: keep that code to reuse them. Press Copy code and paste it into an HTML block at the indicated location. Direct links also offer Copy link only. Use a direct link if the website editor does not accept scripts. Previously embedded scripts continue to show the inline form. Use Open public form to see the actual page. The public page uses the logo, favicon and colours already configured for the ISP. Consent is initially unchecked. Suspending a form stops new subscriptions without removing confirmed subscribers or preventing withdrawal.

Only active, configured ISP channels can be selected: Email requires complete Communications SMTP settings, SMS requires a configured service, and WhatsApp requires its configured service plus SMS for confirmation. The public form shows only selected channels that remain available. If none remains, new subscriptions are suspended; you can still save an inactive form. First configure SMTP in Communications and an SMS service for phone verification, including WhatsApp subscriptions. SMS confirmations use the ISP service and credits. The ISP supplies the notice and consent wording.

Confirm contacts and recover access

Visitors may enter their Full name (optional, up to 150 characters), select a channel, enter an email or phone with international prefix, read the notice and accept consent. The name appears in the directory and personal page only after contact confirmation. Access recovery neither asks for nor changes the name. Email recipients receive a link valid for 24 hours and press Confirm subscription. Confirmation and recovery emails use the ISP logo, colours and signature configured in the customer email template; when no email logo is set, the customer area logo is used. SMS and WhatsApp recipients receive an SMS code valid for 15 minutes. Five incorrect codes require a new confirmation request. Unconfirmed contacts do not receive campaigns.

To inspect an existing subscription, use Already subscribed? Manage your subscription below the subscription card. A separate page lets you select the channel and enter your contact without accepting a new subscription consent. Access is sent to the contact without requiring a customer account. Recovering an existing WhatsApp subscription only requires the SMS verification service to remain available. Personal links already received still allow withdrawal when a channel is disabled. Frequent requests are temporarily limited. If the consent text changes before confirmation, a new request is required. Requests left unconfirmed for more than seven days are removed.

Hotspot sources

New Hotspot registrations with explicit opt-in are separated by gateway and need no additional newsletter confirmation email. Public newsletter forms retain their confirmation. Use the Source filter in the directory; choose one gateway or all sources in campaigns. Each recipient gets one copy per channel. Repeated login neither duplicates subscriptions nor reactivates withdrawn consent. Configure collection, controller, privacy notice and channels in the Hotspot portal.

Campaigns for newsletter subscribers

In Campaign audience, choose CRM customers for existing customer and service filters, or Newsletter contacts for external subscribers. Newsletter campaigns use Marketing and Email, SMS or WhatsApp; ISP APP remains for CRM customers. Under Source, choose all sources, a public form or a Hotspot gateway. The same person can have independent permissions in different sources; a campaign sends one copy per contact and channel.

After saving, Reachable subscribers shows confirmed recipients and their count. Table searches do not change campaign recipients. Save settings before scheduling. Campaigns without confirmed subscribers cannot be scheduled. For newsletter campaigns, personalisation buttons offer Full name and Email for email messages, or Full name and Mobile for SMS and WhatsApp. The full name comes from the subscription and is replaced with empty text when omitted. Separate surname and business name are unavailable. Fields update when the audience or channel changes; CRM customers retain the usual customer fields.

Every newsletter email and message includes a personal Manage subscription / Unsubscribe link. In SMS this increases message length and may require more credits than the text alone. WhatsApp Meta requires an approved Marketing template including the subscription management link in its text; the template variable configuration must provide for it. Missing support blocks saving or scheduling with an explanatory message.

Simple withdrawal and new subscriptions

The recipient opens Manage subscription / Unsubscribe, views contact, channel and status, and presses Unsubscribe from this channel. No login is required. Opening the link alone does not unsubscribe. Expired links can be replaced by requesting access from the form.

Withdrawal excludes newsletter messages that have not yet been handed to the delivery service, including previously scheduled sends. Messages already handed over cannot be recalled. A new subscription requires fresh confirmation and does not restart earlier sends. This does not change preferences on a separate CRM customer record.

Communications in customer logs

Open Logs from the customer record. New campaign sends create a Service communications or Marketing communications entry with the scheduling account, original campaign title, channel and status. Multiple contacts or devices for the same customer are grouped into one entry per campaign send.

The title, channel, status and eye icon appear side by side, wrapping only when space is limited. Hover over Preview for an excerpt, or click or tap to open recipient-specific content. The header highlights channel and status, places the recipient beside the date, and shows the subject above the message. On smaller screens, the summary wraps onto additional lines. Later campaign edits do not change the stored title or messages. After a successful WhatsApp Meta send, the text of the template used is retained. Email previews also display logos and images available at their original addresses. Links remain disabled; any associated media is shown by its reference.

Statuses distinguish Scheduled, Waiting, Sent, Error and Cancelled. Sent does not confirm delivery or reading. Cancellation retains history and stops only messages that can still be cancelled. HTML details show the version at scheduling time; linked pages may change later.

Access requires customer CRM read permission. Sends preceding this feature remain in Communications history and are not retrospectively attributed to an account.

Module purpose

Communications manages bulk Marketing and Service campaigns over email, SMS, WhatsApp, and ISP APP. A campaign combines purpose, audience rules, one channel, content, and a reusable configuration.

Saving defines the campaign but sends nothing. Scheduling creates an immutable recipient snapshot and queue rows, which are later processed by the appropriate channel worker.

Campaign list and lifecycle

The list provides campaign ID, name, channel, purpose, duplicate, edit, and conditional delete actions. A campaign cannot be deleted once snapshots or queue records exist because operational history must remain traceable.

Communications campaign list
The campaign catalog is separate from the delivery log.

Name, description, and purpose

Use a recognizable internal name and description that explain the campaign, owner, period, and expected audience. Choose Marketing for promotional content or Service communications for operational information.

Purpose is not merely a label: it selects the corresponding customer notification preference during scheduling. Do not classify promotional material as service communication to bypass consent.

Audience filters

Audience rules can filter customer state and type, customer groups, service groups, presence of associated services, suspended or terminated services, and city. Multiple criteria combine and can narrow the result dramatically.

Define the smallest useful audience, save, and inspect reachable customers before scheduling. Test combinations that might include terminated customers or unrelated service holders, and treat an empty result as a configuration signal rather than weakening filters blindly.

Campaign audience filters
Purpose, customer criteria, and service criteria define the potential audience before consent is applied.

E-mail channel

E-mail provides a subject and rich editor. Merge fields include first name, last name, business name, mobile, and e-mail. Missing customer data may produce an empty value, so the final sentence must remain readable.

E-mail campaign editor
E-mail combines subject, formatted content, and recipient-specific merge fields.

SMS channel

SMS uses plain text and displays character and credit estimates. Encoding and special characters may increase the segment count. Customers without an eligible phone preference do not receive a queue entry.

SMS campaign editor
Review message length and credit estimate after personalization.

WhatsApp channel

The provider observed in the example accepts plain text and a full public media URL. A Meta configuration instead uses approved templates, required variables, preview, an 800-character final limit, and an optional Details button for secured short-code HTML content.

WhatsApp campaign editor
Fields adapt to the configured WhatsApp provider.

ISP APP channel

ISP APP sends text to registered push tokens and is offered only when the app module is active. A customer without an enabled preference and device token is not queued.

ISP APP campaign
Push delivery requires both consent and a registered device.

Saving does not send

Saving creates or updates the reusable campaign and exposes its preview and reachable-customer tools. No queue row or outbound provider request is created until an operator explicitly schedules a send.

The channel is fixed on edit because each channel has different content and recipient rules. Duplicate or create a new campaign when another channel is required. Changes affect future schedules only and never rewrite an already-created snapshot.

Reachable customers and manual selection

After the first save, Reachable customers lists customers with at least one contact enabled for the selected channel and purpose. For email, Recipient emails shows all enabled primary and additional addresses for each customer. SMS and WhatsApp show recipient numbers; ISP APP shows the number of devices. Duplicate contacts for the same customer count once, and invalid email addresses are flagged.

The summary separates customers from contacts: a customer can have several recipients. An address shared by different customers is counted for each customer. Totals follow campaign criteria and the manual selection; column searches only filter the displayed table and do not change the audience. Searching for one address still shows that customer’s other recipient addresses.

Select only some customers narrows the audience. Other eligible customers remain listed so they can be added. An empty manual selection shows zero recipients and cannot be saved: select at least one customer or turn manual selection off. Restore all customers returns to the campaign criteria.

The table previews current settings: save changes before sending. Preferences and contacts may change before scheduling; already scheduled sends keep their stored recipients. An enabled contact does not guarantee delivery.

Consent and effective recipient

Scheduling joins campaign filters with an enabled preference for the selected channel and either marketing or service purpose. E-mail uses the selected or general address; SMS and WhatsApp use the selected or primary number; ISP APP uses a push token. Rows without a recipient are skipped.

Schedule and snapshot

Choose date and time in send history and press Send. The application creates a snapshot and personalized queue rows rather than delivering directly from the browser. History reports total, sent, pending, and errors.

Campaign schedule and history
Scheduling is an explicit stage after content and audience review.

Send queue and statuses

The queue records customer, campaign, channel, effective recipient, purpose, scheduled date, attempts, status, and error information. Main states are To send, Sent, and Error; the snapshot can also reveal skipped or failed recipients.

Use the queue to distinguish campaign configuration from provider delivery. Sent means the worker completed the supported provider request, not necessarily that the person read the message or acted on it.

Queue flow

Saved campaign → scheduled snapshot → consented recipients → To send rows → channel worker → Sent or Error.

Cancel a scheduled send

Cancellation stops eligible pending rows belonging to the scheduled snapshot. Review campaign, snapshot time, remaining pending count, and business reason before confirming.

Cancellation cannot recall email, SMS, WhatsApp, or push messages already processed by a worker. Keep sent and error history for traceability, and create a corrected campaign or schedule rather than modifying evidence from the cancelled run.

Automatic execution by channel

Dedicated command-line workers process the email, SMS, WhatsApp, and ISP APP queues in scheduled batches. The former HTTP cron path is disabled, so opening a URL or queue page does not dispatch campaigns.

Install each required worker with non-overlapping scheduling, correct runtime environment, and monitored logs. Verify last run, claimed rows, retries, provider errors, and locks after activation.

Module settings

Communications settings select the already configured SMTP profile used for campaign email. SMS and WhatsApp use the ISP’s active/default provider configurations, while ISP APP requires its enabled module and registered customer devices.

Test every underlying channel before offering it in a campaign. Changing a default provider or SMTP profile affects future worker execution and should be coordinated with pending queue rows.

Communications SMTP settings
The campaign module references transport providers configured elsewhere in ISP Billing.

Shared event templates

Communications also owns the common E-mail, SMS, WhatsApp, and ISP APP template records used by invoice, ticket, quote, e-commerce, and other module events. They are normally edited from the owning module’s Settings page, not from the Campaign list.

The stable event name binds the four channels to the same operational moment. Review subject, body, allowed variables, and fallback before saving. Changes affect future event sends but do not rewrite campaigns or messages already queued.

Pre-send checklist

  • Recognizable internal name
  • Purpose matching the content
  • Available channel and provider
  • Specific audience filters
  • Reachable customer list reviewed
  • Valid preferences and contacts
  • Merge fields reviewed in context
  • SMS or Meta limits checked
  • Authorized public media URLs
  • Correct scheduled date and time
  • Queue and snapshot checked afterward
  • No duplicate retry of already sent rows