Quantity-based services (such as the amount of data transferred, SMS, or IPTV purchases) are billed rather similarly to the “default” rating of calls, with various rating elements applied to the “total used service” value. In fact, if we regard time-based services as those where a quantity of seconds is used as the rating parameter, then the two are almost identical!
The picture above demonstrates how quantity-based services are charged. A Connect Fee is applied for all such billing events. For any event where a customer has used less than the Minimum Threshold units, he will be charged as if he used the Minimum Threshold. Free Units are granted after the Minimum Threshold, meaning that the number of units specified in this parameter will not be charged. The amount remaining after (Minimum Threshold + Free Units) will be rounded up to multiple Rounding units. Note that at this point only measurement units are being used, and these must be converted to billing units so that the actual amounts charged will be calculated as Price_per_unit * Units / Billing_Ratio.
After the total charged amount has been computed, the Post Use Surcharge is applied. The service illustrated in the figure above will be charged using the following formula:
Amount_Charged = (Connect_Fee + Minimum_Threshold * Unit_Price_Initial / Billing_Ratio + 3 * Rounding * Unit_Price_Next / Billing_Ratio) * (1+Post_Use_Surcharge/100)
Parameters such as Minimum_Threshold, Rounding, Unit Price Initial and Unit Price Next can be specified per destination. Connect Fee, Free Units and Post Call Surcharge are defined on a per-tariff basis, and so are the same for all destinations within a tariff.
To understand this better, let’s take another simple example. A data transfer service rating is defined as follows:
- The measurement unit is a byte, the billing unit is a kilobyte, and the billing ratio (how many measurement units make up one billing unit) is 1,024.
- The rate is defined as follows: minimum threshold – 10,240, rounding – 1,024, and the initial and next prices are the same – $0.02. (Prices are defined per billing unit, so this is a price per kilobyte.)
So if a customer initiates a session and transfers 1,976 bytes, this will fall under the minimum threshold; thus he will be charged 10,240 * 0.02/1,024 = $0.20. If the customer transfers 17,290 bytes during the session, this results in 7 rounding increments above the minimum threshold, and so the total charged amount is 10,240 * 0.02 / 1,024 + 7 * 1,024 * 0.02 / 1,024 = $0.34.