A reseller is a company that operates using your network and billing system but sells the service under its own name. So while this company is presented as an independent operator to consumers, in reality, it does not have any equipment of its own; the company registers its own retail customers (also called subcustomers) and individual accounts in PortaBilling, and the billing of their end users is done there. This enables you to expand your operation by means of “white label” or “virtual operator” services.

When a call is made by an account (end user), the reseller is billed using their own tariff (wholesale rates). Thus the end user (account+retail customer to whom it belongs) and the reseller are billed separately; they may even be in different currencies. So if, for instance, a partner is reselling your services, he will pay you $0.06/min. for each call made to the US by his subscribers. At the same time, he can charge his customers any rate he wishes (e.g. $0.10/min).

Reseller model

Resellers can perform most everyday operations such as managing their products, changing rates to their subscribers via the self-care interface, or browsing xDR records, so there is less workload for you as an ITSP. PortaBilling will automatically generate invoices for a reseller’s customers with the reseller’s name on them, and subcustomers can go to a specific domain to access their self-care interface, where they will see the reseller’s name and logo. This ensures that the end user has an image of the reseller as an independent operator, and is not aware of your role as the ITSP.

Reseller collects money from his subcustomers and is responsible for paying invoices, issued by the PortaBilling owner. If reseller exceeds his credit limit – this automatically blocks all activities of his subcustomers.

Payment flow

Typically used for: OEM or “white-label” service providers, companies who would like to offer the service under their own brand name, while the actual service is provided on your VoIP network and all the billing and management of their customers is done in PortaBilling.

Billing via the reseller model implies an additional load on the billing engine, compared to a retail customer, and using only retail customers is about 50% faster than when a reseller is involved. If performance is an issue, avoid creating resellers when it is not necessary.

Multi-level resellers

Link copied to clipboard

To reach more customers in the market many service providers sell their services through a multi-level network of resellers. To implement this functionality in PortaBilling, the “carrier – reseller – end user” model has been extended to a multi-level reseller structure where the entire chain of resellers is virtually unlimited.

Let’s assume that a service provider engages Reseller A to sell VoIP services. Reseller A operates independently from the service provider and is free to set his own prices for services provided. Reseller A begins to sell services to his direct clients and some small business owners thus building his own network of subresellers. Each subreseller engaged by Reseller A can act as a “white label” reseller and resell a package of services (e.g., through their own network of reselling partners) under their own brand name.

In this scenario, it might appear that services purchased by customer John Doe from some reseller have in fact been provided through the n-level network of resellers. Consider the example of the resellers’ network shown in the diagram below.

The reseller’s hierarchy is modeled as follows:

  • Top-level reseller – this reseller stays at the top of the resellers’ hierarchy. He is created and managed by an administrator and deals directly with the service provider. He can create and manage his own subresellers as well as provide services directly to end users.
  • Subreseller – is created and managed by a top-level reseller or another (higher-level) subreseller. Like the top-level reseller, the subreseller can create and manage their own (lower-level) subresellers and provide services to some end users.

Multi-level reseller model

Managing tariffs

Link copied to clipboard

Each reseller operates with three types of tariffs:

  • Wholesale tariffs according to which the reseller is billed by a higher-level reseller or service provider.
  • Resale tariffs that the reseller charges their subresellers.
  • Sales tariffs that the reseller charges their end users.

Wholesale tariffs are assigned to a reseller during their creation. Resale tariffs are configured as follows: when a reseller creates his subreseller, he clones the existing wholesale tariffs by applying a profit markup (a percentage) to them. Mapping between reseller’s wholesale and resale tariffs is shown on the Usage Charges tab.

Subreseller configuration

Sales tariffs are described in the Product management section below.

Resellers can always adjust their rates for resale tariffs for specific destinations. As a rule, rates in resale tariffs are higher than those defined for wholesale rates so that the reseller creates and receives a profit each time the service is used.

Handling a resale tariff change
Link copied to clipboard

When a reseller changes a resale tariff (for example, from tariff A to tariff B), the corresponding wholesale tariff for their subreseller also changes. The resale tariff that the subreseller previously created by cloning their old wholesale tariff A remains unchanged and is still used for charging lower-level subresellers.

Be aware of the following limitation: calls made by subreseller’s customers that are in progress during this tariff change may not be billed. Therefore, it’s recommended for resellers to upload new rates to the same tariff instead of switching to a new tariff. This rate change does not affect the billing for calls that are currently in progress. Alternatively, resellers can change resale tariffs during off-peak hours to minimize the amount of unbilled calls.

Note that for service providers, it’s recommended to always upload new rates to the same reseller tariff rather than switch to a new reseller tariff. In this case, no additional configuration is required for resellers and their subresellers. This ensures that subresellers’ customers can continue using services with no interruption.

In case a service provider changes a reseller tariff for a reseller, this changes the tariff mapping in the reseller-managed products. The services are not available until the reseller and all subresellers clone their tariffs and products again.

For example, the reseller network includes:

  • the service provider;
  • the ABC Shuttle company that is configured as a reseller in PortaBilling; and
  • the Star Telecom company that is configured as a subreseller of ABC Shuttle; Star Telecom has subresellers and also provides services to customers directly.

If the service provider changes a reseller tariff for ABC Shuttle (e.g., from tariff A to tariff B), the corresponding wholesale tariff changes for ABC Shuttle only. In this case, the resale tariff and the product previously created for Star Telecom become unusable. To continue providing services to Star Telecom, ABC Shuttle must:

  • clone their new wholesale tariff B to create a new resale tariff;
  • clone the product modified by the service provider to assign a new product to the subreseller Star Telecom.

Star Telecom must perform the same steps for their subresellers. Also, Star Telecom must change the product for the accounts of their direct customers.

Product management

Link copied to clipboard

The product is the main tool that defines which services a reseller can offer to their end users. Resellers are not permitted to create their own products by themselves as this requires deep knowledge of the ITSP’s network structure (gateways, access lines, etc.), which most of them might not have. Instead, resellers are assigned their products from a service provider or higher-level resellers. This is done as follows: the higher-level reseller clones one of his products and the cloned product becomes ‘at the disposal’ of the lower-level reseller.

Clone reseller product

The cloned product is created with sales tariffs (i.e. tariffs according to which end users are charged). Sales tariffs, in turn, can come with or without sales rates, depending on whether the Clone Tariff Rates option was selected during the product cloning procedure. In the latter case, the reseller needs to define the appropriate rates for sales tariffs in order to sell the product.

With multi-level reseller functionality, ITSPs are able to easily and quickly build their own networks of resellers. This helps them increase their service offerings and gain higher profit margins.

Collect recurring fees for customer subscriptions sold via resellers

Link copied to clipboard

Increase your profitability by billing resellers based on the packages they sell and not just on service usage. You can charge your resellers a set recurring fee for every customer they sign up for a service package. For example, as a service provider, you create a service package with a call recording feature, sell this package to a reseller for a $10 monthly fee and recommend to resell it at $20. The reseller can then offer this package at the recommended price or a marked up price. They can also sell a service package at a lower price than what they pay you, e.g., to enter the market. Whatever your reseller charges their customers, you always receive your $10 per month even if customers do not use the service (e.g., service is suspended).

The administrator creates a product/add-on product with:

  • reseller subscription – contains a recurring fee that you charge the reseller for each customer account;
  • account subscription – contains your recommended recurring fee that resellers can charge their customers for each account.

Note that the billing period of the customer and reseller may differ, and each of them is charged according to their billing period. Subscription charges do not synchronize.

Reseller subscriptions and account subscriptions are independent and may be configured differently. For example, a reseller subscription activates immediately after assigning the product to the account, while the account subscription becomes active upon the account’s first usage date.

The reseller can adjust a recurring fee for an individual account. The reseller can provide a discount or mark up account subscription. Change in price (or any other change) for an account subscription doesn’t influence the price of a reseller subscription.

For example, reseller ABC Shuttle negotiates with their service provider that they would buy the call recording service package for a $10 monthly fee per account. ABC Shuttle intends to sell the call recording service package to their accounts at the price of $20. The service provider creates a product where it defines reseller charges ($10 per account) and account charges ($20). On May 1st, 50 accounts sign up for the call recording service package at $20. This means that 50 subscriptions for $10 become active for ABC Shuttle. When the reseller’s billing period closes, PortaBilling calculates the charges for all accounts’ subscriptions: $10 monthly price x 50 customers = $500. On July 1st, ABC Shuttle receives an invoice for $500 total for May.

ABC Shuttle negotiates with a new customer, John Doe, and John signs up for a service package for a $25 monthly fee (instead of recommended $20). To mark the price up for a specific customer, the reseller’s administrator performs the following steps:

  • creates the account for John Doe and assigns the product with the call recording feature;
  • opens Finances > Subscriptions > clicks Edit for a specific subscription;
    • selects Fixed upcharge in the Periodic fee adjustment  option;
    • defines 5 in the Upcharge option > Saves .

The periodic fee for John Doe becomes $25.

Mark up account subscription

The administrator can see all the active subscriptions the reseller is charged for on the PortaBilling web interface.

Reseller's subscriprions assigned via products

By default, the reseller’s recurring fees stop for a specific customer under the following conditions:

  1. The account has become closed.
  2. The reseller replaces the account’s product with one that doesn’t include the reseller subscription.
  3. The reseller subscription is removed from the product.

To charge resellers recurring fees for a service package with call recording, the administrator performs the following steps:

  1. Creates a reseller subscription:
    • Defines a $10 recurring fee;
    • Selects Admin for Managed by option;
    • Leaves At the given start date for Activation mode  so that a reseller subscription activates immediately after adding it to the account;
    • Selects the Can be applied more than once checkbox.
  2. Creates an account subscription:
    • Defines a $20 recurring fee;
    • Selects Admin for Managed by option;
    • Turns on the Share with resellers toggle (mandatory for subscriptions managed by administrator).
  3. Creates add-on product (or main product):
    • Selects Admin for Managed by option;
    • Turns on the Share with resellers toggle;
    • Charges > General info > Subscription  > selects an Account subscription and Reseller subscription ;Select reseller subscription
    • Additional information > Add-on product is allowed with > turns on the Any main product toggle;Add-on product is allowed with any main product
    • On the Voice calls configuration panel, turns on the Call recording  feature.

Now the reseller can assign this product to accounts. Note that subscription charges apply to a reseller only if they assign this very product to the account. The scenario above can be configured the other way – when the main/add-on product, account subscription, and reseller subscription are managed by a specific reseller. In this case the reseller can edit the main/add-on product and account subscription (reseller subscription is read-only). But the other resellers have no access to this very product.


Service providers can increase their profitability by selling services via resellers.

Implementation specifics

If the main product/add-on product is managed by administrator, the reseller can’t replace the account subscription.

Billing resellers for subscribers’ bundle overages

Link copied to clipboard

You can ensure that you are not on the hook for costs when a reseller’s customers go over their bundle limits – this is especially useful when dealing with bundles each having a certain quota of minutes or data. When a reseller sells such a package with a usage quota and the customer uses services within their quota, that customer is not charged extra – and nor is the reseller. As soon as the quota is used up, the reseller starts charging the customer for those service overages – and you start charging the reseller as well.

As a service provider, let's say you design a “EuropeCall” package with a quota of 100 minutes for calls to Europe and your reseller offers this package to their customers. After the reseller’s customers consume their 100-minute quota, they can continue calling Europe for $0.12/min. And you start charging the reseller $0.05/min according to the reseller’s tariff. On May 1st, Mary Smith signs up for the “EuropeCall” package, and on May 20th, she has already used the whole 100-minute quota. Neither Mary nor the reseller have been charged yet. On May 30, Mary makes a 20-minute call to Europe and she is charged $2.4 for it (20 min x $0.12/min). The reseller is also charged $1 for this call according to their tariff (20 min x $0.05/min).

The service package can also include a service wallet based on the volume of service used, e.g., minutes.


Service providers can receive revenue that is proportional to the revenue of the reseller.


To configure a package that includes a quota that affects charging the reseller, the administrator must perform the following steps:

  1. Set the LoadModules option on the Configuration server.

    Go to BillingEngine > Custom > LoadModules > specify affil=Porta::Extra::AffiliateDiscount. Enabling the "AffiliateDiscount" module on the Configuration server

  2. Create a destination group.

    Note that the name must contain the ;AFFILIATED suffix, e.g., “Europe;AFFILIATED”.

    Go to Service catalog > Rates codes > Destination group sets > create the Europe;AFFILIATED destination group and assign the European prefixes to it.Create an affiliated destination group

  3. Create a quota based on the volume of service used and assign the Europe;AFFILIATED destination group.

    • Go to Service catalog > Bundles > Volume discount plans > create a discount plan.
    • Go to VDP configuration > create quota.
    • Volume measured – select Service used, minute.
    • Destination group – select Europe;AFFILIATED. Create an affiliated quota
  4. Create the “EuropeCall” package according to the configuration above. The package must contain the reseller and account subscriptions.

  5. Assign the quota to the “EuropeCall” package.

    Open Product > Charges > General info > Default discount plan > select the discount plan with a quota. Assign the affiliated quota to the product

Implementation specifics
  1. The destination group name must contain the ;AFFILIATED suffix, e.g., “Europe;AFFILIATED”.
  2. The quota or service wallet must be based on the volume of service used, e.g., minutes or GB.
  3. Make sure that no quota is assigned directly to a reseller if a quota with an affiliated destination group is used for the reseller’s customers. Otherwise, credits would be issued to a reseller.
  4. Charging resellers for subscribers' quota overage works with a multi-level network of resellers.
  5. Resellers must have sufficient funds/credit limit to authorize the calls of their customers. The quota applies only when the call is ended.

Entities for common use by the administrator and resellers

Link copied to clipboard

To expand their service offerings to other spheres of business, ITSPs introduce the branded reseller program. In this program, the ITSP staff does all the service configuration and management while the resellers only deliver services to customers. This enables companies that lack deep technical knowledge to enter the telecommunications market and offer bundled solutions to customers under their name (e.g. a bank cooperates with an ITSP and resells a mobile application to their customer base). To begin to offer the service, each reseller must have their own set of tariffs, products, subscriptions, etc. In case of a distributed reseller chain, this imposes an additional load on the administrator. Thus, to simplify reseller management, the administrator can share their own configurations with the resellers. When the administrator marks the entity as shared, it becomes visible for all top-level resellers to use in their service provisioning. Since only the administrator manages the shared entity, the resellers see it as read-only. The list of entities to share includes the following:

Of course, a reseller can also create their own entities (e.g., subscriptions, CPE profiles, customer classes) and use them along with the shared ones. Consider the following example: The bank Openbank wishes to attract more premium customers. They introduce a Platinum service package that includes a personal bank officer, a premium credit card with a $100,000 limit and even a travel SIM card for discounted service usage when roaming. Then they sign a contract with EasyCall to become their reseller. EasyCall has several similar kinds of contracts with different companies. Therefore, EasyCall’s administrator, John Doe, configures the Triple-play product and marks it as Shared with resellers.

Share the product with resellers

John Doe configures the reseller record for Openbank and grants them access to the system via the reseller self-care interface. Now Openbank has all the tools they need to sell services to customers and realize additional profit.

Summary of customer types

Link copied to clipboard

There are the following types of customers (all of whom have the same attributes, such as balance or address info):

  • Reseller – sells the service provided on your platform under his own name and product brand.
  • Distributor – resells your products to end users.
  • Retail customer – someone who actually uses the service.

In addition, all resellers can be divided into three groups:

  • Top-level resellers – these resellers are created and managed by an administrator and do business directly with the service provider. A top-level reseller can create and manage his own subresellers and provide services directly to end users.
  • Subresellers – these resellers are created and managed by a top-level reseller or another (higher-level) subreseller. A subreseller can create and manage their own (lower-level) subresellers and provide services to some end users.
  • Callshop resellers – these resellers only provide callshop services to end users (any other services are not permitted to be offered).

Distributors are subdivided into two categories:

  • Distributors – distributors are created and managed either by administrators or by resellers and receive their commission from them. A distributor can sell products directly to end users or via its own subdistributors.
  • Subdistributors – subdistributors are created and managed by distributors and receive their commission from them even though it is the service provider’s product that they sell. A subdistributor works with end users only.

Customers also can be subdivided into two categories:

  • Direct customers – these are customers who communicate directly with the service provider (e.g., for account billing and payment). Direct customers can be resellers, distributors or retail customers.
  • Subcustomers – these are retail customers and distributors which from a PortaBilling standpoint belong to a reseller.

Retail customers, distributors and resellers are billed according to the credit model. Their balance reflects the amount they owe you. Thus it starts from a certain value (typically 0) and goes up with each call made, or down with each refund or payment. If the customer’s balance reaches the maximum credit amount (credit limit), his accounts will not be allowed to use the service further. The only exception is a retail customer’s debit accounts: since these are prepaid, and their calls do not affect the customer’s balance, they can still make calls even if the customer has exceeded his credit limit.

Callshop resellers

Link copied to clipboard

A callshop is a public facility where end users come to make low-cost international or domestic calls. In a callshop, a customer is guided to enter a phone booth, makes calls, and then pays for them at a cash desk. The callshop is managed by a callshop business owner who sets up the tariffs according to which end users are charged, pays for outgoing traffic, and earns a profit on the margins between these costs. Callshop operators control the authorized use of booths, collect payments from customers and provide customers with receipts.

Callshop resellers

The following step-by-step scenario explains how a customer makes a call from a callshop and how he is then charged for it. First, a customer is directed by a callshop operator to a specific booth.

  1. The callshop operator unlocks a booth to allow making calls from this booth.
  2. The customer dials a desired destination number.
  3. PortaSwitch identifies the phone booth, keeps track of call details, and calculates the corresponding charges.
  4. When the call session ends, the customer leaves the booth.
  5. The operator presents the customer with a bill for the call(s) made according to rates set up by the callshop business owner.

In PortaSwitch, a callshop business owner is configured as a callshop reseller. This type of reseller only provides callshop services to end users (any other services are not permitted to be offered). In the multi-level reseller hierarchy, the callshop reseller is usually created under a top-level reseller or a subreseller.

To permit the creation of callshop resellers directly under service providers the Callshop option must be enabled on the Configuration server.

The callshop reseller has their own self-care interface that has been specially customized for providing callshop services.

Callshop reseller main menu

Equipped with a wide range of features that are oriented to callshop owners and their staff, the PortaSwitch callshop solution assists callshop network owners to easily and effectively provide reliable, high-quality, and cost-effective services to their customers.

On this page

What's new
Admin manuals
UI help
Back to main menu