PD AWS SNS for Blesta

PD AWS SNS — Amazon SNS Transactional SMS & Campaigns for Blesta

Send SMS to your clients from Blesta through Amazon SNS — notifications, alerts and campaigns

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

Messaging & SMS BETA

PD AWS SNS lets a hosting company text its clients from Blesta through its own Amazon SNS account. 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. Your team gets a text when a new order arrives. You can also run a campaign to a filtered group of clients. Amazon bills your AWS account at its own per-message rate, with no marked-up credits in between.

It is built for hosts who already run on AWS, want SMS on the same bill and the same account as the rest of their infrastructure, and want Blesta to send without a separate SMS dashboard.

Why hosts choose PD AWS SNS

Your AWS account, your rate. You connect an access key from your own AWS account, so every text is billed by Amazon at its own price. We sell no credits and add no margin.

Texts at the moments that matter. Email about a failing card gets filtered, but a text gets read. Triggers send on invoice created, invoice paid, service activated, service suspended or unsuspended and staff ticket replies.

Honest about what SNS does. When Amazon SNS accepts a message, the panel says "Accepted by Amazon SNS" rather than "sent", because delivery itself shows only in SNS's own delivery logs. A text to a UK number that has no Sender ID and no origination number is refused with that reason before anything is sent, instead of failing silently later.

Know the cost before you send. The Send screen counts segments the way providers bill them: 160 characters for GSM-7, 70 for Unicode, with emoji and extension characters counted correctly. Campaigns show the audience and the segment total before you commit.

Consent built in. 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 respected.

A safe way to trial everything. The Test gateway records messages in History without calling Amazon, so you can build templates and triggers without spending anything.

How it works

  1. Connect Amazon SNS. Under PD Modules, then AWS SNS, then Gateways, add an IAM user's access key ID and secret key and choose a region. Roles and temporary credentials are not supported. Optionally set a Sender ID, an origination number and the SMS type, Transactional or Promotional.
  2. Check it. Test connection sends nothing. If the key can read your SMS settings, it also reports your monthly spend limit and whether the account is still in the SMS sandbox. Send test SMS delivers a real message to a number you give.
  3. Switch on the messages you want. Map templates to events, or send by hand.
  4. Watch it work. The dashboard and History show what went out and how each message fared.

What you get in Blesta

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 before you send; drop a saved template into the message
  • Several SNS gateways at once, such as one per region, with one as the default; each trigger and campaign can use a chosen gateway
  • A default Sender ID that fills in when a gateway leaves it blank
  • An origination number on the gateway is used as the number Amazon SNS sends from
  • Numbers come from the phone on the client's contact and are converted to international format automatically
  • A texting panel on the client's profile, showing the number we would use and a box to text them there and then

Templates and triggers

  • Templates grouped by category, with merge fields for first name, client name, company, invoice number, total and due date, product, domain, ticket subject and ticket number
  • An empty merge field is left blank, never shown as raw braces
  • Triggers for invoice created, invoice paid, service activated, service suspended or unsuspended and staff ticket reply

Campaigns

  • Target clients by status and client group, send now or schedule
  • Preview audience and cost shows who a campaign reaches and how many segments it costs
  • Only clients who agreed to marketing texts are included; cancelling drops the unsent messages

Staff alerts

  • Each administrator sets their own number and picks the events that text them: new order, paid invoice, new ticket and cancellation requests
  • Alerts that depend on a failure are not offered on Blesta, because Blesta raises no such event
  • Alerts and manual sends are never held back by quiet hours

Running it day to day

  • A sending queue drained by Blesta's cron in batches, with retries and optional quiet hours in your company's timezone
  • History searchable by number or text and filterable by status, gateway and date; open any message for its body, the provider's reference and any error, and resend it in one click
  • A Health report showing whether the gateway is ready, what failed this month and whether the queue drains

What your customers get

  • A Text messages page in their client area with their recent texts and a summary of what they have agreed to
  • Tick boxes on their own profile and signup form, each with a plain explanation
  • Real control. A customer who unticks a category is not texted in it, and an opt-out still stands when they next save their profile for any other reason

The pages render in Blesta's client portal theme, and their wording can be changed in a file that survives updates.

The customer's Text messages page: which kinds of text they receive, with a link to change them
The customer's Text messages page: which kinds of text they receive, with a link to change them

Security built in

  • Your AWS keys are stored encrypted and never shown again after saving
  • A disabled gateway never sends, even if a trigger names it
  • A message and number go only to Amazon. Nothing about your clients comes to us

One product, every feature

PD AWS SNS is one paid module with everything included: triggers, campaigns, staff alerts, client preferences and the Test gateway. There are no tiers. It installs into PD Modules in one click and uninstalls cleanly. Customers' text preferences are kept when you uninstall, on purpose, so consent is never lost.

If you also send through Twilio, Azure, Vonage, Clickatell or another HTTP gateway, PD SMS Manager covers all of them in one module.

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 pause until you renew.

Requirements

  • Blesta 6 or later on PHP 8.2 or later, with the ionCube Loader and cron running
  • An AWS account with Amazon SNS SMS enabled, and an IAM user access key
  • PD Modules, the free control panel every PD module installs into

Questions

Do I need an AWS account?

Yes. PD AWS SNS sends through your own Amazon SNS account, so you pay AWS's own per-message rate — there are no marked-up message credits from us.

Can I try it without spending AWS credits?

Yes — add the built-in Test / Debug gateway. It records every message in History and can email them to an admin inbox without making any AWS API calls. Trial your templates and triggers for free before going live.

What AWS permissions does it need?

The IAM user or role needs sns:Publish permission in the chosen region. You can attach the managed AmazonSNSFullAccess policy, or scope it tightly to just sns:Publish.

Does it support temporary or role-based AWS credentials?

Yes. Add a Role ARN (and an optional External ID) in the gateway configuration and PD AWS SNS will assume that role for each send — ideal if you prefer not to store long-term access keys.

What is SMS Transactional vs Promotional?

Transactional SMS has the highest delivery priority and is best for service alerts, invoice reminders and account notifications. Promotional has standard priority at a lower cost and suits marketing campaigns. You set the type per gateway in the Gateways panel.

Will it text clients who have opted out?

No. 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.

What is included in the licence?

Everything — one-off sends, templates, automatic per-event notifications, delivery history, the sending queue, bulk Campaigns (with a cost estimate) and the per-admin Alert Center. One licence, no second tier.

Does it need my Blesta's cron?

Yes — the cron drains the sending queue and progresses campaigns. Keep your normal Blesta's cron running (every 5 minutes is standard).

Are my AWS credentials secure?

Yes. Provider secrets are encrypted at rest and are never echoed back to the browser after saving. On the packageion channel the module code is ionCube-encrypted, protecting the decryption logic.

What if I need more than just Amazon SNS?

PD SMS Manager adds Amazon SNS plus Twilio, Vonage/Nexmo, Clickatell and a Custom HTTP gateway all in one module. The two modules can run side-by-side in the same Blesta.

What data leaves my server?

Your customers' data stays in your Blesta. 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 Blesta. 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.

Which Blesta and PHP versions does it need?

Blesta 6.0 or later, on PHP 8.1 or later. It installs alongside whatever else you run — it adds its own tables and templates rather than modifying Blesta files, so it does not collide with other vendors' modules or with a customised template. Uninstalling removes its own tables and settings and leaves no orphans behind.

What’s new in 0.1.78

  • 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.
  • A client who unticks a text-message preference now sees it unticked when they reopen their profile, and saving their profile again no longer switches it back on.
  • 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.
  • Offering a kind of text again after switching it off (for example when you create a sign-in trigger) now turns it on for clients who never opted out.

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.