> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.webway.host/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to link WHMCS to your reseller server

# How to Link WHMCS to a Reseller Package in WHM and DirectAdmin

| WHMCS (Web Host Manager Complete Solution) is a comprehensive client management and billing software that automates all aspects of a web hosting business. Linking WHMCS to your reseller package in WHM (Web Host Manager) and DirectAdmin allows you to automate the account creation, suspension, termination, and more, directly from WHMCS. This knowledgebase article will guide you through the process of integrating WHMCS with a reseller package in both WHM and DirectAdmin.

## Prerequisites

|| - A WHMCS license and installation.
|| - Access to your reseller hosting account with WHM or DirectAdmin.
|| - API access or a remote access key (for WHM).

## Part 1: Linking WHMCS to a Reseller Package in WHM

### Step 1: Generate API Token in WHM

1. Log in to WHM as the reseller user.
2. Navigate to `Development` > `Manage API Tokens`.
3. Click `Generate Token`.
4. Name your token and ensure the token has the necessary permissions for account management. The following permissions are required in order for WHMCS to interact properly with WHM:

*  `Create Accounts`: Necessary for WHMCS to create new cPanel accounts as part of the hosting provisioning process.
*  `Suspend/Unsuspend Accounts`: Allows WHMCS to suspend or unsuspend accounts based on payment status or at the administrator's discretion.
*  `Terminate Accounts`: Enables WHMCS to remove accounts that are cancelled or terminated by the client or administrator.
*  `List Accounts`: Required for WHMCS to retrieve a list of accounts on the server, useful for account synchronization and management.
*  `Modify Account`: Allows WHMCS to change account properties, such as upgrading or downgrading hosting packages.
*  `Change Password`: Enables WHMCS to update the password for hosting accounts, useful for account recovery or security updates.
*  `DNS Zone Management`: If WHMCS is used to manage DNS zones, permissions for adding, editing, and removing DNS zones may be required.

5. Save the generated token securely.

### Step 2: Configure the WHM Server in WHMCS

1. Log in to your WHMCS admin panel.
2. Navigate to `Setup` > `Products/Services` > `Servers`.
3. Click `Add New Server`.
4. Enter the server details:
   * **Name**: A recognizable name for your server.
   * **Hostname**: Your server's hostname or IP address.
   * **Type**: Select `cPanel/WHM`.
   * **Username**: Your WHM reseller username.
   * **Password**: Enter the API token you generated in WHM as the password.
   * **Access Hash**: Leave this blank if using an API token.
5. Save the server settings.

### Step 3: Test the Connection

1. After saving, click `Test Connection` to ensure WHMCS can communicate with WHM.
2. If successful, you'll see a success message. If not, verify your details and permissions.

## Part 2: Linking WHMCS to a Reseller Package in DirectAdmin

### Step 1: Enable API Access in DirectAdmin

1. Log in to DirectAdmin as the reseller user.
2. Ensure API access is enabled in your account settings. This following permissions are required in order for WHMCS to interact properly with DirectAdmin:

* `CMD_API_PACKAGES_RESELLER`
* `CMD_API_SHOW_ALL_USERS`
* `CMD_API_DNS_CONTROL`
* `CMD_API_SHOW_USER_CONFIG`
* `CMD_API_ACCOUNT_USER`
* `CMD_API_MODIFY_RESELLER`
* `CMD_API_RESELLER_STATS`
* `CMD_API_PACKAGES_USER`	
* `CMD_API_SHOW_USERS`
* `CMD_API_DNS_MX`
* `CMD_API_SYSTEM_INFO`
* `CMD_SELECT_USERS`
* `CMD_API_MODIFY_USER`
* `CMD_API_ADDITIONAL_DOMAINS`
* `CMD_API_SHOW_RESELLERS`
* `CMD_API_FTP`
* `CMD_API_SHOW_RESELLER_IPS`
* `CMD_API_USER_PASSWD`
* `CMD_API_SHOW_USER_USAGE`

### Step 2: Configure the DirectAdmin Server in WHMCS

1. Log in to your WHMCS admin panel.
2. Navigate to `Setup` > `Products/Services` > `Servers`.
3. Click `Add New Server`.
4. Enter the server details:
   * **Name**: A recognizable name for your server.
   * **Hostname**: Your server's hostname or IP address.
   * **Type**: Select `DirectAdmin`.
   * **Username**: Your DirectAdmin reseller username.
   * **Password**: Your DirectAdmin password.
5. Save the server settings.

### Step 3: Test the Connection

1. Click `Test Connection` to verify that WHMCS can communicate with DirectAdmin.
2. A success message indicates that the connection is correctly configured.

## Additional Configuration

* **Create Hosting Packages**: In WHMCS, navigate to `Setup` > `Products/Services` > `Products/Services` to create packages that correspond to your reseller packages in WHM or DirectAdmin.
* **Automate Account Provisioning**: Configure product settings in WHMCS to automate the provisioning process for new orders.

## Conclusion

Linking WHMCS to your reseller package in WHM or DirectAdmin simplifies managing your hosting business, providing an automated solution for account management tasks. Ensure you keep your API tokens and passwords secure and regularly test your configuration to ensure smooth operation. This guide should help you set up the integration successfully; however, always refer to the latest documentation of WHMCS, WHM, and DirectAdmin for any updates or changes in the process.
