A step-by-step guide to configuring Blesta to sell shared Hosting.


Table of Contents

How To Sell Shared Hosting

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.



Module Name

cPanelCentOS Web Panelispmanager
DirectAdminCyberPanelVesta
PleskInterworxVirtualmin
APNSCPISPConfig

* 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 NameDescription
Server LabelEnter a label for this DirectAdmin server, it can be anything you like.
Host NameEnter the FQDN hostname for your DirectAdmin server, i.e. "directadmin.domain.com".
PortThe port for your DirectAdmin server.  Defaults to 2222.
UsernameEnter your DirectAdmin Reseller username. This is the username you would log into DirectAdmin with.
PasswordEnter your DirectAdmin Reseller password. This is the password you would log into DirectAdmin with.
Use SSL when connecting to the APICheck this option to use SSL for all API requests to your DirectAdmin server. This is highly recommended.
Account LimitEnter the maximum number of accounts that should be added to this DirectAdmin server.

Field NameDescription
Name ServersEnter the name servers that should be used for this server. These will be available in the package welcome email to the client.
NotesEnter 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:

OptionDetails
Group Name

Enter the name for this server group.

Add OrderChoose how servers in this group will be selected for provisioning. Currently, "Evenly Distribute Among Servers" is the default option.
Assigned ServersSelect 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)

OptionDetails
Name

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

DescriptionEnter the description for this package group (Optional).
Allow Upgrade/DowngradesTick 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.
TypeSelect 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.

Basic

The Basic section consists of the following options:

Field NameDescription
Package NameEnter 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 AvailableIf this Package has a limited quantity available, enter the quantity, or leave it as "Unlimited".
DescriptionEnter a Description for this Package. HTML is allowed, and descriptions appear on order forms.
Configurable OptionsA Configurable Option Group may be selected if previously created, but this module does not support configurable options during provisioning.
ModuleSelect "DirectAdmin" for the module.

Module Options

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

Field NameDescription
Server GroupSelect "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 TypeSelect 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 PackageSelect 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: https://server.yourdomain.com:2222

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.

Pricing

The pricing sections consists of the following:

Field NameDescription
TermEnter the term for the desired pricing option. For example, if you wish to create a 3 month pricing option, enter 3 here.
PeriodSelect 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.
CurrencySelect the currency this pricing option is available for.
PriceEnter the price for this pricing option.
Setup FeeIf there is a setup fee, enter it here.
Cancellation FeeIf 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:

TagsDescriptionNotes
{service.direct_admin_domain}The domain name that the hosting account is created under.e.g. "domain.com"
{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 namee.g. "Bronze"
{package.price}The package meta pricee.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).

Basic

The Basic section consists of the following options:

Field NameDescription
Status"Active" is the default, "Inactive" is also available.
NameEnter the name of this Order Form, it will be visible when visited and if no default order form is selected.
LabelEnter the label for the order form this will be the URI the user visits to purchase a product.
DescriptionEnter 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.
TemplateSelect a template you would like to use for selling Shared Hosting, we recommend the Wizard Boxes or Wizard List.

Field NameDescription
Default Client GroupSelect 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 CouponsCheck 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 ordersCheck 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 https://yourdomain.com/ this isn't required if you already force https://.
Require Human Verification Challenge for all signupsCheck 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 ServiceCheck 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 NameDescription
CurrenciesSelect the currencies which are accepted when a client is ordering a domain. Select as many as you wish.
GatewaysSelect all the payment gateways you accept when a client is ordering a domain. Select as many as you wish.

Conclusion

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