This tutorial will show you how to create your first hosting package as a reseller after you have completed your WHMCS installation

First, what is the difference between WHMCS, cPanel & WHM?

WHMCS automates all aspects of operating an online web hosting and domain registrar business whether you are using cPanel WHM, Plesk, Direct Admin, and others.

cPanel is essentially designed for your customers to create websites and domains in a few clicks, launch and manage email networks, manage and store web files, manage their sites, intranets, and keep their online properties running smoothly_

WHM is for you to customize styling and notifications to fit your brand, launch cPanel user accounts and create custom hosting packages for your customers, choose the services you want to provide, create pricing tiers, and scale your hosting business.

 

With its cPanel integration features, WHMCS gives you the easiest way to automate cPanel account creation, automatic suspension & reactivation, integrated disk & bandwidth usage reporting, remote password resets, automatic sign-in/transfer, etc.

But before you can add hosting packages to WHMCS, it is always better to start by creating the resources each package will get in WHM.

You do this by using the Add a Package interface to create a new package that you can apply to any account on your server.

 

To do this,  you need to visit the Feature Manager interface located at WHM >> Home >> Packages >> Feature Manager.

This is where you can edit feature lists that you can assign to each package which each account using that package inherits by default.

These feature lists essentially set permissions & features available to each cPanel user.

 

To create a new feature list or edit an existing feature list,  enter the desired feature list name in the Add a new feature list text box and click Add Feature List.

We suggest that you choose an easy-to-remember name so that you can properly assign it.

To edit a feature list that already exists, select the desired feature list from the Manage feature list menu and then click Edit.

Select check-boxes to enable features, or deselect check-boxes to disable features.

To disable a feature in the disabled feature list, select the feature's check-box.

Click Save.

 

Now it is time to create the cPanel package that you will use to setup WHMCS.

Visit WHM >> Home  >> Packages >> Add a Package.

Enter the desired package name in the Package Name text box.

Please note that you cannot modify package names though you can edit or delete them.

Instead, create a new package with the desired name, and then assign accounts to it.

That is why it is important to avoid package names that include details that you may wish to change later, such as price.

If you need to edit an existing package, select the package that you wish to edit from the Package menu.

Click Edit.

Make the desired changes.

Click Save Changes to save your changes, or Reset to return to the existing values.

To delete a package, select the package that you wish to delete from the Package menu.

Click Delete to delete the package.

 

For easier package management, create fewer packages and use short names.

Enter the required information in the Resources and Settings sections.

Click Add.

 

Packages can include the following resource options:

Monthly Bandwidth (MB)

The amount of information that the account can transfer each month, measured in Megabytes (MB).

Again, consider the type of content that your users intend to host because this greatly affects the amount of bandwidth that they need.

Max FTP Accounts The maximum number of FTP accounts for the cPanel account.
Max Email Accounts The maximum number of email accounts for the cPanel account.
Max Quota per Email Address (MB)

The maximum size that the account can define when it creates an email account, in Megabytes (MB). This value defaults to Unlimited.

When you adjust this value it does not affect existing email accounts.

Max Email Lists The maximum number of Mailman mailing lists for the account.
Max Databases

The maximum number of each available type of SQL database.

For example, if you set this value to 5 and allow MySQL® and PostgreSQL® databases, the account can create up to five MySQL databases and up to five PostgreSQL databases.

Max Sub Domains The maximum number of subdomains for the account.
Max Parked Domains The maximum number of parked domains (aliases) for the account.
Max Addon Domains The maximum number of addon domains for the account.
Maximum Hourly Email by Domain Relayed The maximum number of emails that any domain on the account can send per hour.
Maximum Percentage of Failed or Deferred Messages a Domain May Send Per Hour

The maximum percentage of failed or deferred messages that a domain on the account can send before your server temporarily blocks outgoing mail from that domain.

  • The system examines outgoing and local mail over the previous hour to determine whether the domain exceeds the limit. 
  • When a domain exceeds the limit, it cannot send mail until the domain no longer exceeds the limit. 
Dedicated IP* A static IP address that the account will not share with other accounts unless the user specifies an account with which to share an IP address.
Shell Access* This allows the user to access the server through a command-line interface.
cPanel Theme Select a theme from the menu in this case, paper_lantern.
Feature List This is where you select the feature list you created earlier from the menu. Again, feature lists define which cPanel features your users can access.
Locale Select a locale or language cPanel will use from the menu.
   
   

* indicates resources that may or may not be available to you depending on your reseller tier.

 

Now that you have done that, it is time to return t WHMCS.

If you haven't added a server, navigate to Setup > Products/Services > Servers and click on Add New Server.

Enter the server name, IP address, select the server type "cPanel" from the dropdown menu.

Enter your reseller username into the username field.

 

Go back to WHM and visit Development >> Manage API Tokens.

Click Generate Token.

For WHMCS to be able to perform all the operations it supports, the following permissions are required:

  • acct-summary
  • basic-system-info
  • basic-whm-functions
  • cpanel-api
  • cpanel-integration
  • create-acct
  • create-user-session
  • edit-mx
  • kill-acct
  • list-accts
  • list-pkgs
  • manage-api-tokens
  • ns-config
  • passwd
  • show-bandwidth
  • ssl-gencrt
  • suspend-acct
  • upgrade-acct

Enter a name for your token, such as "WHMCS".

Copy the generated API Token and save it in a safe place.

Click Save.

 

Return to the WHMCS server configuration page and paste the newly generated API Token into the corresponding field.

Tick the SSL Mode checkbox and make sure port 2087 is enabled.

Click Create Server to complete the process and add your new cPanel Server.

 

If the above step has been completed either by you or by our team,  go to Setup > Products/Services > Products/Services.

It is from here, you can create the product and configure the general settings and pricing info as normal.

When it comes to the Module Settings tab, select "cPanel" in the module dropdown field and then for a shared hosting package.

A list of the available packages configured in WHM will be populated into the WHM Package Name field.

Select the package you created in WHM which is what the account will be created with when this product is ordered.

Choose the setup option for new orders.

Click Save Changes.

That's it.

Your first web hosting package has now been created.

It is now time for testing time to ensure that everything is working as intended.

if during the testing you run into an issue, the first port of call would be to use the WHMCS module debugging tool to identify and resolve problems communicating with remote API systems.

The module records and displays the raw API data being sent to, and received back from the remote system.

You may want to navigate to Utilities > Logs > Module Log, then click the Enable Debug Logging button.

Reproduce the Module Command Error and reload the Module Log page.

You will now see the communication between WHMCS and the remote system.

The Response column will contain an error message that the server/registrar's documentation or support team will be able to explain.

Please note that logging should only ever be enabled for testing, and never left enabled all the time.

Дали Ви помогна овој одговор? 0 Корисниците го најдоа ова како корисно (2 Гласови)