Importing from WHMCS
Import your WHMCS data, files, and all other necessary information.
Last updated 9 days ago
What is WHMCS?
WHMCS is a self-hosted billing and automation platform for hosting businesses. If you are planning to move your billing, client management, and support data from WHMCS to Upmind, this guide will walk you through the process.
Note that WHMCS installations often include customizations such as database adjustments or third-party modules, which may not be imported. Upmind focuses on importing core data necessary for client management and billing effectively.
What can be imported?
Upmind supports importing most core WHMCS data, including:
Staff users
Products and services
Promotions
Clients
Support tickets
Invoices
Payment methods
Affiliate accounts
Domains and servers
๐ง If Upmind cannot automatically map certain data (e.g., servers, domains), you will be prompted to create manual mappings during import.
Preparing for the import
Before starting the import, verify and configure these settings in Upmind:
Setting up WHMCS access for Upmind
Create API Credentials in WHMCS.
In WHMCS admin, go to Setup > API Credentials.

Under API Roles, create a new API Role.

Create an API role with full permissions by selecting all checkboxes or by allowing only specific API commands:
GetTicketUsers
GetClients
GetClientsDetails
GetAffiliates
GetAdminUsers (special steps below)
GetTickets
GetInvoices
GetCurrencies
GetProducts
GetOrders
GetTLDPricing
GetClientsDomains
GetClientsProducts
GetInvoice
GetTicket
GetPayMethods
GetClientGroups
GetSupportDepartments
GetConfigurationValue
Save the API Role.

GetAdminUsers API functionality
If the GetAdminUsers command does not appear or returns errors, manually add getadminusers to the tblapiroles table in your WHMCS database.

Creating API credentials
Return to API Credentials.
Click Generate New API Credential.

Select the API Role created and assign an admin user.

Generate credentials and copy the Service Identifier and Secret.
Whitelist Upmind IP addresses in WHMCS
Add these IPs to Settings > General Settings > Security > API IP Access Restriction:
91.240.229.1
91.240.229.2
91.240.229.3
Proxy or Load Balancer configuration
If WHMCS is behind proxies like Cloudflare or load balancers, follow WHMCSโs trusted proxy setup at:
https://docs.whmcs.com/Trusted_Proxy_Settings
Configuring the import in Upmind from WHMCS
Go to Settings > Imports in Upmind.

Click Create New Import and select WHMCS.

Click on Add New Credentials.

Add the URL, Username (API Username), Password (API Password), Admin Dashboard URL, and choose the Tax Setting collected from WHMCS.

๐ The username and password are provided by WHMCS when generating your API credentials.
Save and test credentials. You can correct any errors.
Once validated, click Create import.
Running the Import
๐ You can leave the import running and return anytime. No data will be lost or interrupted.
You will now see a screen that looks as follows. Click Start Import.

The import starts immediately, runs in the background, and imports data in order.
Products
Upmind treats both domains and products as types of products. However, it stores only one record for each top-level domain (TLD), like ".com." This means if a TLD such as "com" is already in the system, any new imports that include this TLD won't create a duplicate record.
Instead, the new data will be linked or mapped to the existing ".com" record. This approach keeps the system organized and avoids unnecessary duplicates while allowing all related data to connect properly under the existing TLD entry.
After the first import, you'll see an orange Mappings required notification.


Map categories if set up on Store Catalogue from the dashboard or from under Settings > Products Catalogue. (optional)

Click Confirm mapping(s) and continue.


Products will begin importing.

After import, view the data list, which you can preview but not edit staged data.


Repeat this process for the remaining import sections.
Users
Users with the same email are automatically mapped. Permission levels for these mappings are set up under User Roles.
Clients
Your client database will be exported to Upmind and may take time, but you can leave it running in the background.
You will be given the option to map custom fields. You can create upmind custom fields in the settings panel.

Once the client's records are imported, you can go to a client profile and view their staged information.

Affiliate accounts
Imports activate affiliate accounts, including activations and balances. Affiliate links and referrals must be added manually.
Client payment details
Requires mapping payment providers to those added in the system.
Contracts
Imports current subscriptions and client products. Map provision configurations like servers, suppliers, and domain registrars.
Tickets
Imports WHMCS support tickets. You can optionally map support ticket departments.
Previewing and committing data
After mapping data, you can preview it, but cannot edit or allow client login. Preview helps verify data before committing. If errors appear, cancel the import.
You can commit data once you are happy with the staged import.
Best practices
Add servers, domain providers, and payment gateways in Upmind before importing to match your current setup and ensure smooth data mapping.
Always back up your WHMCS database before importing to protect against data loss.
Disable WHMCS cron jobs and enable maintenance mode during import to avoid conflicts or data changes.
Keep WHMCS offline after import until you confirm all data is correct in Upmind.
Troubleshooting
