PortaBilling enables you to offer multiple services to your customers, so you can broaden your range of services while providing clear transaction and invoice information to your subscribers and administrators. There are two entities involved in the billing configuration:

  • Service types
  • Services

Service types and services

A service type is a description of the physical service provided to an end user. A service type primarily defines the way in which the billing engine interacts with network equipment to ensure that the service is authorized, provided, and rated correctly. Voice calls or  Internet access are examples of service types. The list of available service types is determined by the billing engine capabilities in a given release, as new service types appear when proper support is added to the billing engine internal modules. A service is a description of the user’s activities from a business perspective. Services are the foundation of your billing configuration, and new services may be defined according to your business model. This permits flexible branding of your services to customers and opens the possibility of bundling various services into one product. You can choose names and billing parameters for new services as desired. For instance, the same physical service, such as Internet access, can be sold to one category of users as “Internet Air”, and to another category of users at a different rate as “Extended Wi-Fi Coverage”. Moreover, the same physical service can be sold to the same customer as multiple entities: for example, the use of Wi-Fi in the customer’s office and in an airport are treated as two separate services with a different price. A breakdown of charges per service is provided on the invoice and in the xDR browser.

Rating base

Link copied to clipboard

When information is received about the use of a particular service type, the billing engine must process it and decide which attribute or set of attributes are to be used later to calculate the charged amount. This may be quite different depending on the service type: session duration, amount of transferred bytes, counter values, and so on. The logic determining which attributes are used for billing is called the rating base. For instance, the rating base for the Internet Access service (when charging for a data transfer) will define what exactly constitutes the “traffic” which the customer is being charged for: the amount of downloaded data, the amount of uploaded data, or both. The most commonly used rating bases are:

  • session-time – these include phone calls, Internet access sessions, and other services where the basis for calculating charges is the duration of time in which a customer used the service.
  • quantity – these services include data transfer, text messaging, pay-per-view movies, or pizza delivery orders. The duration of the service session is either unsuitable or irrelevant for billing purposes. Rating is done based on the type of service element used (e.g. if the movie purchased was a “New Release” or “Classic”) and the quantity (did you order two pizzas, or just one?).

Each service type supports at least one rating base. Potentially, however, it can have more than one, e.g., the Internet Access service can be charged based on either session time or the amount of data transferred. Every new service has a name and several important parameters:

  • The service type it uses (see below for a description of available service types).
  • The rating base, defining which set of attributes will be used to calculate the charged amount.
  • A base unit name; base units are those units in which the amount of the service “used” is reported to billing (e.g., information about session duration is usually given in seconds, while information about the amount of data transferred is given in bytes). You cannot change the type of base units, since this is typically defined by the configuration and capabilities of your network equipment. You can, however, give it a name that is easy to understand, or even put it in your user’s local language.
  • Billing units are used for all functions in PortaBilling. These are the units in which your pricing is specified, in which customers see the amounts on their invoices, and so on. For instance, the billing units for most telephony calls are minutes, while in the case of data transfer services it could be kilobytes (for a GPRS data service) and megabytes or even gigabytes (for a broadband Internet connection service).
  • Obviously, you need to define how your billing units relate to your base units. PortaBilling gives you full flexibility to decide whether 1 kilobyte will equal 1,000 or 1,024 bytes for billing purposes. Rating schemes for other services may be defined with the same degree of flexibility.

Measurement, base, and billing units

Link copied to clipboard

Measurement units are the units in which the billing engine receives information from the network. Obviously, the billing engine needs this information in order to interpret amounts correctly. However, a PortaBilling administrator rarely comes into contact with these units, since for the purposes of adjusting the rating configuration he would use the following:

  • Base unit – the smallest elements that can be rated. This can be thought of as the “rounding threshold”. For example, if a customer has downloaded 758 bytes, but the base unit chosen is a kilobyte, for all further rating calculations he is considered to have downloaded 1 kilobyte.
  • Billing unit – the unit in which it is most convenient to express the number of services used. The price of the service will also be defined using this unit.

The base unit must have either the same or less precision than the measurement unit, and the billing unit must have either the same or less precision than the base unit. Thus while in some cases the units will be equal (e.g., call duration is reported in seconds and the base unit for the voice calls service is also one second), in other cases you can scale units to make them more convenient for your administrators and customers. Broadband Internet services are one good example. Although network equipment always reports the amount of transferred data in bytes, it would certainly be very confusing to report the total downloaded data as “234564474 bytes”, or inform customers that “your current rate is $0.0000000014 per byte”. They will be much happier to see “228 megabytes” or “$1.50 per gigabyte”. So in this case you would choose a megabyte as the base unit and a gigabyte as the billing unit.

Service pools

Link copied to clipboard

To provide several services to your customers within a single quota, consolidate them in service pools. However, every service within the pool can be measured differently (e.g., voice calls are measured in minutes, Internet access – in megabytes.) Therefore, service pools are measured in unified virtual units.

Service pool creation

Virtual units are used to express the cost for using a particular service that is included in a pool (e.g., a minute’s worth of calls costs 5 units while an SMS message costs 1 unit). If your pricing changes, you can conveniently re-configure it within a service pool.

Service pool editing

Additionally, you can fine-tune the pricing for the same service within the pool. For example, making calls to Europe cost 10 units per minute while calls to Germany will only cost 8 units per minute. To do this, select the same service for different destination groups and then configure the pricing. Service pools can only be used in volume discount plans and be applied for quotas and service wallets. Please refer to the Quota/Balance Allocation for Multiple Services section for details. To summarize, service pools have the following parameters:

  1. Service pools apply for a complete destination group set.
  2. Each service within a pool is defined for a destination group.
  3. Service pools are measured in virtual units. Virtual units are used to express the cost for using a particular service and are mapped to this service’s units (e.g., a minute’s worth of calls costs 5 units while an SMS message costs 1 unit). Note that the number of virtual units in the mapping must be higher than the number of service units.
  4. To fine-tune the pricing, you can add the same service multiple times for different destination groups and define a different unit mapping. Note that the service-destination group pairs within the service pool must be unique.
  5. You can create a single multi-service wallet or quota within the same volume discount plan.

Supported service types

Link copied to clipboard

Once installed, PortaBilling supports the service types shown in the table below. The Rating Base column refers to the applicable rating base options (S means “session-based” and Q means “quantity-based”):

Name Rating base Description



Rating conference calls via the PortaSIP IVR (or some conferencing server).

Data service


Rating data transfers using the amount of data transferred as the billing parameter.

Dial-up Internet


Dial-up Internet access sessions rated based on the session duration.



IPTV services, like pay-per-view movies, rated based on the number of views.

Internet access

S, Q

Internet access sessions (DSL, PPPoE, etc.), rated based on session duration or the amount of transferred data.

Measured service


Rating the amount of an allocated resource (active calls, PBX phone lines, and other), charges are based on the number of resource units consumed.

Messaging service


Rating messages (text, SMS, MMS, other); charges are based on the number of messages sent.

Mobile network provisioning


This enables subscriber data provisioning to mobile networks.

When enabled for an account’s product, the External System Provisioning Framework (ESPF) provisions both policy/service quality parameters and account management operations accomplished in PortaBilling to the mobile carrier’s core.



Generic quantity-based service type; can be used to apply charges for any service use expressible in numeric form (e.g. number of pizzas ordered).



Generic time-based service type; can be used to apply charges for any service use based on the length of time the service was accessed.

Voice calls


Rating telephony calls (incoming or outgoing) made via PortaSIP, VoIP gateways, or other equipment using the Diameter requests received from the mobile core.



Wireless Internet access sessions, rated based on the session duration.

Service pool


The set of services provided within a single usage plan.

On this page

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