Stoat Notificationsfor WHMCS · Documentation
v1.0.0

Stoat Notifications for WHMCS

Rule-based notifications from WHMCS to your Stoat community — delivered as Markdown, as an embed, or both.


WHMCS already knows when an invoice is paid, an order is placed, a ticket is opened or a service is suspended. Stoat Notifications plugs into the native WHMCS notification system as a provider, so those events can be posted straight into a Stoat channel through a webhook — no bot account required.

Each WHMCS notification rule decides which events matter, which conditions apply and which Stoat channel receives the message. The module builds a safe payload, enforces Stoat’s limits, redacts the webhook token from logs and reports permission problems in language an administrator can act on.

Rule-based delivery

Use WHMCS events and conditions to decide exactly which invoice, order, ticket, service or domain activity reaches Stoat.

Markdown or embeds

Send a formatted Markdown message, a coloured embed, or both. Choose the format per notification rule.

Multiple channels

Route billing, support and operations to different Stoat channels with a per-rule webhook override.

Hardened transport

HTTPS-only URL validation, TLS verification, timeouts, safe truncation and redacted module logs.

How it works

  1. A WHMCS event fires — for example InvoicePaid or TicketOpen.
  2. WHMCS matches the event against your notification rules and their conditions.
  3. The matching rule calls the Stoat provider with its per-rule settings.
  4. The module builds the payload, validates the webhook URL and posts JSON to Stoat.
  5. Stoat renders the Markdown and embed in the target channel.

Every delivery attempt is written to the WHMCS module log with the webhook token redacted, so you can diagnose a rejected permission or a rate limit without exposing the channel secret.

Requirements

RequirementMinimum
WHMCS8.13+ / 9.x (developed on WHMCS 9)
PHP8.1 or higher
ExtensionscURL, JSON, mbstring (all standard WHMCS requirements)
NetworkOutbound HTTPS on port 443 to your Stoat host
StoatA channel where you can create webhooks
WHMCS cronRunning, so cron-driven events such as invoice reminders are delivered

Quick start

  1. Upload the Stoat folder to modules/notifications/.
  2. Create a webhook in the Stoat channel: channel settings → Webhooks → Create Webhook, then copy the URL.
  3. Configure the provider in WHMCS: Configuration → System Settings → Notifications → Configure (Stoat). Saving sends a test message.
  4. Create a notification rule, choose Stoat as the provider and pick the format.
  5. Verify the message in Stoat and the entry in the WHMCS module log.
Webhook URL is a secret — anyone with the URL can post to the channel. The module keeps it out of logs, but you should still rotate the webhook if it is ever exposed.