# Billing Scenarios
The documentation below outlines the various use cases that can be set up with PanelAlpha in conjunction with WHMCS. Each use case is divided into two sections:
- Workflow - an explanation of how the scenario works from both the end-customer and billing perspectives
- Configuration - a step-by-step process explaining how to set up PanelAlpha in combination with WHMCS
Before you begin the setup process, please ensure that you have completed all of the following steps:
- Installation
- Server Configuration
- Plan Configuration
- Installation and configuration of the WHMCS module
# Trials and Background Billing
If your goal is to offer a free trial, we recommend using Background Billing. It enables delayed / usage-based billing and a smoother trial onboarding experience than relying on classic "trial pricing" rules alone.
- Background Billing setup: Background Billing
- Trial scenario overview: Free Trial Period
# Single WordPress Instance
# Offering a Single WordPress Instance as a Service
This is the most commonly used workflow for most of our customers and is a perfect setup for end users who want to "purchase a WordPress hosting service." The idea is to set up simple products that correspond to a single WordPress instance.
It covers the recommended Quick Onboarding Process, which makes it easier for the end customer to set up their first site without extensive configuration or setting up their live domain. The first site is configured on a subdomain that can be changed to their own domain at a later stage.
# Workflow Illustration
End customer orders a new service in the WHMCS system, for example: "WordPress Single Site - Bronze"
They go through the standard ordering process ("Lagom One Step Order Form For WHMCS" is a recommended setup).
After payment is complete:
- The end customer receives an email with details about their service
- From the WHMCS client area they can proceed directly to the new PanelAlpha user page. Use the "WordPress Management" section in the menu - it uses SSO to automatically authenticate them into PanelAlpha
- Alternatively, they can go to their service page and click "Log In To PanelAlpha" - it also uses SSO to automatically authenticate them into PanelAlpha
Once redirected to PanelAlpha, SSO is used for automatic authentication.
The first page they see is the option to create the first instance.
- Clients may create a brand new site or migrate their instance from existing hosting
- For a migration workflow, read more here
When they choose to create a new site, the system presents the available themes to choose from.
Once chosen, they are asked to enter their site name. Click the "Create Site" button and the site will be provisioned right away. The site name (domain) can be changed later, so you may type in any name at this point.
The new site is ready for the client to manage!
# Configuration in PanelAlpha
Plan Configuration - provide basic details to create a new plan:
- Plan Name
- Instances Limit - in this case, "1"
- Upgrade Link - a hyperlink directing to a page where users can upgrade their current plan
- Label Color - a visual identifier associated with a specific plan, usually used to indicate differences between plan types
- Preview
Onboarding - select between two onboarding methods: "Quick Onboarding" and "Standard Onboarding." Check the details and differences between them:
- "Quick Onboarding" - specifically designed to deliver an exceptional user experience, similar to web-builder products, ensuring optimal satisfaction for end users. The end customer can order a basic service in WHMCS even without requiring a domain. Upon completion of the order, they can log in to PanelAlpha, where they will be presented with a selection of templates.
- To enhance the overall experience, you can integrate it with a pre-installed website builder plugin for WordPress, enabling users to enjoy a seamless and high-quality experience.
- Utilize the free trial feature within WHMCS (see Free trial period), which can effectively increase conversion rates.
This selection is highly recommended for all advanced users.
Available options:
- Force installation for new users after login - enabling this option is highly recommended
- Domain used for subdomains - enter the main domain to allow creating subdomains
- Automatic subdomain format:
- Friendly name based on website name; e.g. john-blog.mydomain.com
- Friendly name random combination; e.g. purplegoose.mydomain.com
- Specified number: enter description and the next number to generate a subdomain, e.g. "temp{number}", "100000": temp100000.mydomain.com
- Random Length: enter the number of signs to generate a subdomain, e.g. "10": 4d7wg9r98x.mydomain.com
- "Quick Onboarding" - specifically designed to deliver an exceptional user experience, similar to web-builder products, ensuring optimal satisfaction for end users. The end customer can order a basic service in WHMCS even without requiring a domain. Upon completion of the order, they can log in to PanelAlpha, where they will be presented with a selection of templates.
Hosting - server selection and configuration.
- Server Type - choose between:
- Server Group - choose one from the previously created groups (read more here)
- Server Assignment Rule:
- Random - the service will be set up on a randomly selected server
- Least Accounts - the service will be set up on the server within the specified group that has the smallest number of accounts
- Specific Server - the service will be set up on the pointed server
- Hosting Account Configuration:
- WHM Package Name
DNS - select and configure the DNS server responsible for translating domain names into IP addresses.
Available DNS server types:
- cPanel's DNS Server
- PowerDNS
- select DNS Server for your services
- enter the zone template name
Email - select and configure the email server.
Email server types:
- Use cPanel's Email Server
- None
- Mailcow
- choose email server
- enter the Mailcow package name
Domains - add domains that users of this plan will be allowed to use as subdomains. Click "Add New Domain" to start; a modal will appear where you must type in the new domain name. Manage the blacklist: create a list of forbidden words, enable "Block Profanity" to blacklist all uncensored expressions at once.
Plugins & Themes - manage the plugins that will be installed or deactivated on instances.
Automation:
- Default Plugin & Theme Packages - assign packages of plugins and themes to a WordPress instance within the plan
- Automatic Plugin Installation - assign plugins that will be automatically installed during the WordPress instance installation process
- Automatic Theme Installation - assign themes that will be automatically installed during the WordPress instance installation process
- Default Theme - select a default theme that will be installed on the instance
Blacklist:
- Plugin Blacklist - assign prohibited plugins that will be hidden from search results in the Client Area and WordPress admin, blocked from installation (including ZIP uploads), and have their activation disabled with a tooltip explanation if already installed
- Delete Blacklisted Plugins - assign prohibited plugins that will be automatically removed from any WordPress instance in the plan during the daily synchronization process
- Delete Blacklisted Themes - assign prohibited themes that will be automatically removed from any WordPress instance in the plan during the daily synchronization process. Blacklisted themes are also hidden from search results, blocked from installation, and cannot be selected during instance creation
# Configuration of Product in WHMCS
Before you proceed to WHMCS and start server and product configuration, you must first generate your API token - you will need it in further steps.
Proceed to your PanelAlpha admin area → Configuration → Admins → API Token.
Once you enable the API Token, you will get one-time access to it. Keep in mind that this is the only moment when you see it, so please copy it and keep it in a safe place!
Once ready, you may move to your WHMCS platform and begin the configuration.
Under System Settings → Products/Services → Servers create a new server. Fields that must be filled out are:
- Name - any name for your server
- IP Address - provide the IP address with a port number where your PanelAlpha is located. The Hostname field may be left empty; after saving, it will be filled in automatically
- API Token - PanelAlpha token generated as described above
Under System Settings → Products/Services → Servers create a new group of servers and assign the newly created server to this group.
Next, proceed to System Settings → Products/Services and create a new group of products.
Once you have the group, you may create your PanelAlpha product.
- Product Type - set it to "Shared Hosting"
- Product Group - select the newly created group
- Product Name - in this example: "WordPress Single Site - Bronze"
- Module - select "PanelAlpha" from the dropdown menu
- Click "Continue" to move to the next step
Now, go to the "Module Settings" section. As the module name has already been selected, find the server group where the server you need to connect with is assigned in the dropdown menu. Once selected, all module configuration settings will appear.
- PanelAlpha Plan - select the plan you wish to assign to this product. In this example, that will be "Single Instance"
- Based on the selected plan, all further settings will be automatically filled in. Save the changes once the configuration is ready.
Finally, set the pricing details for your product in the "Pricing" tab.
# Predefined WordPress Template
# Offering a Predefined WordPress Template
This is a similar workflow to offering a single instance; however, the customer will have WordPress automatically installed when the service is activated. This configuration is recommended for companies offering their own instance templates.
For example: a site with predefined plugins, theme, and configuration that works perfectly for a dental clinic business.
# Workflow Illustration
End customer orders a new service in a billing system, for example WHMCS: "Dental Clinic"
They go through the standard ordering process.
After payment is complete:
- The end customer receives an email with details about their service
- From the WHMCS client area they can proceed directly to the new PanelAlpha user page via the "WordPress Management" section - it uses SSO to automatically authenticate them into PanelAlpha
- Alternatively, they can go to their service page and click "Log In To PanelAlpha" - it also uses SSO to automatically authenticate them into PanelAlpha
Once redirected to PanelAlpha, SSO is used for automatic authentication.
The first page they see is information on the instance installation process. Wait a moment until the process is complete.
The new site is ready for the client to manage! After opening the dashboard, they can access their new site.
# Configuration in PanelAlpha
To start using instance templates, you must first create them. Navigate to Admin Area → Instances → Instance Details and locate the action button labeled Save as Template. Provide a name for the template and confirm by pressing Save. Currently, saving an existing instance as a template is the only method available for creating them.
The created template will appear on the list of Instance Templates. Make sure its status is active, as only then you will be allowed to assign it to a plan.
Let's proceed to the configuration of a plan that allows creating instances from templates. For demonstration purposes, we will show how it works using the recommended Quick Onboarding method.
Create a new plan and fill in the details section by providing the plan name - we have set it to "Dental Clinic - Predefined Template" - define the instances limit (1), and fill out the remaining options according to your preferences.
In the Onboarding tab, make sure to select the instance template that will be used by default for creating the new website. In our case, we are leaving "Allow to choose themes" and "Ask for domain" unselected and "Force installation for new users after login" selected. This way, after logging in to the PanelAlpha client area, the end user will have the website installed automatically without any additional steps.
Define the Hosting, DNS, and Email server details to establish the connection.
Define the Domains creation rules. Skip the "Plugins & Themes" section as you are going to offer a predefined instance template with already installed plugins and themes.
Enable automatic backups and set up the frequency. You may skip the "Other" section. Save the changes to confirm creating the plan.
# Configuration in WHMCS
Before you proceed to WHMCS and start server and product configuration, you must first generate your API Token - you will need it in further steps.
Once you enable the API Token, you will get one-time access to it. Keep in mind that this is the only moment when you see it, so please copy it and keep it in a safe place!
Proceed to your PanelAlpha admin area → Configuration → Admins → API Token.
Once ready, move to your WHMCS platform and begin the configuration.
Under System Settings → Products/Services → Servers create a new server. Fields that must be filled out are:
- Name - any name for your server
- IP Address - provide the IP address with a port number where your PanelAlpha is located. The Hostname field may be left empty; after saving, it will be filled in automatically
- API Token - PanelAlpha token generated as described above
Under System Settings → Products/Services → Servers create a new group of servers and assign the newly created server to this group.
Next, proceed to System Settings → Products/Services and create a new group of products.
Once you have the group, you may create your PanelAlpha product.
- Product Type - set it to "Shared Hosting"
- Product Group - select the newly created group
- Product Name - in this example: "Dental Clinic"
- Module - select "PanelAlpha" from the dropdown menu
- Click "Continue" to move to the next step
Now, go to the Module Settings section. As the module name has already been selected, find the server group where the server you need to connect with is assigned in the dropdown menu. Once selected, all module configuration settings will appear.
- PanelAlpha Plan - select the plan you wish to assign to this product. In this example, that will be "Dental Clinic - Predefined Template"
- Based on the selected plan, all further settings will be automatically filled in. Save the changes once the configuration is ready.
Finally, set the pricing details for your product in the "Pricing" tab.
# Multiple WordPress Instances
# Offering a Service with Multiple WordPress Instances Limit
This is a recommended service for large customers or agencies that manage multiple WordPress instances. In this case, it does not make sense to ask them to order a new service from your billing system for every instance. You can offer predefined limit packages (e.g. 10 sites, 50 sites, 100 sites) or use Usage Billing to charge for the total number of instances in use.
# Workflow Illustration
- End customer orders a new service in a billing system, for example WHMCS: "Multiple WordPress Sites - Bronze"
- They go through the ordering process.
- After payment is complete, they receive an email with details about their service and can use the "Manage WordPress" section in the menu with SSO authentication.
- Once redirected to PanelAlpha, SSO is used to automatically authenticate them.
- The end customer can click "Add New" to create a new site.
- They fill in a dedicated form and the site is created immediately.
The configuration follows similar steps as the Single WordPress Instance scenario, but with the instances limit set to the desired number (e.g. 10, 50, 100).
# Plan Upgrade
# Upgrading a Plan
PanelAlpha offers a user-friendly method for customers to seamlessly manage plan upgrades directly within the application. When users approach the maximum number of available sites or their hosting space nears capacity, they can initiate an upgrade for their website.
# Workflow
When the end client reaches the limit of their sites, they will receive a dashboard notification that they cannot create any new instances before upgrading their plan.
In the "My Hosting" section of the PanelAlpha client area, in the top right corner of the "Plan Usage" table, there is a button that allows upgrading the current plan.
The upgrade process is handled through WHMCS, where customers can select a higher-tier product and complete the payment.
Once payment is complete, the user will see the new product active and can return to PanelAlpha to create new instances within the upgraded limit.
# Cross-Selling Scenarios
# Cross-Selling Paid Plugins and Themes
PanelAlpha supports cross-selling paid plugins and themes as additional services through WHMCS product addons. This allows you to offer premium plugins and themes that customers can purchase and have automatically installed on their WordPress instances.
# Cross-Selling Domains
You can configure PanelAlpha to integrate with domain registrars through WHMCS, allowing customers to purchase domains directly from their WordPress management interface and have them automatically configured with their instances.