This article provides a guide for how to integrate VPS Reseller with WHMCS. We will start by installing the WHMCS module for reselling VPS Servers. Follow the guide below to integrate VPS Reseller WHMCS module, and enable API and module connection to resell VPS hosting.

Whmcs marketplace

Getting Started with VPS Reseller with WHMCS

Please follow the below guidelines to configure your VPS Reseller with WHMCS integration.

Prerequisites

  • WHMCS installation
  • VPS Reseller account
  • WHMCS server has ports 4081-4085 open

Install WHMCS VPS Module

  1. Download and extract the WHMCS integration [HERE].
  2. Copy the entire directory via FTP, SFTP, SCP, etc. to WHMCS directory
  3. Ensure the existence of /<WHMCS_PATH>/modules/servers/rad_cloud
  4. Ensure the existence of /<WHMCS_PATH>/modules/addons/rwhserverimport

Get API Credentials

  1. A VPS Reseller Welcome Email was sent with the required API Credentials after payment confirmation.
  2. In case you do not have this email, you can view it in your Rad Web Hosting client dashboard.
  3. Login to Rad Web Hosting client dashboard.
  4. Retrieve API key and Secret from VPS Reseller Welcome Email (Subject: “Your VPS Reseller Account is Deployed”). View guide: Viewing Email History in Hosting Dashboard
  5. Copy the API key pair credentials (these will be needed to configure WHMCS server connection).Copy api key pair

Create Server in WHMCS Admin

You must now create a server in the WHMCS admin.

  1. Login to your WHMCS admin area.
    Login to whmcs admin
  2. From WHMCS Admin > Setup > Apps & Integrations > Browse > Provisioning
    1. Select “Apps & Integrations” from Configuration Menu Items
      Select 'apps & integrations' from configuration menu items
    2. Choose “Browse” Option
      Click 'browse' button
    3. Choose “Provisioning” category
      Choose 'provisioning' category
    4. Click the “VPS Reseller Module”
      Choose 'vps reseller module'
    5. Viewing VPS Reseller Module Application DetailsWhmcs vps reseller moduleYou can also access this interface directly with the following URL:
      {your_whmcs_admin_url}/apps/app/servers.rad_cloud

      For example, if your WHMCS Admin is at https://yourdomain.com/admin, then you will access: https://yourdomain.com/admin/apps/app/servers.rad_cloud

  3. Click “Create New Server”. Follow directions:
      1. Module: Rad_cloud
      2. Hostname of IP Address: IP Address (provided in Welcome Email)
        Retrieve the cloud cluster ip address from the welcome email
      3. Username: API KEY (provided in Welcome Email)
        Retrieve the api key from the welcome email
      4. Password: API PASSWORD (API SECRET) (provided in Welcome Email)
        Retrieve the api password from the welcome email
        Enter the values in the provided fields:
        Whmcs vps reseller module
      5. Click “Test Connection” to validate configuration
      6. Click “Add Server” to add this server to WHMCS
        Configure server in whmcs - advanced mode

      You can verify the connection from WHMCS Admin > Setup > Apps & Integrations > Active:

      Rad web hosting whmcs module active

      Create Product

        1. Navigate to Setup > Products/Services > Products/Services.
        2. Select “Create a new Product
          1. Product Type: Server/VPS
          2. Product Group: Any
          3. Product Name: Any

      Configure whmcs product

    1. Click “Continue” to Add product and access Product Settings
    2. Go to “Module Settings” tab and enter the following details:
      1. Module: Rad_cloud
      2. Required Module Settings: these settings must be set with the following values (or provisioning automation will fail)
        1. Type: KVM
        2. Burstable RAM: (empty)
        3. VNC: (Tick Box) Yes
          Configure product module settings
      3. Configure Module Settings: These fields should be configured as per your desired product values
        1. Disk Space: integer (in GB)
        2. Guaranteed RAM: integer (in MB; 1024MB=1GB)
        3. SWAP RAM: integer (in MB; 1024MB=1GB)
        4. Bandwidth: integer (in GB)
        5. CPU Cores: integer
        6. IPs: integer
        7. IPv6: integer
        8. IPv6 Subnets: integer
        9. Region: “USA”
        10. Select “Automatically setup the product as soon as the first payment is received” (for automated provisioning workflow)
    3. Go to “Custom Fields” tab and create required Custom Fields:
        1. Field Name: vpsid
      1. Field Type: Text Box
      2. Description: The ID of the server from VPS Panel. 
      3. Validation: (empty)
      4. Check Admin Only tick box.
    4. Field Name: OS or OS|Operating System
      1. Field Type: Drop Down
      2. Description
      3. Validation: (empty)
      4. Select Options: (Comma-separated values of OS template file names-remove “.img” file extension) – Click here to get available OS templates
        1. Example values: centos-8.2-x86_64,debian-11-x86_64,ubuntu-22.04-x86_64
      5. Check Required Field and Show on Order Form tick boxes.

Product custom fields

(Recommended) Optional WHMCS Integration Customization

We recommend to create a new VPS welcome email template, rather than use the default template provided with WHMCS.

We have provided a custom email template to use for sending VPS server credentials to end-user when VPS is provisioned (created). This template will utilize merge fields and organize important server details better than the default “VPS/Dedicated Server Welcome Email” template  that is provided with WHMCS. How to add custom Welcome Email template:

  1. In WHMCS admin area, navigate to “Setup->Email Templates”
  2. Choose to “Create New Email Template”
  3. Select “Product/Service” from the “Email Type” drop-down menu and give the template a unique name
    Create custom vps welcome email template
  4. Configure the email sending settings
  5. Add a subject for your email (i.e. “New VPS Server Details”)
  6. To import our pre-made template, click “Enable/Disable Rich-Text Editor” button
  7. Copy and paste the email template from below:

This is a basic template layout and you can customize or add additional details, if desired.

WHMCS Product Configuration Tips

In order to enable automated provisioning, the product must be configured with a valid “Operating System” value. This value can be configured with either a product Custom Field or Configurable Option. With either method, it is possible to declare the Operating System value from the Order Form during product configuration (client makes selection during checkout process).

We recommend using the Configurable Option method to declare the Operating System value, as future modifications (such as availability of new OS template) are simpler.

Values for Available OS Templates

Rad Web Hosting keeps a public list of available KVM OS templates in the Knowledgebase, at: VPS Guides -> List of Available OS Templates

The highlighted values from the “Name” column (shown in the below image) are the API-acceptable values for operating system templates. For example, “centos-8.2-x86_64” or “ubuntu-20.04-x86_64” (without parenthesis) would be the correct values required by the API.

List of available os templates

Create Operating System selection via Product Configurable Options

Using Configurable Options to configure order form Operating System selection is more extensible and easier to manage from an administrative perspective if you plan to offer multiple VPS products. The Product Custom Fields OS selection values are assigned directly to each individual product, and thus require more efforts to make a change to the OS selector, like adding a new operating system template. With custom fields OS method, the simple addition of 1 new template requires manual modification of each product’s custom fields.

With Operating System Configurable Options implementation, a single Configurable Option can be assigned to multiple products, and an update to the Configurable Option values automatically applies to all assigned products. In this type of situation, Configurable Options can provide the same results while also reducing the number of database entries written and reduces administrative work when changes are needed.

Follow the steps to add Operating System selection via Product Configurable Options:

  1. Create new Configurable Options group
  2. Add new Configurable Option named “Operating System” (exact name required)
  3. Select “Drop-Down” from the Format options
  4. For each Operating System template option you wish to offer, enter the value exactly as it appears in the “Name” field from the table provided in the List of Available OS Templates (as described above)
  5. Assign the Configurable Options group to VPS products by selecting the Product Names from the products list provided in Configurable Options group settings.

Now, the list of OS templates will be presented to client at checkout when a VPS product is added to the Shopping Cart.

For complete details on creating Configurable Options, please refer to this article from WHMCS.

Optional Configurable Options

The WHMCS VPS Reseller module also supports the following Configurable Options:

  • Number of IPs – number of IPv4 to add to VPS (Integer)
    Integrate vps reseller with whmcs - configurable options - number of ips
  • Space – amount of disk storage to assign VPS (Integer-in GB)
    Integrate vps reseller with whmcs - configurable options - space
  • RAM – amount of physical memory to assign VPS (Integer-in MB; 1024MB=1GB)
    Integrate vps reseller with whmcs - configurable options - ram
  • CPU Cores – number of CPU Cores assigned to VPS (Integer)
    Integrate vps reseller with whmcs - configurable options - cpu cores
  • Operating System – selection for KVM template image file to install operating system (name-version-architecture-without “.img” file extension: i.e. “ubuntu-22.04-x86_64”)
    Integrate vps reseller with whmcs - configurable options - operating systems

You must use the exact names for configurable options (listed in bold above). You can change the output values of configurable options by appending a “|” followed by the desired text.

For example, you can create a configurable option named “Number of IPs|IP Addresses”, which would output “IP Addresses” only, but still function properly with the VPS Reseller module API.

Integrate vps reseller with whmcs - configurable options - order form output
Integrate vps reseller with whmcs – configurable options – order form output

Values configured by Configurable Options take precedence over Product “Module Settings” and “Custom Fields”. For example, if the “RAM” configurable option is provided, this value would be used rather than the value assigned by “Guaranteed RAM” value in “Module Settings”.

Client Area Features

Vps reseller end-user client area product details

WHMCS Admin Product Management

Whmcs admin product management

Where to Download WHMCS VPS Reseller

The latest version of WHMCS VPS Reseller module can be downloaded from multiple third-parties.

Currently, the following Marketplaces/Repositories are confirmed to support the latest updates:

Download whmcs vps reseller on whmcs marketplace
Download whmcs vps reseller on sourceforge
For any issues with installation, please open a support ticket.

Read Also

Avatar of editorial staff

Editorial Staff

Rad Web Hosting is a leading provider of web hosting, Cloud VPS, and Dedicated Servers in Dallas, TX and Phoenix, AZ.

Leave a Reply

lg