PD SMS Manager for WHMCS

PD SMS Manager — SMS Notifications, Alerts & Campaigns for WHMCS

Send SMS to your clients from WHMCS — notifications, alerts and campaigns

★★★★★5.0 · our rating, not customer reviews

Made and supported by Projektif Digital Ltd. Runs inside PD Modules, the panel every module installs into.

Messaging & SMS BETA

PD SMS Manager adds text messages to WHMCS as a proper notification channel. Your clients get a text when an invoice is created or paid, when a service is activated or suspended and when staff reply to a ticket. You and your team get a text when a new order lands or something fails to set up. You can also message a filtered group of clients in one go. Every message goes through your own SMS provider account, and you pay that provider directly at its own rates.

It is built for hosting companies who know that a missed email is a late payment or an avoidable ticket, and who want the one channel people actually read at the moments that matter. Its biggest difference from a single-provider SMS module is that you are never tied to one carrier: you connect as many gateways as you like and choose which one carries each kind of message.

Why hosts choose PD SMS Manager

One module, every provider you might use. Amazon SNS, Azure Communication Services, Twilio, Vonage, Clickatell and any gateway with an HTTP API are all supported in one place, plus a Test gateway that sends nothing. Add several at once and mark one as the default. A single-provider module means a rebuild if you change supplier or need a second route. Here, you add a gateway and carry on.

Send each kind of message down the right route. Every trigger and every campaign can name its own gateway, or use the default. Put payment and security texts on a dependable transactional route, and promotions on a cheaper one. If a provider has an outage, you can point a trigger at another gateway without touching anything else.

Pay your provider, not us. No message credits are sold and nothing is marked up. Your provider's own rate is the cost of every text, and the segment counter shows what a message will cost before you send it.

Reach people at the moments that matter. Triggers send automatically for invoice created, invoice paid, service activated, service suspended or unsuspended, ticket replies, failed domain renewals and sign-ins to an account.

Stay on the right side of consent. Clients choose which kinds of text they receive, promotional texts are agreement-only by default, and an opt-out made while a message waits in the queue is honoured.

Text-message sign-in. The same gateway can send one-time codes as a second step at sign-in, for your clients and for your own staff, with no separate service to buy.

How it works

  1. Connect a gateway. Go to SMS Manager, then Gateways, and add your provider with its credentials. Test connection checks them without sending anything. Send test SMS delivers a real message to a number you give.
  2. Set the basics. Choose a default sender ID, which client field holds the mobile number, and whether to send through the queue.
  3. Turn on the messages you want. Pick templates and map them to events, or leave them off and send by hand.
  4. Watch it work. The dashboard shows what went out today and this month, and History records every message with its gateway and status.
A client's Text messages page: the kinds of text they can choose to receive, and the messages they have been sent
A client's Text messages page: the kinds of text they can choose to receive, and the messages they have been sent

What you get in WHMCS

Sending

  • Send a one-off message to a client picked by name, email or client ID using the number on file, or to any number you type
  • Count segments shows how many SMS segments the message uses before you send, counted the way providers bill: 160 characters for GSM-7, 70 for Unicode, with emoji and extension characters counted correctly
  • Drop a saved template into the message on the Send screen and in the campaign builder
  • Text a client from their own admin profile, which also shows the number we would use, where it came from and when you last texted them
  • Numbers are converted to international format automatically, adding the country code from the client's country

Templates and triggers

  • A library of templates grouped by category, each switched on or off
  • Merge fields for first name, client name, company, invoice number, total and due date, product, domain, ticket subject and ticket number; an empty field is left blank, never shown as raw braces
  • Triggers for invoice created, invoice paid, service activated, service suspended or unsuspended, staff ticket reply, failed domain renewal and client sign-in
  • Each trigger can use its own gateway and respects the sending queue

Campaigns

  • Target clients by status and client group, and send now or schedule
  • Preview audience and cost shows exactly how many clients a campaign reaches and how many segments it will cost
  • Only clients who agreed to marketing texts are included, and progress shows sent and failed against the total
  • Cancel a campaign and the unsent messages are dropped

Staff alerts

  • Each administrator sets their own mobile number and the events that text them: new order, paid invoice, new ticket and cancellation requests, plus failures to provision, suspend, unsuspend, terminate or change a package, and failed domain registrations, transfers and renewals
  • Alerts, manual sends and sign-in codes are never held by quiet hours

Running it day to day

  • A sending queue that your WHMCS cron drains in batches, with retries for messages the provider rejects and optional quiet hours
  • History with search and filters for status, gateway and date; open any message to see its full text, the provider's reference and any error, and resend it in one click
  • Honest statuses: sent, failed, or unknown when a provider did not answer in time. No message is shown as delivered when it may not have been
  • A Health report that says whether a gateway is ready, what failed this month and whether the queue is draining
  • Test gateway: record messages in History without sending them, to try templates and triggers without spending credit

What your customers get

  • A Text messages page in their client area listing recent texts and what they have agreed to, with a link to change it
  • Preferences on their Account Details page, beside their email preferences, each with a plain explanation
  • Simple, honest choices. A customer who unticks a category is not texted in it, even for messages already waiting
  • Text-message sign-in, when you switch it on, with a countdown and a way to request a new code

The pages render on WHMCS's Six, Twenty-One and Nexus themes, and their wording can be changed in a file that survives updates.

Security built in

  • Provider credentials are stored encrypted and never shown again after saving
  • A disabled gateway never sends, even if a trigger names it
  • Sign-in codes are stored hashed, and History records only that a code was sent. A code is destroyed after five wrong guesses, and one person can get at most one code a minute, so the sign-in page cannot drain your SMS balance
  • If the sending engine is ever missing, sign-in is refused rather than waved through
  • Number and message go only to the provider you connected. Nothing about your clients comes to us

One product, every feature

PD SMS Manager is one paid module with everything included: all gateways, triggers, campaigns, staff alerts, client preferences and text-message sign-in. There are no tiers. It installs into PD Modules in one click and uninstalls cleanly.

If your subscription ever lapses, your data is kept. After a 14-day grace period admin features lock, then customer-facing features stop, and automatic texts and campaigns pause until you renew, when the queue resumes and nothing is lost.

Requirements

  • WHMCS 9 or later on PHP 8.2 or later, with the ionCube Loader and cron running
  • An account with at least one SMS provider
  • PD Modules, the free control panel every PD module installs into

Questions

Which SMS provider does it use?

Yours. Connect the gateway you already have and pay them at their rates — we are not reselling messages, so there is no markup between you and your provider.

What can trigger a message automatically?

The billing and service events that need a phone rather than an inbox: a new invoice, a payment received, a service activated or suspended, a reply to a support ticket. Each trigger is switched on individually, so you send only what you mean to.

Can I message customers about something other than billing?

Yes. Campaigns send to a filtered list — your active customers, or one client group — so maintenance notices and similar announcements do not need a spreadsheet.

Do customers get a say in what they receive?

Yes. Each client manages their text-message preferences on their own Account Details page, beside their email preferences, and every automatic trigger honours them. You choose which preferences are offered and whether each starts on or has to be agreed to — promotional messages are agreement-only, as prior consent requires. Messages you send by hand are unaffected.

Will messages include the customer's details?

Yes. Templates can include name, invoice number, amount, due date and service details, so a message reads as though it was written for that person rather than broadcast.

Can I be alerted rather than the customer?

Yes. Admin alerts go to your own number for the events you care about, which is the difference between finding out about a failed setup or a cancellation request now and finding out tomorrow.

What happens if a message fails to send?

The failure is recorded against the message with what the gateway reported, and it is visible in the module's activity rather than disappearing. Customers can also see on their Text messages page whether each message was sent.

What do I need on my server?

PHP 8.2+ and a working WHMCS cron — the cron is what sends queued and triggered messages. Your gateway is reached over its standard HTTPS API.

Can clients use text messages for two-factor authentication?

Yes. The module adds a text-message second-factor method to WHMCS for clients and for your own staff, using the same SMS gateway as everything else — no separate service and no per-user fee. You choose the code length and how long a code stays valid. Your customers see it as “Text Message” in their security settings.

What if a client is locked out of their account?

They can use the backup code WHMCS gives them when they switch it on. Failing that, you turn two-factor off for that person under Clients → Manage Users, and they sign in with their password and set it up again. It affects only that person, not others sharing the account.

What happens if my subscription lapses?

Nothing of yours is touched, and nothing is deleted. The module steps down in stages instead: a 14-day grace period where everything still works and you get a renewal reminder, then admin management locks while your customers carry on being served, and only after that do the customer-facing features stop — behind a neutral "temporarily unavailable, please contact support" message that never mentions licensing to your customer. Anything the module provisioned keeps running in your own account throughout, and your data and settings stay exactly where they are. Renewing restores everything immediately.

What data leaves my server?

To send a text, the recipient's number and the message go to the SMS provider you connected — your own account with them, under your own agreement with that provider; nothing about your clients comes to us. Apart from the texts themselves, which your SMS provider carries, your customers' data stays in your WHMCS. To confirm your licence, the platform sends us four things and nothing else: your licence key, the domain, your server's own IP address and the directory it is installed in — the four values recorded against your licence in your client area. Alongside that we see which module and version you run and whether its licence is healthy, so we can ship compatible updates. We never receive your clients' personal data, your credentials, or the contents of your WHMCS. Crash reports are off unless you turn them on, and a diagnostic report is only ever sent when you send one, after showing you a preview you can edit.

How do I get help?

Open a ticket from your client area, or use Get help inside the PD Modules panel, which attaches a diagnostic report — you see a preview of exactly what it contains, and can exclude any part of it, before anything is sent. Support is included with an active subscription; bug reports are welcome whatever your licence state.

What’s new in 0.3.75

  • Staff and customer sign-in codes are now kept apart, so a customer's text-message code can never be used to sign in as a member of staff.
  • A client who refused every kind of text is no longer ticked for another kind by a second SMS module installed beside this one: only the module that manages client text preferences creates or changes them.
  • Amazon SNS: new Origination number field. A text to a UK number with no Sender ID and no origination number is refused with the reason instead of being recorded as sent, and the panel says "Accepted by Amazon SNS" because delivery is shown only in SNS's delivery logs.
  • The Client Preferences table keeps its column headings on one line in a narrow window.
  • The Text Message two-factor method's mobile-number setting now offers the number already on file unless you tick it off, as the guide says; before, it started switched off after the first save.
  • The Text Message two-factor method now opens on six digits valid for five minutes, as the guide says, instead of four digits and two minutes.
  • A domain renewal that fails at the registrar now names the domain in the staff alert and texts the client, as the trigger promises.
  • Switching a kind of text back on no longer ticks it for clients who had already turned off every kind they were shown.
  • The new-order staff alert now names the order by the order number you see in your billing system.
  • Texts and staff alerts about an invoice now quote the invoice number your customer sees in their account.

Get your website online with PD Hosting

UK hosting, domains and support from a real team. From a first site to a full server.

Terms and Conditions  ·  Privacy Policy

PD Hosting is the trading name of Projektif Digital Ltd, registered in England and Wales, company number 12482555.

PD Hosting
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.