Skip to main content
ImpulseVPS

Installing ImpulseVPS — step-by-step

Check the prerequisites, upload and activate ImpulseVPS, add your IVPS- key, connect a provider account, publish a server plan as a WHMCS product, and prove it with a test order.

Last updated 21 days ago

ImpulseVPS depends on ImpulseCore. Install and activate ImpulseCore first, then come back here.

Before you start

  • WHMCS 9.0 or later, with the system cron running every 5 minutes.
  • PHP 8.2, 8.3 or 8.4 with ionCube Loader 13 or later. The module is encoded, so the loader must be active before you activate it.
  • The PHP sodium extension. ImpulseVPS uses it to generate the key pair for DigitalOcean orders placed without an SSH key. Check that sodium is listed under Utilities → System → PHP Info. If it's missing, those orders stop at Create with a message naming the extension, and no server is created.
  • ImpulseCore 1.61.19 or later, installed and activated.
  • An IVPS- license key.
  • An API token for a Vultr, Hetzner Cloud, DigitalOcean or Linode account.

To check ionCube, run php -v with the PHP binary that WHMCS uses. The output should include with the ionCube PHP Loader. If you enable the loader, restart PHP-FPM afterwards.

1. Upload the files

Extract the release ZIP in your WHMCS root. You get two folders:

  • modules/servers/impulsevps/: the server module, which handles ordering, provisioning and the customer control panel.
  • modules/addons/impulsevps_addon/: the admin addon.

The new folders must have the same owner as the rest of WHMCS. If you extracted the ZIP as root, run this from the WHMCS root:

chown -R --reference=index.php modules/addons/impulsevps_addon modules/servers/impulsevps

The browser console loads scripts from modules/servers/impulsevps/console/novnc/. If a hardening rule blocks paths containing /vendor/, the console won't load.

2. Activate the addon

  1. Open System Settings → Addon Modules.
  2. Find ImpulseVPS and click Activate.
  3. Click Configure, tick the administrator roles that should have access under Access Control, and save.
  4. Open Addons → ImpulseVPS. The Dashboard opens on the Launch readiness checklist.

Activation creates the module's tables and default settings, and registers ImpulseVPS with ImpulseCore, including its scheduled tasks and three lifecycle emails in ImpulseCore's Email Center. To confirm it worked, check that ImpulseVPS is listed under ImpulseCore → Modules & Licensing → Modules and that its tasks appear under ImpulseCore → Operations → Cron. ImpulseCore runs those tasks from the WHMCS cron, so ImpulseVPS needs no cron entry of its own.

If ImpulseCore isn't ready

Activation checks ImpulseCore first. When the check fails, activation stops before anything is set up, and the message tells you what to do:

  • ImpulseCore is older than 1.61.19: upgrade it.
  • ImpulseCore isn't activated: activate it.
  • You just uploaded a newer ImpulseCore: open Addons → ImpulseCore once so its upgrade can finish.

Then activate ImpulseVPS.

If ImpulseCore isn't installed at all, ImpulseVPS activates anyway but reports that ImpulseCore isn't loaded. To fix it, install and activate ImpulseCore, then deactivate and reactivate ImpulseVPS. For each ImpulseCore message and its fix, see Fix: ImpulseVPS activation stops with an ImpulseCore message.

3. Enter your license key

You add the key in ImpulseCore, not in ImpulseVPS.

  1. Open ImpulseCore → Modules & Licensing → Licenses and add your IVPS- key for ImpulseVPS. The licensing server records your install domain on the first check, so you don't enter it anywhere.
  2. In ImpulseVPS, open Diagnostics → License. Key state should read Active — features enabled.

Without an active license, new orders are refused before anything is created at a provider. Existing servers keep running. For checks, grace periods and developer keys, see Understanding ImpulseVPS licensing.

4. Connect a provider account

  1. Add the account and its API token under ImpulseCore → Operations → VPS Providers.
  2. Under ImpulseCore → Projects → Regions, map each location you sell to the provider's region code, then enable it. Only enabled regions reach the order form.
  3. In ImpulseVPS, open Settings → Providers & Regions and click Test connection on the account. Saving a token doesn't prove it works. The test checks the token with the provider, then checks that your enabled locations match the provider's own location list. It creates nothing at the provider. If no location is mapped yet, it says so. Map one and test again.

For the access each provider's token needs, see Adding a provider account to ImpulseVPS.

5. Create a server plan

Plans & Products → Setup Guide walks one provider account through these steps and marks the next one to do.

  1. Images tab: click Refresh catalog and review the suggested mappings.
  2. Plans & Products → Server Sizes: click Import provider sizes. Imported sizes start inactive, so activate only the ones you'll sell.
  3. Server Plans: click Create server plan. Choose the provider account, then the locations, sizes, operating systems, defaults and customer tools.

6. Connect a WHMCS product

  1. In WHMCS, create the product under System Settings → Products/Services. On the Module Settings tab, choose Cloud VPS. The product doesn't need a server or server group.
  2. In ImpulseVPS, open Plans & Products → WHMCS Products, choose the product and the server plan, and click Connect and publish. ImpulseVPS creates the product's configurable options.
  3. In WHMCS, set a price on every option choice.

New choices are added at a zero price. A size without a price sells at the product's own price, or free if that is zero. When you publish again, the prices you set are kept.

7. Verify with a test order

  1. Open Diagnostics → Health Checks and run the checks. Cron jobs, VPS providers, Schema & runtime and Provisioning preflight should pass.
  2. As a test client, order the product, then accept the order. The server is created on the next cron run, usually within 5 to 10 minutes. On the Instances tab, wait for it to show as active.
  3. In the client area, connect over SSH, then try power, reinstall, firewall and snapshots.
  4. Suspend, unsuspend and terminate the service in WHMCS. Then use Force purge on the service's page under Customers so you aren't billed through the grace period, and check the provider's console to confirm that no server, snapshot or volume is left. Its firewall group may remain and costs nothing: on Vultr and Linode it keeps its rules, and on DigitalOcean it is emptied.

A test order creates a real, billable server at your provider. Run one on every provider you plan to sell.

Related

  • Understanding ImpulseVPS licensing
  • Adding a provider account to ImpulseVPS
  • Server plans: how they tie to WHMCS products
  • How provisioning works
  • Fix: ImpulseVPS activation stops with an ImpulseCore message