10 Configuring Pricing in Charge Offers

Learn how to configure pricing in Oracle Communications Billing and Revenue Management (BRM) charge offers.

Topics in this document:

Configuring Pricing in Charges

Each charge can contain one or more balance impacts. You configure balance impacts in the pricing table. Figure 10-1 shows an example of the pricing table. Each row in the table represents a balance impact.

Figure 10-1 Pricing Table for a Charge

Description of Figure 10-1 follows
Description of "Figure 10-1 Pricing Table for a Charge"

A balance impact is defined by how much to charge (the Amount column in the balance impact) for a given amount (the Per Unit column in the balance impact). When configuring pricing for a charge, you can also do the following:

Configuring Validity Periods for Noncurrency Credit Balances

When you create an offer that credits noncurrency balances, such as granting minutes, you can configure a validity period for the balance impact. This is useful if you want to limit how long a customer can keep minutes in their balance before they need to purchase more minutes. Figure 10-2 shows a balance impact that grants 100 minutes that are available for one billing cycle.

Figure 10-2 Balance Impact for Minutes

Description of Figure 10-2 follows
Description of "Figure 10-2 Balance Impact for Minutes"

You can specify the following fixed validity periods:

  • For the current accounting cycle

  • For the current billing cycle

  • For the current recurring cycle

You can also define validity period start and end times. You can start a validity period at these times:

  • When the event occurs.

  • At first usage of the service.

    If a balance is shared among accounts in a sharing group, the balance validity period is set when any account in the group first impacts the balance. Because the same balance is shared with all accounts in the group, the validity period of that balance applies to all accounts.

  • From a specified date.

  • Relative to a specified date.

You can end a validity period based on:

  • A date relative to the start date (measure in minutes, hours, days, months, or in account, billing, or recurring cycles)

  • On a specified date.

  • No end date.

If a charge offer or discount offer is canceled after being used, the validity end time of any balance granted by the offer is set to the time of the cancellation.

Note:

A charge offer that is valid from first usage should not grant a credit balance, such as included minutes, that is also valid from first usage. If it does, the granted balance cannot be consumed by the first usage event. See "About Granting First-Usage Balance Impacts In First-Usage Charges" for more information.

Granting Noncurrency Balances in Increments

Note:

This functionality is supported only for recurring and one-time charges that have validity periods with a specified end date.

When you credit noncurrency balances, such as free minutes, in a one-time allotment or in a recurring cycle, you can choose to grant the noncurrency balance in smaller portions on an incremental basis, such as every 5 hours or every 2 days. For example, a one-time allotment of 50 Gigabytes that is valid for one month could be distributed to customers as one Gigabyte per day or 10 Gigabytes every seven days.

To configure PDC to grant a noncurrency balance in increments, you split the noncurrency balance into multiple validity periods and specify the following:

  • The total validity period for the credit of noncurrency resources.

  • The length of each incremental validity period, in terms of seconds, minutes, hours, days, or months.

  • When the incremental bucket of noncurrency resources expire: at the end of the incremental validity period or at the end of the total validity period.

PDC calculates the amount of noncurrency resources allocated to each incremental bucket (except the last bucket) as follows:

(incremental validity period/total validity period) * (grant amount)

The amount for the last incremental bucket is calculated as follows:

(grant amount) - (total amount granted in previous buckets)

For example, assume your customers are granted a one-time allotment of 400 free minutes with a one-month total validity period. The 400 free minutes are split into multiple 7-day validity periods, with each incremental bucket of free minutes expiring at the end of its 7-day incremental validity period. Table 10-1 shows how these 400 free minutes would be distributed to your customers in the month of June.

Table 10-1 Schedule for Distributing 400 Free Minutes in 7-Day Validity Periods

Bucket Bucket Size Calculation Bucket Size Validity Start Date (starting at 12:00:00am) Validity End Date (ending at 11:59:59pm)

1

(7/30) * 400

93 Free Minutes

June 1

June 7

2

(7/30) * 400

93 Free Minutes

June 8 June 14

3

(7/30) * 400

93 Free Minutes

June 15 June 21

4

(7/30) * 400

93 Free Minutes

June 22 June 28

5

400 - (93 * 4) 28 Free Minutes June 29 June 30

You can configure multiple validity periods for noncurrency balances by using one of the following:

Specifying Rounding in Balance Impacts

In a balance impact, you can specify the number of units to which the charge applies. For example, for a mobile phone service, you might charge 0.40 US dollars for every minute of usage in 2-minute increments. In this case, if the unit is Minute, the Increment is 2.

If you specify an increment, you can select a rounding option. Rounding is based on the specified increment. For example, if a 3-minute-and-50-second call is rated in 2-minute increments, it is handled as follows:

  • No Rounding: Not applicable. (Applies only to an increment of 1.)

  • Round Down: Charge for 2 minutes ($0.80).

  • Round Up: Charge for 4 minutes ($1.60).

Specifying if a Balance Impact is Discountable

When creating a balance impact, you can specify if it is discountable in a bundle. By default, balance impacts are discountable.When a charge type is discounted in a bundle, the discount applies to all instances of the charge type that are discountable.For example, you might have a charge offer that charges for two cycle events. You charge a monthly fee for one event, and you grant included minutes for the other event. If you specify a percentage discount for cycle charges in the bundle, the discount applies to both cycle charges.To discount only the monthly fee, you must make the balance impact for the monthly fee discountable and the balance impact that grants included minutes nondiscountable.

About Minimum Charges

You can set a minimum charge for each balance element impacted by a pricing instance. Minimum charges are configured per price tier (see "About Defining Pricing Based on Multiple RUMs") and effective period.

If you define different minimum charges in different price tiers for the same balance element, the largest minimum charge is used during rating. For example, if one step defines a minimum charge of $2 and another a minimum charge of $1, $2 is used.

When multiple price tiers are applied to a charge, the minimum price is applied if the total of the charges does not meet the minimum charge. It is not applied for each of the price tiers if they each do not meet the minimum charge.

About Conditional Balance Impacts

A conditional balance impact is a balance impact that credits or debits a customer's balance only when the customer uses a charge offer for the first time within a specified period; for example, the first time in a day or the first time in two days. For example, you can use conditional balance impacts to grant daily included minutes to a customer, instead of using recurring events.

You can align the start time of the conditional balance impact period with the start time of the associated charge offer, the start of a calendar day, or the event occurrence. You can also specify whether the balance is available from the start time of the period or from the time the event occurs.

Conditional balance impacts can only be used with charge offers that are associated with a service, not with the charge offers associated with an account.

The following example shows how to configure conditional balance impacts for granting daily included minutes.

In this example:

  • The customer is granted 40 included minutes at $5 per day.

  • The included minutes are valid for a day.

  • The customer is not charged on the days that the offer is not used.

To configure conditional balance impacts for granting daily included minutes:

  1. Create a RUM of type Conditional for the desired service and usage event. See the discussion about creating a new RUM configuration in the PDC Help.

    Figure 10-3 shows a RUM of type Conditional.

    Figure 10-3 New Rum Configuration

    Description of Figure 10-3 follows
    Description of "Figure 10-3 New Rum Configuration"
  2. Create a charge offer. See the discussion about creating a charge offer in the PDC Help.

  3. Add a new charge to the charge offer. When you add the charge, ensure that you select the following values:

    Charge Category: Usage

    Pricing Profile: Convergent Usage

    Measured By: The RUM that you created in step 1. Optionally, you can select additional RUMs.

    See the discussion about adding a new charge in the PDC Help.

  4. Configure conditional balance impacts to grant 40 minutes at $5 per day on the days the charge offer is used.

    Figure 10-4 shows the conditions configured for granting daily included minutes.

    Figure 10-4 Conditions for Granting Daily Included Minutes

    Description of Figure 10-4 follows
    Description of "Figure 10-4 Conditions for Granting Daily Included Minutes"

    Figure 10-5 shows the validity period for the conditional balance impact.

    Figure 10-5 Validity Period for a Conditional Balance Impact

    Description of Figure 10-5 follows
    Description of "Figure 10-5 Validity Period for a Conditional Balance Impact"

    Figure 10-6 shows the conditional balance impacts used in this example for granting daily included minutes.

    Figure 10-6 Conditional Balance Impacts for Granting Daily Included Minutes

    Description of Figure 10-6 follows
    Description of "Figure 10-6 Conditional Balance Impacts for Granting Daily Included Minutes"

About Prorating Charges

You can specify to not prorate a recurring charge when proration is enabled in the charge offer itself. The proration settings are specified in the charge offer; this option only enables or disables proration for each recurring charge.

Configuring Dynamic Charging for One-Time and Recurring Events

You can configure PDC to dynamically change one-time and recurring fees per customer based on the date. For example, when a customer purchases a product, you could charge a default amount of $50, but charge $45 in June and $40 in July.

You set up your system to dynamically change one-time and recurring fees by doing the following:

  • Creating a pricing tag and specifying the event type, date ranges, and amount associated with it. For example, you could create a pricing tag named Price1 that is associated with the following:

    • Event type: /event/billing/product/fee/purchase

    • Date range: January 1, 2025 through February 3, 2025

    • Amount: $75

    BRM stores the pricing tag data in /offering_override_values objects.

  • Adding the pricing tag, such as Price1, to the balance impacts in your one-time and recurring charges.

When rating events, PDC determines whether the pricing tag in a balance impact matches a pricing tag and date range combination defined in the account's /offering_override_values object. If it does, PDC charges the amount associated with the pricing tag. If it does not find a match, PDC charges the default amount.

To dynamically change one-time and recurring fees, do the following:

  1. Define each pricing tag and its event type, time frame, and rate. To do so, customize your third-party client application to call the Create Override Charges for Offer endpoint in the Billing Care REST API.

    For more information, see "REST API Reference for Billing Care".

  2. Add a pricing tag to a balance impact by using one of the following:

    • PDC.

      When adding a balance impact to a one-time or recurring charge, click the Price Tag icon and then enter a pricing tag name in the Price Tag dialog box. For more information, see "Adding Pricing Tags for One-Time and Recurring Charges" in PDC Online Help.

    • The ImportExportPricing utility.

      For each one-time or recurring charge defined in your import XML file, add the <priceTag> element and include the following elements underneath it:

      • <attributeName>: The name of the attribute.

      • <tagName>: Set this to a unique pricing tag name.

      • <tagScope>: Set this to EVENT_PROFILE.

      • <description>: Set this to a description of the pricing tag name.

      This shows an example of a pricing tag named PriceTag1 added to a one-time charge:

      <oneTimeCharge>
         <price>199.00</price>
         <unitOfMeasure>NONE</unitOfMeasure>
         <balanceElementNumCode>840</balanceElementNumCode>
         <discountable>true</discountable>
         <priceType>CONSUMPTION</priceType>
         <impactType>SCALED</impactType>
         <priceTag>
            <attributeName>price</attributeName>
            <tagName>PriceTag1</tagName>
            <tagScope>EVENT_PROFILE</tagScope>
            <description>Description for OneTime PT 199.00</description>
         </priceTag>
      </oneTimeCharge>

For information on importing the pricing XML file into the PDC database, see "Importing and Exporting Pricing and Setup Components".

Configuring Dynamic Pricing for Usage Events

Dynamic pricing allows you to override the price specified in the product offerings at run time.

To override the price, you create a pricing XML file with dynamic tags and import the file into the PDC database by using the ImportExportPricing utility.

Dynamic tags are the XML elements that are used for overriding the value of the pricing attributes. Oracle Communications Elastic Charging Engine (ECE) uses these attributes to determine the price when processing a usage event.

Note:

Ensure that you create a unique dynamic tag across multiple charge offers since the tags are not scoped to charge offers at run time.

Dynamic tags are used for different pricing within a rate plan. PDC provides a sample XML file for dynamic tags in the PDC_home/apps/Samples/Examples directory, where PDC_home is the directory in which you installed PDC. The dynamic tag (priceTag) consists of the following fields:

  • attributeName. The name of the attribute. The value of the attribute is dynamically determined during rating.

  • tagName. The unique identifier of the dynamic tag.

  • tagScope. The scope of the dynamic tag. Following are the available tag scopes:

    • EVENT_PROFILE

    • PRODUCT_PROFILE

    • CUSTOMER_PROFILE

    Note:

    Only the EVENT_PROFILE tag scope is supported for charges with the Convergent Usage pricing profile.

  • Description. (Optional) The description of the dynamic tag.

For example:

<fixedCharge>
     <price>20.0</price>
     <unitOfMeasure>NONE</unitOfMeasure>
     <balanceElementNumCode>840</balanceElementNumCode>
     <discountable>true</discountable>
     <priceType>CONSUMPTION</priceType>
     <priceTag>
          <attributeName>price</attributeName>
          <tagName>PRICE_TAG_FIXED_PRICE</tagName>
          <tagScope>EVENT_PROFILE</tagScope>
     </priceTag>
 </fixedCharge>

In this example, the default price is 20.0. This is used by default if an overriding price is not specified.

For information on importing the pricing XML file into the PDC database, see "Importing and Exporting Pricing and Setup Components".

For information on enabling ECE to override the default value of the pricing attributes at run time, see "Pre-Rating Extension - Overriding Price in Product Offerings" in ECE Implementing Charging.