Skip to content
NexPanel
Docs/Docs/WHMCS & Blesta modules

Docs

WHMCS & Blesta modules

NexPanel has provisioning modules for WHMCS and Blesta. They create, suspend, unsuspend, terminate and change accounts automatically, and give clients a Log in to NexPanel button with one-click links to their email, files, databases, DNS, SSL, backups and WordPress.

WHMCS Blesta
Download nexpanel-whmcs-latest.zip nexpanel-blesta-latest.zip
Needs WHMCS 8, PHP 7.4+ with curl Blesta 5, PHP 7.4+ with curl
Create, suspend, unsuspend, terminate Yes Yes
Change package and password Yes Yes
One-click login and quick links Client area and admin Client "Control Panel" tab and admin tab
Disk usage Daily, with the WHMCS cron Shown on the service tabs
Import existing accounts Utilities › Server Sync —

Each release's modules are signed like the panel: modules/nexpanel-whmcs-<version>.zip with a .sig next to it (verify a release).

1. Create an API token

In NexPanel, open Administration › API Tokens and create a token named after your billing system, with accounts:read, accounts:write, accounts:login and nodes:read. Copy it; it is shown once.

The billing system must reach the panel on port 2087 (or the port you use). If you limit admin access by IP, the API is not affected by that list; protect it with the token.

2a. WHMCS

  1. Unzip and upload the modules folder into your WHMCS folder (modules/servers/nexpanel/).

  2. System Settings › Servers › Add New Server:

    • Module: NexPanel
    • Hostname: the panel address, e.g. panel.example.com or the server IP
    • Password: the API token (or the Access Hash field)
    • Port: 2087 by default

    Click Test Connection, then save. For a panel with a self-signed certificate, put noverify in the Username field.

  3. Products/Services › your product › Module Settings: choose NexPanel, the server group, and the Package. Optionally pick a hosting Server (empty = NexPanel places the account) and a PHP Version.

  4. New orders are created on payment, as usual for WHMCS. The client area shows the server IP, nameservers, disk use, Log in to NexPanel and quick links.

Usernames come from WHMCS. NexPanel accepts 1–16 lowercase letters and digits starting with a letter; if WHMCS sends none, NexPanel makes one from the domain and the module stores it in WHMCS. Every API call is in System Logs › Module Log (tokens and passwords are hidden).

2b. Blesta

  1. Unzip and upload the components folder into your Blesta folder (components/modules/nexpanel/).
  2. Settings › Company › Modules › Available › NexPanel › Install, then Add Server: a label, the panel address, port 2087 and the API token. Blesta checks the connection when you save. Untick Verify the TLS certificate only for a self-signed certificate.
  3. Packages › Create Package: module NexPanel, your server (or a server group) and the NexPanel package; optionally a hosting server and PHP version.
  4. Clients order with a domain. Staff can also set the username and password when adding a service by hand. Clients get a Control Panel tab with Log in to NexPanel and quick links; staff get the same on the service's NexPanel tab.

Good to know

  • Bandwidth is not metered by NexPanel yet, so the modules report disk use only.
  • Single sign-on links work once for 60 seconds and skip the customer's two-factor prompt, because the billing system has already signed the customer in.
  • Customers' own API: customers can make their own API tokens in the customer panel (Settings › API Tokens) to automate their account. See the API reference.

Wrong or missing something? Let us know.