Skip to content
Impulse SoftwareDOCS
Get modules

ImpulseCpanel

Verified for ImpulseCpanel 1.0.0 ·

Installation & activation

Upload the server module, the addon and the hook file into your WHMCS root, activate, and add a license key. ImpulseCpanel sells hosting accounts on cPanel & WHM servers you already run and license — there is no VPS to provision and no control panel to install.

Time: ~10 min · Requires: WHMCS 9.0+ · Core: 1.61.19+

You register cPanel & WHM servers you already operate rather than provisioning any, so the prerequisites are a working WHMCS + Core install plus at least one server.

  • WHMCS 9.0 or later, with ImpulseCore’s cron runner scheduled: the module’s usage sync, health checks and alerts run on it.
  • PHP 8.2 / 8.3 / 8.4 with ionCube Loader 13+ — the module’s PHP is ionCube-encoded, so the loader must be present before activation.
  • ImpulseCore 1.61.19+ — the shared Impulse addon. ImpulseCpanel depends on it for licensing, the cron runner, project membership, the audit log, the admin and client-area kits, and the shared Email Delivery service. Install and activate impulsecore before activating ImpulseCpanel.
  • A cPanel & WHM server you already run and license, with its WHM API port (2087 unless you changed it) reachable from your WHMCS server.
  • A WHM API token with full access, for root (or a root-equivalent user), on each server — Registering a cPanel/WHM server shows how to create one.
  • A license key — an ICPNL- key. Your WHMCS install’s domain is recorded the first time the key is validated; you don’t enter it anywhere.

Download the release from your license in the Impulse Software portal and extract it into the WHMCS root. You should end up with the two module directories and the hook file:

whmcs/
├── modules/
│ ├── servers/impulsecpanel/ ← Server module (cPanel & WHM API client, provisioning, client area)
│ └── addons/impulsecpanel_addon/ ← Operator admin UI and scheduled tasks
└── includes/hooks/impulsecpanel_hooks.php

The new files need the same owner and group as the rest of your WHMCS files — on Plesk that’s the subscription user, on cPanel the account’s cPanel user, and on a plain Linux server typically www-data. If you extracted them as root, copy the ownership of the existing directories from the WHMCS root:

Terminal window
chown -R --reference=modules/servers modules/servers/impulsecpanel
chown -R --reference=modules/addons modules/addons/impulsecpanel_addon
chown --reference=includes/hooks includes/hooks/impulsecpanel_hooks.php

The Imunify status reporter in modules/servers/impulsecpanel/reporter/ is the one part that isn’t encoded: it runs on your cPanel server’s own PHP, which needs no ionCube loader. You install it on a server only if you want the malware dashboard.

The release holds the module only, with no documentation bundle: these pages are its documentation, and ImpulseCpanel → Diagnostics → Help links to them.

  1. Log in to WHMCS Admin.
  2. Go to System Settings → Addon Modules.
  3. Find ImpulseCpanel in the list and click Activate.
  4. Set Access Control → Full Administrator (or whichever admin role(s) should see the addon).
  5. Click Save Changes, then open Addons → ImpulseCpanel.

Confirm registration in the Core admin: the module should appear in ImpulseCore’s module list (as Managed Web Hosting (cPanel)) and its four tasks should show as registered.

Licensing is centralized in ImpulseCore — you don’t enter the key in the module itself.

  1. Obtain your ICPNL- key from the Impulse Software portal.
  2. Enter it in ImpulseCore → Modules & Licensing → Licenses for impulsecpanel and click Save. Core validates it against the licensing server and caches the result.
  3. Open ImpulseCpanel → Diagnostics → License — it shows the status, tier and enabled features, with Manage license in ImpulseCore linking back to Core’s Licenses tab.

Core caches the license with a grace window, so a brief licensing-server outage doesn’t interrupt anything. See Licensing for expiry, grace and moving to a new server.

With the module activated and licensed, the remaining setup is all in the addon UI:

Once a server, a plan and a product are in place, place one test order and walk suspend → unsuspend → terminate to prove the lifecycle end to end before you sell.

Upload the new release over the old files the same way — both module directories and the hook file — and leave the addon active.

If your PHP opcache doesn’t revalidate files (opcache.validate_timestamps=0), reset it or restart PHP-FPM for the pool that serves WHMCS after uploading, or the old code keeps running. The Imunify status reporter on your servers isn’t touched by an upgrade; it changes only when you run its installer again.