Skip Headers
Oracle® Communications Billing and Revenue Management Configuring Pipeline Rating and Discounting
Release 7.5

E16710-10
Go to Documentation Home
Home
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

13 Discount Sharing Configuration Example

This chapter describes an example of configuring Oracle Communications Billing and Revenue Management (BRM) discounts for sharing free minutes among several accounts.

Before reading this document, you should read the following documents:

Sharing Free Minutes Among Several Accounts

This example shows how you set up discounts to share free minutes within a discount sharing group.

In this example, there is one sharing group owner account and two sharing group member accounts. The owner account shares its free seconds with the member accounts. The purpose of this configuration is to allow the member accounts to consume different quantities of the owner account's free seconds and to limit the amount of free seconds the members can consume.

The Scenario

The owner account is granted free minutes each month by purchasing a product that includes free seconds. These free seconds are shared with two member accounts. Each member account is granted a quota amount by purchasing a product that includes a quota resource. The quota resource granted is the maximum number of seconds the member is allowed to use from the owner's balance of free seconds. The quota is a counter that is increased whenever free seconds are used. The member accounts themselves are not granted free seconds in this scenario.

The free seconds and quota resource are granted as negative amounts that are increased with usage until the balance equals 0.

When a member account makes a call, the quantity used is deducted from the balance in the member's quota counter and from the owner account's free seconds balance. The free seconds are consumed until the owner's free seconds or the member's quota resource is depleted. Logically, the free seconds granted to the owner should be at least the sum of the quotas granted to the members.

Discount Elements

This discount sharing configuration example uses the following elements:

  • Discount sharing groups to distribute the owner's free seconds to the member accounts.

  • These resources:

    • Free Seconds (Resource ID 1000095). This resource is granted to the discount sharing group owner account.

    • Quota (Resource ID 1000036). This resource is a free minute counter that is granted to the member accounts in the discount sharing group. Each member can have a different quota amount. In this example, this resource is granted at the beginning of each cycle, and unused amounts are not rolled over.

      Note:

      Quota (resource ID 1000036) is not a default BRM resource. You configure this resource when you set up your price plans.
    • Euro (Resource ID 978). Charges for calls impact this resource. This resource is discounted when the calls qualify for free seconds.

  • Event balances to store available resources and the quantity of resource used.

    Event balances are required in this example for two reasons: Balances cannot be directly retrieved across accounts during the discounting process, and the impact of a discount that belongs to one account can't be applied to another account unless the discount is part of the discount sharing group. Not all discounts in this example are included in the discount sharing group.

You define event balances when you configure the discount balance impacts.

This example uses the following event balances:

  • EBal(109) to store the discount sharing group owner's balance of free seconds.

  • EBal(110) to store the difference between the owner's balance of free seconds and the member's free seconds quota.

  • EBal(111) to store the number of free seconds used by the member account.

Three discounts: two purchased by the discount sharing group owner account, and one purchased by each member account in the discount sharing group:

  • Discounts purchased by owner account:

    • Owner Quota discount - This discount essentially copies the balance of free seconds in the owner's account to a temporary event balance (EBal(109)). This event balance is needed by the members' discounts to calculate the quantity of usage that can be applied to the owner's free seconds.

    • Owner Quota Free Seconds discount - This discount deducts the free seconds that were consumed from the owner's balance. This discount doesn't provide any free seconds to the owner account because the balance update is based only on the amount of free seconds consumed by the member accounts.

  • Discount purchased by members:

    • Member Quota discount - This discount updates the member account's quota balance and discounts the charges for free seconds used. It also stores the quantity of free seconds consumed in an event balance (EBal(111)). This event balance is used by the Owner Quota Free Seconds discount to update the owner's balance of free seconds.

Additional Discount Configuration

To set up this discount sharing scenario, you must perform the following tasks as well as configure the discounts:

  • Set up a quota counter resource to grant the quota amount. See "Setting Up Resources" in BRM Setting Up Pricing and Rating.

  • Create products that includes the free seconds and quotas.

  • Create offer profiles for policy-driven charging. The offer profile name is the provisioning tag in the /discount object with which the offer profile is associated. See "Policy-Driven Charging" in BRM Setting Up Pricing and Rating.

  • Create discount sharing groups that include the owner and member accounts. In this example, you create two discount sharing groups--one group for each member account. See "Create Discount Sharing Groups".

Defining the Discounts

This example shows how to set up the discounts in the order in which they are processed by the discount sharing groups:

  1. Owner Quota Discount

  2. Member Quota Discount

  3. Owner Quota Free Seconds Discount

This section describes the values that you enter when creating the discount components in Pricing Center. Only those components and values relevant for this specific example are covered. Other, non-relevant values are not specified. For example, to filter EDRs for discounting, you might use the same discount master in all discount configurations. The discount master doesn't impact how discounts are shared in a discount sharing group so configuring the discount master isn't significant for this example.

Owner Quota Discount

The purpose of this discount is to simply record the owner's balance of free seconds in a temporary event balance. The owner's free seconds are granted at the beginning of each cycle by the product in the price plan. As the subscribers make calls, the free seconds balance changes so each time this discount is evaluated, a different number of free seconds is available.

This discount specifies that if the owner has a balance of free seconds (defined by the trigger), apply the discount balance impact (defined in the rule). The balance impact applies a free second to the event balance for every free second in the owner's balance.

This discount doesn't actually impact the account's balance because the balance impact is stored in a temporary event balance instead. You discount the owner's balance of free seconds in order to pass the quantity in the balance to the next discount (the Member Quota discount). The next discount uses the event balance to compare the owner's available free seconds with the amount the member is allowed to consume (the member's quota balance).

Discount Model Configuration: Owner Has Free Seconds to Share

Discount/Chargeshare Trigger = DTOQ (Discount Trigger for Owner Quota discount):

  • Discount/Chargeshare Condition:

    • Condition Expression = Bal(1000095)

      The resource ID for free seconds is 1000095. The discount expression Bal(1000095) references the discount owner's free seconds balance.

    • Condition Operator = Less Than

    • Condition Value = 0

    This condition specifies that the discount owner has free seconds available (the balance of free seconds is less than 0). The operator is Less than because the free seconds in the plan are granted as a negative value that is increased with usage until the balance equals zero.

Discount/Chargeshare Rule = DROQ (Discount Rule for Owner Quota discount):

In this rule, you only need to record the owner's balance of free seconds into an event balance. This means you want the discount applied regardless of the amount of usage. Therefore, you need to make sure the DRUM expression always falls within the step's threshold. A sure way to do this is to make the threshold unlimited and the DRUM a finite quantity.

  • DRUM:

    • DRUM Expression = 1.0

      This specifies that the minimum quantity to consider for discounting is one unit. The unit is non-currency because the DRUM type is Quantity. The resource to impact in the balance impact is free seconds, which means this DRUM evaluates to one second.

    • DRUM Type = Quantity

    • Rule Type = Tiered

      A tiered rule type means that the balance impact is applied when any part of one second (the DRUM) falls within the discount step threshold.

  • Discount/Chargeshare Step:

    • Threshold From = 0

    • Threshold To = Infinity

      The threshold is unlimited so that any positive amount in the DRUM expression causes the balance impacts to be applied. In this case, 1.0 (the DRUM) falls between 0 and infinity so the following balance impact is applied.

  • Discount/Chargeshare Balance Impact:

    This balance impact applies a free second to the event balance for every free second in the owner's free seconds balance.

    • Impact/Consume = 1000095, Free Seconds

      This balance impact is applied to the free seconds resource. Recall that the balance impact will be stored in an event balance, where this resource ID will be recorded.

    • Applied To = Discount/Chargeshare Owner

      This specifies that the free seconds balance that is impacted belongs to the discount owner account. However, because the balance impact will be stored in an event balance and not applied to the account balance, the value in Applied To is not considered.

    • Amount = 1; Beat = 1; no proration

      The amount and beat are both 1. This specifies a one-to-one correlation between the discount amount and the quantity that is discounted, making them equal. For example, if the amount to discount is 20 minutes (1200 seconds), the discount amount is also 20 minutes.

      Discounting a portion of one second is not desired so the beat is not prorated.

    • Base Expression = Bal(1000095)

      The base expression represents the amount to discount. The discount expression Bal(1000095) references the discount owner's current balance of free seconds that was granted by the owner's plan. (This balance changes as the free minutes are used.)

      Because the amount and beat are equal, for every available second in the owner's balance, a second is added to the balance impact. In this way, you copy the available balance into the event balance.

    • Consume: Available resource

      The balance impact is stored in an event balance and is not applied to the account balance so it doesn't matter whether you specify Consume or Impact. Consume is the default.

    • Event Balance ID = 109

      This balance impact is stored in the temporary event balance with the ID 109. This event balance is referenced by using the expression EBal(109).

Discount Model Configuration

This model associates the trigger and rule that you just created.

Discount Model = DMOQ (Discount Model for Owner Quota discount):

  • Discount Model Configurations:

    • Trigger = DTOQ (Discount Trigger for Owner Quota discount)

    • Rule = DROQ (Discount Rule for Owner Quota discount)

    • Cascading = No

    Because this model contains only one discount configuration, cascading is not relevant.

Member Quota Discount

The purpose of this discount is to update the member's quota balance, discount the member's charges for used free seconds, and store the number of free seconds used in another event balance (EBal(111)).

This discount uses the discount sharing group owner's balance of free seconds (stored in EBal(109) by the previous discount) to determine the maximum free seconds that can be consumed by the member.

The discount sharing group member cannot use more free seconds than its quota specifies, even though the group owner account may have additional seconds to share. It's also possible that the member's quota exceeds the number of free seconds available in the owner's balance. The number of free seconds allowed depends on which balance is greater: the owner's or the member's. Therefore, this discount uses two discount model configurations to select the maximum number of free seconds allowed:

  • If the discount sharing group owner's balance of free seconds (EBal(109)) exceeds the member's quota, the member's quota is the maximum allowed. The associated discount rule stores the quota balance in a temporary event balance (EBal(110)).

  • If the member's quota balance exceeds the owner's balance of free seconds (EBal(109)), the owner's balance is the maximum allowed. The associated discount rule stores the owner's balance in a temporary event balance (EBal(110)).

Separate model configurations are used because the above scenarios are mutually exclusive.

A third discount model configuration is used to discount the usage charges and update the member's quota balance. The member's account balances are updated based on the maximum free seconds allowed, which was stored in EBal(110) by the previous configuration.

The number of free seconds consumed by the member is stored in another temporary event balance (EBal(111)). This event balance is required because this discount is not part of the discount sharing group and can't be used to update a balance in another account (the discount sharing group owner's balance of free seconds). EBal(111) will be used by the next discount to adjust the owner's balance of free seconds.

Discount Model Configuration 1: Owner's Balance of Free Seconds Exceeds Member's Quota

In this configuration, if the owner's balance of free seconds is greater than the member's quota, the quota balance is stored in a temporary event balance (EBal(110)). This balance represents the maximum amount of free seconds that can be consumed. This event balance is used in discount model configuration 3, which updates the member's balances based on the number of seconds used and the maximum free seconds allowed.

Discount/Chargeshare Trigger 1 = DTUseUQ (discount trigger to store member's quota balance):

  • Discount/Chargeshare Condition:

    • Condition Expression = EBal(109) - Bal(1000036)

    • Condition Operator = Less Than or Equal To

    • Condition Value = 0

    Recall that the owner's balance of free seconds was stored in an event balance with the ID 109 by the Owner Quota discount, and that available minutes and quota are negative quantities.

    This condition specifies that the owner's balance of free seconds (EBal(109)) exceeds the member's available quota (Bal(1000036)). For example, if the owner has a balance of -300, and the member has a quota of -100, the condition is (-300) - (-100) is less than or equal to 0. In other words, -200 is less than or equal to 0.

Discount/Chargeshare Rule 1 = DRUseQ (discount rule to store member's quota balance):

In this rule, you only need to copy the member's available quota balance into an event balance. This means you want the discount applied regardless of the amount of usage. Therefore, you need to make sure the DRUM expression always falls within the step's threshold. A sure way to do this is to make the threshold unlimited and the DRUM a finite amount.

  • DRUM:

    • DRUM Expression = 1.0

    • DRUM Type = Quantity

      This specifies that the minimum quantity to consider for discounting is one unit. The unit is non-currency because the DRUM type is Quantity. The resource to impact in the balance impact is the quota counter, which means this DRUM is equivalent to one second.

    • Rule Type = Tiered

      A tiered rule type means that the balance impact is applied when any part of one second (the DRUM) falls within the discount step's threshold.

  • Discount/Chargeshare Step:

    • Threshold From = 0

    • Threshold To = Infinity

    The threshold is unlimited so that any positive amount in the DRUM expression causes the balance impacts to be applied.

  • Discount/Chargeshare Balance Impact:

    In this balance impact, for every free second count in the current balance of the member's quota, a free second count is applied to the event balance. This balance impact is used to tell the next balance impact how many free seconds are available for consumption.

    • Impact/Consume = 1000036 (quota counter)

      This balance impact is applied to the quota resource. Recall that the balance impact will be stored in an event balance, where this resource ID will be recorded.

    • Applied To = Event Owner

      This specifies that the quota balance that is impacted belongs to the account that generated the usage. However, because the balance impact will be stored in an event balance and not applied to the account balance, the value in Applied To is not considered.

    • Amount = 1; Beat = 1; no proration

      The amount and beat are both 1 so the discount amount will equal the quantity that is discounted (specified in the base expression).

    • Base Expression = Bal(1000036)

      The base expression represents the amount to discount. The discount expression Bal(1000036) references the event owner's (the discount sharing group member's) current balance of the quota resource that was granted by the member's plan.

      Because the amount and beat are equal, for every available second in the member's quota balance, a second is added to the balance impact. In this way, you copy the available balance into the event balance.

    • Consume: Available resource

      The balance impact is stored in an event balance and is not applied to the account balance so it doesn't matter whether you specify Consume or Impact. Consume is the default.

    • Event Balance ID = 110

      This balance impact is stored in the temporary event balance with the ID 110. This event balance is referenced by using the expression EBal(110).

Discount Model Configuration 2: Member's Quota Exceeds Owner's Balance of Free Seconds

In this configuration, if the member's quota balance is greater than the owner's balance of free seconds, the owner's balance of free seconds is stored in a temporary event balance. This balance represents the maximum amount of free seconds that can be consumed. The event balance is used in discount model configuration 3, which updates the member's balances based on the number of seconds used and the maximum free seconds allowed.

Discount Trigger 2 = DTUseFS (discount trigger to store owner's free seconds balance):

  • Discount/Chargeshare Condition:

    • Condition Expression = EBal(109) - Bal(1000036)

    • Condition Operator = Greater Than or Equal To

    • Condition Value = 0

    This condition specifies that the member's quota (Bal(1000036)) exceeds the owner's balance of free seconds (EBal(109)). For example, if the owner's balance is -100 and the member's balance is - 150, the condition is (-100) - (-150) is greater than 0, or 50 is greater than 0.

Discount Rule 2 = DRUseFS (Discount Rule to store owner's free seconds balance)

In this rule, you only need to copy the owner's balance of free seconds into an event balance. This means you want the discount applied regardless of the amount of usage. Therefore, you need to make sure the DRUM expression always falls within the step's threshold. A sure way to do this is to make the threshold unlimited and the DRUM a finite amount.

  • DRUM:

    • DRUM Expression = 1.0

    • DRUM Type = Quantity

      Again, the minimum quantity of usage to consider for discounting (the DRUM) is one second (1.0).

    • Rule Type = Tiered

      A tiered rule type means that the balance impact is applied when any part of one unit (the DRUM) falls within the discount step's threshold.

  • Discount/Chargeshare Step

    • Threshold From = 0

    • Threshold To = Infinity

  • Discount/ChargeShare Balance Impact:

    In this balance impact, for every free second in the owner's current balance of free seconds, a free second is applied to an event balance. This balance impact is used to tell the next balance impact how many free seconds are available for consumption.

    • Impact/Consume = 1000095, Free Seconds

      This balance impact is applied to the free seconds resource. The balance impact will be stored in an event balance, where this resource ID will be recorded.

    • Applied To = Event Owner

      This specifies that the balance impacted belongs to the account that generated the usage. However, because the balance impact will be stored in an event balance and not applied to the account balance, the value in Applied To is not considered.

    • Amount = 1; Beat = 1; no proration

      The amount and beat are both 1 so the discount amount will equal the quantity that is discounted (specified in the base expression).

    • Base Expression = EBal(109)

      The amount to discount is the discount sharing group owner's current balance of free minutes that was granted by the owner's plan. Recall that the owner's balance of free minutes was stored in the event balance with ID 109 by the previous Owner Quota discount.

      Because the amount and beat are equal, for every second in EBal(109), a second is added to the balance impact. In this way, you copy this available balance into the new event balance.

    • Consume: Available resource

      The balance impact is stored in an event balance and is not applied to the account balance so it doesn't matter whether you specify Consume or Impact. Consume is the default.

    • Event Balance ID = 110

      This balance impact is stored in the temporary event balance with the ID 110. This event balance is referenced by using the expression EBal(110).

Discount Model Configuration 3: Consume Free Seconds and Store Quantity Consumed

Thus far, all balance impacts have been stored in event balances and no account balances have yet been modified. This configuration impacts the member account's quota balance and adjusts the currency balance for the free minute charges. The quantity of free seconds consumed by the member is stored in another event balance (EBal(111)). This event balance is used by the next discount to update the free seconds balance in the discount sharing group owner account.

In this configuration, the balance impact of the previous configuration (stored in EBal(110)) determines the maximum free seconds that can be consumed by the discount sharing group member account.

Discount Trigger 3 = DTQuota - Discount trigger for quota usage

  • Discount/Chargeshare Condition:

    • Condition Expression = Bal(1000036)

    • Condition Operator = Less Than

    • Condition Value = 0

    This condition specifies that the member has an available quota balance. If the resource in the quota balance has been used up, this discount is not applied.

Discount Rule 3 = DRQuota - Discount Rule for Quota usage

In this rule, the balance impacts are based on the actual amount of usage. Therefore, the quantity to consider for discounting (the DRUM) is the total usage in the charge packet. If the total usage exceeds the available free seconds, only the usage up to the available amount should be discounted. Therefore, you use the maximum free seconds that can be consumed (stored by the previous configuration in EBal(110)) as the upper limit of the threshold.

  • DRUM:

    • DRUM Expression = TotalQ

      The minimum quantity to consider for discounting specifies the discount expression TotalQ. This expression evaluates to the total quantity (the total length of the member's call) in the EDR's charge packet.

    • DRUM Type = Quantity

    • Rule Type = Tiered

      If any part of the total quantity in the charge packet falls within the step's threshold, the discount is applied.

  • Discount/Chargeshare Step:

    • Threshold From = 0

    • Threshold To = EBal(110)

      Threshold To specifies the event balance, EBal(110), which was stored by the previous configuration. This event balance specifies the maximum amount of free minutes that can be consumed. The quantity in this balance is either the owner's balance of free seconds or the member's quota balance, whichever is less.

      When the balance impacts are calculated, the quantity of usage (the DRUM) that falls within 0 and the maximum allowed (the step) is the amount that is discounted.

There are three discount balance impacts for this discount rule:

  • Discount/Chargeshare Balance Impact 1:

    This balance impact credits the member account's currency balance for charges applied to usage that qualify for free seconds. This is necessary because charges are applied during rating, before events are discounted.

    • Impact/Consume = 978, Euro

      This balance impact is applied to the discount owner's euro resource.

    • Applied To = Event Owner

      The euro balance that is impacted belongs to the account that generated the usage (the discount sharing group member account).

    • Percentage = -100%; no proration

      A -100% discount credits the account for the entire charge specified in the following base expression.

    • Base Expression = StepC

      The amount to discount is the discount expression StepC. This expression evaluates to the charge for the amount of resource (the member's euro balance) that falls within the step's threshold (0 to the available balance of free seconds or quota). The amount to discount, then, is the charge for seconds used, up to the available balance.

      For example, if the DRUM is 180 seconds, and the maximum free seconds allowed in the step is 6000 seconds, the entire 180 seconds qualifies as free seconds. Therefore, StepC is the euro (the resource) amount charged for 180 seconds.

    • Consume: Available resource

      This is the default value for currency resources. It specifies that the account's resource can be discounted up to the available amount in the balance.

    • Event Balance ID = 0

      No event balance is specified (ID = 0) so this balance impact is applied to the account balance.

  • Discount/Chargeshare Balance Impact 2:

    This balance impact reduces the member's quota balance by the number of free seconds used.

    • Impact/Consume = 1000036, Quota

      This balance impact is applied to the quota resource.

    • Applied To = Event Owner

      The quota balance that is impacted belongs to the account that generated the usage.

    • Amount = 1; Beat = 1; no proration

      The amount and beat are both 1 so the discount amount will equal the quantity that is discounted (specified in the base expression).

    • Base Expression = StepQ

      The amount to discount is the expression StepQ. This expression evaluates to the quantity of the resource (the member's quota balance) that falls within the step's threshold (between 0 and the balance of free seconds or quota). The amount to discount, then, is the number of seconds used, up to the available balance.

      For example, if the DRUM is 180 seconds, and the maximum free seconds allowed in the step is 6000 seconds, the entire 180 seconds qualifies as free seconds. Therefore, StepQ is a count (the quota resource) of 180 seconds.

    • Consume: Available resource

      This discount can consume the member's quota resource up to the available amount in the balance.

      In this rule, the available balance was used as the upper limit of the threshold. The amount that falls within this threshold is the amount that is discounted (specified by the base expression). Therefore, you know the quota balance contains at least the amount that was consumed.

    • Event Balance ID = 0

  • Discount/Chargeshare Balance Impact 3:

    This balance impact stores the number of free seconds consumed in another temporary event balance. This event balance will be used by the next discount to reduce the discount sharing group owner's balance of free seconds. Recall that the owner's balance cannot be directly updated by this discount because this discount is not shared.

    • Impact/Consume = 1000095, Free Seconds

      This balance impact is applied to the free seconds resource. Recall that this balance impact will be stored in an event balance, where this resource ID will be recorded.

    • Applied To = Discount/Chargeshare Owner

      This specifies that the free-second balance that is impacted belongs to the discount owner account. However, because the balance impact will be stored in an event balance and not applied to the account balance, the value in Applied To is not considered.

    • Amount = 1; Beat = 1; no proration

      The amount and beat are both 1 so the discount amount will equal the quantity that is discounted (specified in the base expression).

    • Base Expression = StepQ

      The amount to discount is the expression StepQ. This expression evaluates to the quantity of the resource (free second) that falls within the step's threshold (between 0 and the balance of free seconds or quota). The amount to discount, then, is the number of seconds used, up to the available balance.

    • Consume: Available resource

      The balance impact is stored in an event balance and is not applied to the account balance so it doesn't matter whether you specify Consume or Impact. Consume is the default.

    • Event Balance ID = 111

      This balance impact is stored in the temporary event balance with the ID 111. This event balance is referenced by using the expression EBal(111).

Discount Model = DMQuota (Discount Model for Quota)

Create a discount model configuration to associate each trigger with a rule.

Owner Quota Free Seconds Discount

The purpose of this discount is to reduce the discount sharing group owner's balance of free seconds by the number of free seconds the member account consumed. This discount takes the amount of free seconds used that was stored in the event balance (EBal(111) by the previous discount, and applies it to the owner's balance of free seconds.

Discount Model Configuration: Update Owner's Free Seconds Balance

Discount Trigger = DTFS - Discount Trigger for Free Seconds discount:

  • Discount/Chargeshare Condition:

    This condition specifies that there were available free seconds that were used.

Discount Rule = DRFS - Discount Rule for Free Seconds:

  • DRUM:

    • DRUM Expression = 1.0

    • DRUM Type = Quantity

      The minimum amount of usage to consider for discounting (the DRUM) is one second (1.0).

    • Rule Type = Tiered

      A tiered rule type means that the balance impact is applied when any part of one unit (the DRUM) falls within the discount step's threshold.

  • Discount/Chargeshare Step:

    • Threshold From = 0

    • Threshold To = EBal(111)

      Threshold To specifies the event balance (EBal(111)) from the previous discount configuration. The quantity in this balance is the number of free seconds used by the discount sharing group member account.

  • Discount/Chargeshare Balance Impact:

    • Impact/Consume = 1000095, Free Seconds

      This balance impact is applied to the free seconds resource.

    • Applied To = Discount/Chargeshare Owner

      The free-second balance that is impacted belongs to the discount sharing group owner account.

    • Amount = 1; Beat = 1; no proration

      The amount and beat are both 1 so the discount amount will equal the quantity that is discounted (specified in the base expression).

    • Base Expression = StepQ

      The amount to discount is the discount expression StepQ. This expression evaluates to the quantity of the resource (the owner's free seconds) that falls within the step's threshold (0 and the number of free seconds used (EBal(111)). The amount to discount, then, is the number of seconds used, up to the available balance.

    • Consume: Available resource

      This discount can consume the discount sharing group owner's balance of free seconds up to the available amount in the balance.

    • Event Balance ID = 0

Discount Model = DMPQFS (Discount Model for Free Seconds)

  • Discount Model Configuration:

    • Trigger = DTFS - Discount Trigger for Free Seconds discount

    • Rule = DRFS - Discount Rule for Free Seconds

    • Cascading = No

    Because this model contains only one discount configuration, cascading is not relevant.

Create Discount Sharing Groups

You set up a discount sharing group by creating a discount sharing group object (/group/sharing/discounts) for the owner account that shares its discount, and ordered balance group object (/ordered_balgrp) for each account that consumes the owner's free minutes.

For information about discount sharing groups, see "About Discount Sharing Groups" in BRM Managing Accounts Receivable.

To set up the discount sharing groups:

  1. Create a discount sharing group by using the PCM_OP_SUBSCRIPTION_SHARING_GROUP_CREATE opcode. This opcode links the accounts in the group and specifies the discounts that are shared. See "Creating Resource Sharing Groups" in BRM Managing Accounts Receivable.

  2. Set up an ordered balance group for each member account by using the PCM_OP_SUBSCRIPTION_ORDERED_BALGRP opcode. (The discount sharing group owner doesn't need an ordered balance group). This opcode specifies the order in which the discounts are applied to the member accounts. See "Managing Ordered Balance Groups" in BRM Managing Accounts Receivable.

    In the opcode input flist, for this example, you specify the following values:

    • In the PIN_FLD_ACCOUNT_OBJ field, specify the POID of the member account for which this object is created.

    • In the PIN_FLD_ORDERED_BALGRP array, specify the POID of the discount objects that are shared in the following order:

      a. The Owner Quota discount

      b. The discount owned by the member.

      c. Owner Quota Free Seconds discount

    For more information, see "About Ordered Balance Groups" in BRM Managing Accounts Receivable.