Selling Shared Hosting – User Manual

This guide is designed to show the basic steps required and best practices to begin selling shared hosting. Here we describe installing a control panel module, configuring packages and package groups, and creating an order form.

* The list above is just the official supported modules, there may be third-party modules that can be found on our marketplace.

Install a Control Panel Module

The first step toward selling shared hosting is to configure a control panel module. You can do this by going to [Settings] > [Company] > [Modules] > [Available] and select the control panel module of your choice. We’re going to be using the DirectAdmin module for this tutorial. After installing the module you can proceed to add the module settings. Click on “Add Server” and you will be presented with the following:

Field Name Description
Server Label Enter a label for this DirectAdmin server, it can be anything you like.
Host Name Enter the FQDN hostname for your DirectAdmin server, i.e. ““.
Port The port for your DirectAdmin server.  Defaults to 2222.
Username Enter your DirectAdmin Reseller username. This is the username you would log into DirectAdmin with.
Password Enter your DirectAdmin Reseller password. This is the password you would log into DirectAdmin with.
Use SSL when connecting to the API Check this option to use SSL for all API requests to your DirectAdmin server. This is highly recommended.
Account Limit Enter the maximum number of accounts that should be added to this DirectAdmin server.

Field Name Description
Name Servers Enter the name servers that should be used for this server. These will be available in the package welcome email to the client.
Notes Enter any notes that pertain to this server for future reference.

Set up a Server Group

Next, we need to set up a server group, this will allow you to sort out servers when you get a lot more, so you can have US Servers or London Servers, etc.

Click on “Add Server Group” and you’ll be presented with the following, you can skip this step if you prefer but it’s our recommendation:

Option Details
Group Name

Enter the name for this server group.

Add Order Choose how servers in this group will be selected for provisioning. Currently, “Evenly Distribute Among Servers” is the default option.
Assigned Servers Select servers under “Available Servers” and click to move them to the left column to add them to the group.

Create a Package Group

The third step is to create a package group that will contain all of your shared hosting packages, you can do this by going to [Packages] > [Groups] > [Add Group] (plus)

Option Details

Enter the name of this package group. Eg: “Shared Hosting”

Description Enter the description for this package group (Optional).
Allow Upgrade/Downgrades Tick the box to allow customers to upgrade or downgrade packages in this group, this is good if customers can go from a basic to a professional package.
Type Select the type for the package group. For packages, we need “Standard”.

Create Packages

The third step is to create a package that your customers can purchase. You can create a package by going to [Packages] > [Browse Packages] > [Add Package] (plus).

The Package contains all the important information from the pricing and name to the welcome email the client receives after the order has been provisioned.


The Basic section consists of the following options:

Field Name Description
Package Name Enter the name of this Package, it will be visible wherever services are listed and on any order forms.
Status “Active” is the default, “Inactive”, and “Restricted” are also available.
Quantity Available If this Package has a limited quantity available, enter the quantity, or leave it as “Unlimited”.
Description Enter a Description for this Package. HTML is allowed, and descriptions appear on order forms.
Configurable Options A Configurable Option Group may be selected if previously created, but this module does not support configurable options during provisioning.
Module Select “DirectAdmin” for the module.

Module Options

The Module Options section consists of the following options, which are specific to DirectAdmin:

Field Name Description
Server Group Select “Any” if you wish to specify a specific group, or select the group to provision from. Selecting a group means that accounts will be provisioned from the group. Selecting a group is recommended.
Account Type Select the account type, for this guide we’re creating a shared hosting account which is defined as a “User” to create reseller accounts use “Reseller”.
DirectAdmin Package Select the package name which you would like to use for all account creations using this package. We’re using “newpackage” as an example.
IP Address

If your reseller account has multiple IPs you’ll be able to select an IP address to use for these packages.

I hear you, how do we create a package on DirectAdmin to do this?

Log into your DirectAdmin admin area:

Click on “Account Manager” and then “Manage User Packages”

Click on “Add Package” and you’ll see the following:

Fill in the form and create the package. It will show up on Blesta under the “Modules” section above.


The pricing sections consists of the following:

Field Name Description
Term Enter the term for the desired pricing option. For example, if you wish to create a 3 month pricing option, enter 3 here.
Period Select the period for this pricing option. “Day”, “Week”, “Month”, “Year”, and “One time” are options. The client will be invoiced every “term period”, for example every 3 months if 3 is entered for term, and Month is selected for period.
Currency Select the currency this pricing option is available for.
Price Enter the price for this pricing option.
Setup Fee If there is a setup fee, enter it here.
Cancellation Fee If there is a fee to cancel early, enter it here.

Click the “Add Additional Price” to add more pricing options. It’s common for people to create 1 Month, 3 Month, 6 Month, and 1 Year price options. There are many possible combinations.

Welcome Email

The Welcome Email consists of the following:

The “Tags” section describes tags that may be used in the welcome email. The welcome email content is inserted into the “Service Creation” email template under [Settings] > [Company] > [Emails] > Service Creation. Only details unique to this service should be entered into the welcome email section for the package.

You can click “Load Sample Email” to pre-fill the HTML and Text sections with our sample email below:

Sample Email

This sample email could be used in the Package Welcome Email section to help you get started. Be sure to enter content for your welcome email in both the HTML and Text sections.

Your DirectAdmin account is now active, details below:

Domain: {service.direct_admin_domain | safe}
Username: {service.direct_admin_username | safe}
Password: {service.direct_admin_password | safe}

To log into DirectAdmin please visit https://{module.host_name | safe}:2222
Please update your name servers as soon as possible to the following:

{% for name_server in module.name_servers %}
Name server: {name_server}{% endfor %}

Thank you for your business!

When creating or editing a package that uses this module, the following tags will be available:

Tags Description Notes
{service.direct_admin_domain} The domain name that the hosting account is created under. e.g. “
{name_server} An array of available name servers for this module

Array elements must be looped over in the email template. See above for an example.

{package.package} The package meta package name e.g. “Bronze”
{package.price} The package meta price e.g. “$9.99”

Group Membership

If this is the first Package you are creating with this module, select the “Create a New Group” option, and enter a Group name. If you are adding a subsequent Package and wish for it to be part of the same group, select “Select from Available Groups”, and move the group from the right to the left of the multi-select box.

We created a package group above called “Shared Hosting”, so we’ve moved that from right to left.

When finished, click “Create Package” to create this package.

Create an Order Form

The final step is to create the order form where your customers can purchase your shared hosting services. 

You can create an order form by going to [Packages] > [Order Forms] > [Add Order Form] (plus).


The Basic section consists of the following options:

Field Name Description
Status “Active” is the default, “Inactive” is also available.
Name Enter the name of this Order Form, it will be visible when visited and if no default order form is selected.
Label Enter the label for the order form this will be the URI the user visits to purchase a product.
Description Enter a Description for this Order Form. HTML is allowed, and descriptions appear above the order forms.
Visibility “Public” is the default, “Shared”, and “Client Only” are also available.
Type “General” is the default option however you can use “Domain and other” if you’re selling domains and hosting together. See this guide instead.
Template Select a template you would like to use for selling Shared Hosting, we recommend the Wizard Boxes or Wizard List.

Field Name Description
Default Client Group Select the client group the client will be assigned after ordering, this is good if you prefer to group customers depending on the product they first purchase.
Allow Coupons Check the box if you would like coupons to be enabled for this order form, if you won’t offer coupons at all you can leave this blank and the field won’t show up.
Require Manual review and Approval of all orders Check this box if you would like to manually approve all orders for domains. Otherwise, keep it blank and they will be provisioned with the cron job.
Force Secure Connection (HTTPS) Check this box if you wish to force orders for domains to require this isn’t required if you already force https://.
Require Human Verification Challenge for all signups Check this box if you wish to force customers to pass the human verification challenges when ordering. This can be set under the Settings tab on the order forms section.
Require Agreement to Terms of Service Check this box if you wish to force customers to check the box to accept the terms and conditions please link to the terms and conditions in the box below.

Package Group

The Package Group section is where you pick the Package group we created above to group the packages together. Simply move it from right to left to assign it:

Currencies and Gateways

The Currencies and Gateways section consists of the following options:

Field Name Description
Currencies Select the currencies which are accepted when a client is ordering a domain. Select as many as you wish.
Gateways Select all the payment gateways you accept when a client is ordering a domain. Select as many as you wish.


And there we have it, you have completed your first order form for selling shared hosting with Blesta.

Related Posts