Balance Distribution Normalizer
The balance distribution normalizer compares a balance or meter quantity to ranges of quantity values defined in the normalizer and matches the quantity to one range. The ranges must cover from negative infinity to infinity, with no gaps, and are used to choose a result.
- Balance amount, where the balance amount is the current amount (either gross or unreserved, depending on the operation) in a balance present at the time of rating. When normalizing on balance amount, you can configure the normalizer to retrieve the balance amount from a selected group tier. This option is not available when normalizing on available amount.
- Available amount, where the available amount is the amount that can be charged to a balance or added to a meter until the credit limit is reached. It is the difference between the credit limit and the current balance amount. If the current amount is above the credit limit, then the available amount is zero (not a negative amount). If there is no credit limit, the available amount is equal to infinity.
During rating, the normalizer selects the index for one dimension in a matrix (rate table, policy table, and the like) according to a set of balance amount ranges. The range in which the amount of balance falls determines the value produced by the normalization. The ranges represent ranges of balance amounts or available amounts depending on the type of balance normalizer.
- Balance Amount: Start Range <= X < End Range
- Available Amount: Start Range < X <= End Range
During normalization, if a balance or a meter is impacted, then the usage is segmented at the point at which the charge, or usage, causes the balance or meter to reach the top of the selected range.
If there are multiple valid balances at the time of normalization, the sum of all balance amounts or all available amounts determines the normalization range. This can occur under the following circumstances:
- When the balance distribution normalizer is based on a balance class and multiple balances have a validity period that encompasses the time the event is received.
- When there are multiple valid instances of a balance at the time of normalization.
For example, this can happen when the normalizer is based on a Prepaid Minutes balance class that has two valid balances, Monthly Minutes and Bonus Minutes. If there are multiple instances of the balance, the available amount is equal to the sum of the available amounts for the individual balance instances. If the available amount for a balance instance is infinity, the total available amount is infinity.
For subscribers in a group, normalization on balance amount meters always looks only at one wallet, which could be a group or subscriber wallet, depending on the event initiator. Normalization on available amount meters always considers the wallets above the balances in a hierarchy (which are checked for aggregating balances), to find the minimum available amount in the wallet of the event initiator, or any wallet above it in the hierarchy.
For periodic balances and meters, you specify the current period or an earlier period to examine during normalization. This allows you to set up pricing based on a subscriber's previous balance or meter amount. For example, if a subscriber has unused assets in a previous balance period, you can create a recurring grant to the current balance period based on the amount remaining in the previous period. The normalized amount can span only one period. If a balance distribution normalizer specifies a period that is no longer in the subscriber's wallet, a balance amount of 0 is used. This would happen, for example, if three previous periods are saved in the wallet and the range normalizer specifies the sixth previous period. The number of periods kept is determined by the balance template definition.