Some region-specific service providers may prefer to offer Monthly Subscription Packages or Credit based packages to the target market, while SMS service providers with an international scope covering a large number of destinations and global mobile carriers would find Top-Up as being a more suitable choice for their service structure. SMSPlus gives an ability to create the type of your preferred package using the package wizard.
Admin Main Navigation -> Setup -> Packages
When you click Packages from the main menu, the page that would open will show you a table with probably the empty columns (When you Don't have any Package Created). You need to first create the packages, and later this table will show all the packages that you have created. To create a new package, all you need to do is to click "Create a Package" from the title bar of the table, and you will be taken to the create package page.
Package Wizard
Package wizard helps you setup the type of package/ pricing plan you want to offer to the clients. There are three types of packages/ pricing plans that you can setup. The following area discusses how to create each one of them.
One of the most dynamically driven structures for both clients as well as for the admin, where the admin offers its clients an ability to easily add the desired amount in their account and send SMS to the networks of allowed destination. Things will further clear as we move to read the step-by-step process of creating a top-up plan.
Package Name
This field will have the name of the package. In the case of top-up plans, this can carry a slab name or limit.
A good example of it is when you are offering different slabs limits to the clients according to their estimated SMS volumes, to select one of their preferred ones, i.e. Slab 1 (1-1,000), Slab 2 (1,001- 5,000), etc.
Package Note
Add few lines describing the package, i.e. Slab 1 suits the clients with 1-1,000 monthly estimated SMS volumes.
Auto Upgrade & Downgrade
If the prices of different slabs vary and decrease in terms of per SMS cost, for the clients with higher estimated monthly volume, auto upgrade, and downgrade option will help you dynamically evaluate clients’ sending and auto downgrade or upgrade their slab as per their sending.
If you don’t want auto upgrade and downgrade option to evaluate clients’ sending and automatically downgrade and upgrade client’s slabs, keep this button “Off”; go for the “On” option otherwise.
The clients that don’t meet the estimated volumes of the slab they have subscribed to, will automatically be downgraded to the slab having a lower amount of SMS count and a higher amount of per SMS cost.
Lower & Upper Limit
These two boxes will only appear when you select Auto Upgrade/ Downgrade option as “On”.
Lower Limit Box- This will offer admin the ability to put forward the least limit of monthly SMS sends that client has to meet in order to retain the pricing plan of the current slab, in case of not being able to meet the least limit, the system will automatically downgrade such client account to the previous slab in the list with low estimated SMS volumes. And in case of this auto downgrade, the client will be billed as per the message cost of the slab where his/her account is shifted after getting downgraded.
Upper Limit Box- Put forward an upper limit crossing to that limit will result in auto-upgrade of the client's recent slab and pricing plan to the slab with higher estimated monthly volumes with probably lower rates.
Hourly Rate
A maximum number of SMS clients in this particular package can send in an hour, if you don’t want to restrict the client’s sending to a certain limit, put forward -1 for unlimited.
Daily Sending Limit
A maximum number of SMS clients in this particular package will be able to send daily. Fill this field with -1 for unlimited.
Sender-ID Limit
Limit the Sender IDs clients in this package will apply and can use to send their message from.
Contacts Limit
A maximum number of contacts clients belong to this package will be able to add to their list(s). -1 for the unlimited number of contacts.
Per Lookup Cost
If the clients in this package will validate the contacts within their list(s), what per number lookup cost will apply?
Minimum Top-up
What would be the minimum balance clients in this package will have to add while adding funds?
Group
Every package requires being a part of a Client Group that controls the access levels of the clients subscribing to a particular package. For example, if a package doesn’t allow its clients to apply Sender-ID, the client group will control the access of the clients of the package.
WHMCS Link
If you have the integrated WHMCS module working with your installation for auto-registration, payment, and invoicing, you'll need to have these packages setup within WHCMS as well. And would just need to provide the specific package link from WHMCS in the field to work this integration out. 
When you are creating a top-up type of package, the second step of the wizard will give you the ability to set a price plan with more than a few options. A parental SMS rate can be set for countries and networks to inherit from the parental rates, a rate separate from the parental one can be applied to the specific countries or you can go even deep inside the country to set network-based price preferences to set different rates for different networks in a country. You moreover will have the ability to Add or Subtract a Fix value or Certain Percentage to the whole pricing table.
So let’s unfold each one of the options one by one.
Parental SMS Cost
On the top right area of the list, you can set parental SMS rates for the list of countries and networks to inherit. You can apply this parental value per SMS sending cost to all the countries and networks in the list, by clicking “Apply to all” right beside where you put the parental price value. The changes will apply recursively down to the whole list of countries and networks. Networks that inherit parental value can be identified with their label as “Inherited” down in the list.
Country-based Cost Preferences
If you don’t want specific countries to inherit rates from the parent values, you can setup separate rates for these countries different than the parent ones. You will just need to click on the value next to the country name; a box will open to provide a new price value for the particular country. Make sure that whenever you update the price value for a specific country, it will automatically be updated down to the list of all networks in that specific country.
Network-based Cost Preferences
Later if you don’t want certain networks to inherit the value from the country, you can click on the price value appearing next to the network name, a box will open to provide a new price value for the specific network. Once you update the price of a specific network, you will see that the “Inherited” label will be replaced by the “Custom” which shows that a particular network isn’t inheriting price from its country.
Pricing will work either network-based or country-based, and network-based rate preferences will only be able to work when the system recognizes the sender network before sending the SMS. It can only happen when the client validates the contacts of the list he/she is sending to so that the system can identify and save values of the networks. It is only when the system can successfully deduct based on the rates set for networks. In case of not knowing the networks, the system looks for the other rate preference and will apply country-based per SMS cost to deduct the client’s balance. Even if you have set custom rate preference for some networks under a specific country, unless the client performs carrier lookup/ validation before sending, the system will apply rates set for the country for not knowing the network before/during the sending process.
Adding/ Subtracting Amount
If you want to add a certain amount to the price list or subtract from it, you have an easy option to add/ subtract Fixed Value or a certain Percentage. You can see the option right on the top of the list of countries/networks with two options under the first dropdown, 1) Add and 2) Subtract. Both these can affect the whole pricing list in the following two ways.
Fixed Value- You will use this option if you want to add a fixed amount to the current price list or subtract from it. In case of selecting to add/subtract a “Fixed Value”, provide value to add/subtract in the box next to Divide Options dropdown, i.e. 10.
Note- Addition or Subtraction will apply subsequently on the whole price list, which means that rate for every country and network, whether custom or inheriting per SMS cost from the parent value, will take in the addition or subtraction.
Percentage- Use this option when you want to add/subtract a certain percentage to the current price list, use the text box next to the Divide Options dropdown to provide the percentage you want to add/subtract, i.e. 5%.
You will use this option if you want to add a fixed amount to the current price list or subtract from it. In case of selecting to add/subtract a “Fixed Value”, provide value to add/subtract in the box next to Divide Options dropdown.

Saving Top-Up Packages
Click “Finish” to save preferences of the top-up package.
Working with a credit plan, its settings and execution are similar to the earlier discussed top-up pricing plan. The only difference is in calculating the per-message cost. In the Top-Up package, the client is supposed to recharge the account with a certain amount of funds/money, and the backend operations offer functionality to put forward per SMS cost to deduct from the client’s available balance. And for Credit Plan, the client will purchase SMS credits, whereas the backend module facilitates the admin to set a number of credits to deduct for a certain country and network. The only field different in the credit plan from the earlier discussed top-up plan is Per $ Credits.
Per $ Credit
How many credits will be provided to the client for one monetary unit of preferred currency? By default, you’ll see this field as per $ credit, but the dollar sign will dynamically be replaced with the currency sign you prefer for this package.
For example, you have selected dollars as the preferred type of currency for this package this field will have the number of credits provided to the client for one dollar. Putting 2 in this field would mean that client will be offered 2 credits for $1.
Package Name
Name of the monthly package, e.g. Deluxe, Premium, etc.
Package Note
An optional field that can carry some additional information with regard to the package. E.g. this monthly package will offer 1,000 email credits to the clients.
Currency
Select preferred currency for the package, if no currency is selected for the package, the application will automatically obtain the value of the default currency from the “Application Settings”
Price
Put forward the cost to subscribe specific package. Monthly would be the fixed price plan, where every all countries and network will be charged equally.
Credit Limit
How many SMS sending credits will this package have? Write in this field. In the Monthly type of package, credits that certain package offers will expire in 30 days’ time.
Use -1 as the value in this field, if you want to allow unlimited sending to the clients subscribing to this package.
Hourly Rate
A maximum number of SMS subscribers of this particular package can send in an hour, if you don’t want to restrict the client’s sending to a certain limit, put forward -1 for unlimited.
Sender-ID Limit
A number of Sender IDs subscribers of this package will be able to apply and use to send their SMS from. -1 if you don’t want to limit the number of Sender IDs.
Contact Limit
A maximum number of contacts clients belong to this package will be able to add to their list(s). -1 for the unlimited number of contacts.
Number Lookup Limit
How many contacts subscribers in this particular package will be able to validate/ process for network and country lookup?
If you don’t want to offer Number Lookup/ Validation facility to the subscribers of that particular package, provide 0 as the value in this field.
Group
Every package requires being a part of a Client Group that controls the access levels of the clients subscribing to a particular package. For example, if a package doesn’t allow its clients to apply Sender-ID, the client group will control the access of the clients of the package.
View Available Packages
From the monthly subscription-based package to the dynamically driven Top-Up Plan and Credit-based packages, you can create the package of your choice using the “Add Package” feature. So the packages that you earlier have created are listed here in the View Package Details table. 
Filter by Package Type
Apply the filter by selecting the type of package from the dropdown, i.e. select Top-Up if you just want to see the details of all existing Top-Up plans.
ID
Every package in the list has a unique ID. This ID would also be used as a parameter in the execution of the API requests.
Package Name
Every package that you create of any type needs a name. In the package details table, each row represents a separate package with its name in this row and other details in the rows next to it.
Limits
Rows under the next 3 columns are showing different limits that were applied while creating the package. It includes the hourly sending limit of the clients subscribing to this package, daily sending, and the total package limit.
Status
It can be either Active or Inactive. Packages that aren't currently in use can be marked as inactive, inactive makes it unavailable.
Follow is the list of actions that you can perform to manage the current packages
| Edit | You can edit the package details to update its status or other relevant details by clicking "Edit" under the "Actions" last column of the View Package Details table. |
| Copy Package | If you want to use the same details in another package, click Copy Package to create another package with the same details and preferences. However, the package name would change to keep it unique and identifiable. |
| Export Price List | |
| Delete | Click to delete a specific package from the list. |