Installing WHMCS is simple. This guide will help you through the process.
Before you start, please make sure to create a database to be used by WHMCS and the corresponding database user (using cPanel -> MySQL databases)
Firstly, we will need to upload WHMCS to your website.
Please do the following steps:
- Download the installation package (provided to you in an email).
- Upload it to the WHMCS subdomain of your website using an FTP client software (i.e. FileZilla, SmartFTP)
Important: please make sure that your FTP client is set to passive mode and the number of simultaneous connections is set to 2.
- Unpack the achieve in cPanel File Manager using ‘Extract’ button.
- Start the installation process by going to: yourdomain.com/whmcs/install/install.phpYou will need to change the permissions for the following files before the installation:
/configuration.php CHMOD 777
/attachments CHMOD 777
/downloads CHMOD 777
/templates_c CHMOD 777
Please keep in mind, that you will need to rename the ‘configuration.php.new’ file in the installation to ‘configuration.php’ first.
After the license agreement, you will see the requirements for the installation (including the permissions mentioned above), every check must be indicated as ‘Passed’:
On the next page, you will need to put in your License Key and configure the database connection:
The key should have the following format: Leased-xxxxxxxxxxxxxxxxxxxx
Use the database and database user/password you have previously created. Database Host should be set to ‘localhost’.
The last page lets you create your administrator account:
After the installation is complete, you need to delete the “install” folder from your web server and set the permissions for the configuration.php file back to 644.
Also, it is highly recommended to move your “attachments”, “downloads” and “templates_c” folders.
These three folders need to be writeable by WHMCS and therefore require the permissions 777 (writeable by all). When folders have this permission level it is safer to place the folders outside of the public accessible folder tree on your website. WHMCS allows you to do this. If you do move the folders, then you must tell WHMCS where they have been moved to by adding the following lines to your configuration.php file:
$templates_compiledir = "/home/whmcs/templates_c/"; $attachments_dir = "/home/whmcs/attachments/"; $downloads_dir = "/home/whmcs/downloads/";
In the above example, “whmcs” is the cpanel username and so the 3 folders are located in the home directory, above public_html.
After this, you need to setup a daily cron job. You can do this from your cPanel:
Set a cron job
The WHMCS cron job is the process that performs all the automated actions.
Just 1 single cron job needs to be setup to automate all the core functions of the system (invoicing, reminders, suspensions, etc…)
The cron must be configured to run no more than once per day.
Set the cron to run once a day and paste the following line to the ‘command’ field:
php -q /home/test/public_html/whmcs/admin/cron.php
where ‘/test/public_html/whmcs/’ is the path to your WHMCS folder and press ‘Add New Cron Job’.
This line can also be found on the ‘Installation Complete’ page:
cPanel > Advanced > Cron Jobs
You are now able to access your WHMCS admin area using the link: http://www.yourdomain.com/whmcs/admin
After the installation is complete, we recommend you to configure your new WHMCS system in the following order:
Login to the Admin Area and configure your General Settings (Setup > General Settings).
The General Settings – this is where basic settings such as your company name, address, domain and template are configured. Below is a description of each tab of the general config to aid in finding what you need. Click the names for an explanation of each available option.
- General – this is where basic settings such as your company name, address, domain and template are configured
- Localization – from here you can configure country, language and currency settings
- Ordering – for configuring TOS URL, where the user is taken to at the end of the order process and other order specific settings
- Domains – this is where you configure domain registration options and pricing for domain addons
- Mail – where you can choose the method used to send mail and set sending preferences and the default signature
- Support – allowing you to customize the order ticket replies are displayed and the allowed attachment types
- Invoices – from here you can set all invoicing/payment related settings
- Credit – this is where you enable/disable the credit funding feature in the client area and set limits
- Affiliates – this is where the affiliate system settings are configured such as required payout level, bonus deposit and default commission percentage
- Security – tweak the script security settings including password strength and credit card storage
- Other – this tab contains all the miscellaneous options which don’t fit under other headings
Setup your Payment Gateways
Go to Setup > Payment Gateways
Each gateway has its own specific data requirements in order to process transactions so they will vary from gateway to gateway.
However, all gateways have 3 core fields:
- Show on Order Form – Checking this box will mean it can be shown on the order form as an option – subject to product group gateway restrictions
- Visible Name – The name that is used for this gateway throughout the system and to clients (eg. gateway can be Authorize.net, visible name might be Credit Card)
- Convert To For Processing – This option is for when using multiple currencies. It is possible that not every gateway you use will accept all the currencies you offer on your site and so for those that don’t, you can choose a currency here for WHMCS to convert to before sending to them.
For example if using Google Checkout with a UK account but offering prices in GBP & USD, you would need to select GBP in the Convert To box. This will use the rates set in Config > Currencies to do the conversion which can be set to auto update daily.
Setup your Products & Services
Go to Setup > Products/Services > Options:Create a New Group
Setup > Products/Services > Options:Create a New Product
- Toadd products/services to a client’s account, the add order process has to be used
- You can do this from the Client Summary page by clicking the Add Order link in the Actions panel
Managing a Client’s Products/Services
You can locate products/services to manage in a number of ways:
- Search for the Client in Clients > View/Search Clients, and then from the Client Summary page click the ID of the product you want to manage from the list
- Search for the Product in Clients > List All Products/Services > Search/Filter, then click the product ID or domain to be taken to the product details
- Using the Intelligent Search
The Products/Services details page inside a clients profile allows you to view and modify all of a product’s settings. After making any changes, you need to click the Save Changes button to save your edits.
Domain Registrars can be configured by going to Setup > Domain Registrars
Choose the registrar you want to configure from the dropdown of available registrars and then enter the relevant details for your account.
Each registrar supported by WHMCS has specific instructions & requirements at http://wiki.whmcs.com/Domain_Registrars
Here you can also set the default nameservers that WHMCS will use for domain registrations ordered through the system.
A video tutorial for this section is available at http://www.whmcs.com/tutorials.php?i=7
We recommend using Namecheap domain registrar company (www.namecheap.com) for domain registrations as they provide the best prices and quality service.
We also offer ground for domain reselling by providing a special discount coupon to our resellers, giving you a 10% discount for domain registrations at Namecheap.
You can find the coupon in the welcome email you have received after signing up with us.
More information and details can be found at http://www.namecheap.com
After completing these steps, you can place some test orders on your website to check if everything works as expected.