3 Overview of Charging

Learn about Oracle Communications Billing and Revenue Management (BRM) charging.

Topics in this document:

For information about creating pricing components, see PDC Creating Product Offerings.

For information about setting up charging, see ECE Implementing Charging.

About Charging

In BRM, charging follows these steps:

  1. Capturing an event, such as a phone call.

  2. Rating the event to calculate how much to charge for it.

  3. Recording the charge in the account's balance. The charge applied to the balance is called a balance impact.

Configuring charging requires:

  • Creating your product offerings in Pricing Design Center (PDC). Product offerings define how you sell services to customers. For example, an International VOIP package could include a monthly charge and usage charges for international VOIP calls.

    If you are using Pricing Center to create your pricing components, see Pricing Center Help.

  • Configuring charging in Elastic Charging Engine (ECE) and in the BRM server. For example, you can configure how to manage prepaid sessions.

    If you are using Pipeline Manager for rating and discounting events in batch and real-time, see "About Pipeline Rating" in BRM Configuring Pipeline Rating and Discounting.

BRM performs two general types of charging:

  • Usage charging charges for service usage, such as phone calls and data downloads.

  • Subscription charging charges recurring fees, such as a monthly subscription fee; and one-time fees, such as a purchase fee or cancel fee.

The product offerings you create can include both types of charges. It is common for a charge offer to include usage charges and recurring charges. The differences are:

  • Usage charging is performed by ECE. Usage charging can be rated by measuring the duration of an event or by recording the occurrence of an event, (and by other properties of the event, such as the location of the call origin and destination).

  • Subscription charging is performed by the BRM server. Subscription charging includes recurring charges and one-time charges.

How Charging Works

To charge for an event, BRM performs the following actions:

  1. Measures the event based on the information in the applicable charge offer. For example, it might measure the duration of a phone call in minutes, or a data download in megabytes.

  2. Applies a charge to the resulting measurement based on specifications in the product offering.

  3. Adds the charge to the customer's account balance.

To charge for events, BRM requires the following types of data:

  • Data about the event being charged

  • Data about the customer's balance

  • Data about product offerings that the customer owns

How Charging Uses Event Data

An event is an online action, such as a phone call, an SMS message, or a data download. Data about the event, such as when it occurred, is rated by ECE and then recorded in the BRM database. For example, when a customer makes a phone call, an event is generated that contains information about that phone call, such as the date and time the call was made, the origin and destination of the call, and the date and time the call ended. An event can also be system-generated, such as monthly subscription fees that are applied to accounts. BRM uses the data it collects about events to calculate how much to charge customers for them.

When you configure charging, you specify which events you want to charge for, for each service. You can then apply a different charge for each type of event. For example, you can apply a charge for a data download event, and a charge for a call event.

To rate an event, BRM must measure it, and then determine the charge based on event attributes. To enable BRM to measure events, you configure ratable usage metrics (RUMs), which specify the units to measure and how to calculate the measurement.

Common RUMs are:

  • Duration: Length of an event in units such as seconds or minutes.

  • Occurrence: Number of events generated during a specified period.

  • Volume: Size of an event in units such as kilobytes or megabytes.

Typically, a single RUM is used to measure an event. But you can also use multiple RUMs to measure an event. For example, you could charge for the occurrence of a video download, as well as charging an amount based on the duration.

After measuring an event, your system must apply a charge to the measurement. To determine the charge to apply, you can use event attributes such as:

  • Date and time that the event occurred, for example, different charges for peak time and off-peak time

  • Origin and destination of a call, for example:

    • If the call destination is France, use the Calls to Europe charge.

    • If the call destination is Ghana, use the Calls to Africa charge.

  • Type of movie downloaded, such as classic, action, or comedy

  • Quality of service, such as standard or premium

  • The measurement of the event itself; for example, you can charge 10 cents per minute for the first 10 minutes and 5 cents per minute for any time over 10 minutes.

How Charging Uses Balance Data

Customer balance data can be used for quantity-based rating, and for managing online charging. For example:

  • You can manage prepaid calls based on the customer's balance. For example, you can specify a threshold at which a customer is notified that the remaining prepaid balance is almost zero.

  • You can track the quantity of events consumed and charge accordingly. For example, you can charge one dollar for the first files downloaded, 50 cents for the next 95 files, and nothing after the 100th file.

  • You can change how a customer's service is implemented based on balance data. For example, you can automatically increase a customer's quality of service when their balance reaches a specified amount. This is known as policy-driven charging. You define the policies that govern how a service can be implemented based on the customer's service usage and balance.

  • You can configure chargeshare offers to share balance impacts among users. This allows customers to share charges and discounts.

Balances are organized by different types of balance elements. A balance element represents one of the following:

  • A currency or noncurrency asset of economic value, such as U.S. dollars or included minutes

  • A counter that tracks items such as dollars spent or minutes talked

Note:

In previous BRM releases, a balance element was called a resource.

Balance elements are specified when you configure pricing in a charge. They define which balance assets are increased or decreased when the charge is used to rate an event. For example, a charge of one dollar per minute for a phone call affects the U.S. dollars balance.

How Charging Uses Product Offering Data

When a customer purchases a service such as a mobile telephony service, they purchase a package that you create in PDC. A package bundles one or more charge offers and/or discount offers. Each offer defines the charges for usage events, such as a phone call, subscription events, and purchase events.

After a customer purchases a package, they own the charge offers that they purchased. ECE uses the charges defined in each customer's offers to determine how much to charge. If a customer changes their offers, their usage is rated according to the charges defined in the new offers.

BRM keeps track of the offers that each customer owns, in the BRM database, and synchronized in ECE. When an event is rated, ECE (for usage charging) and the BRM server (for subscription charging), use the charges defined in the customer's purchased offers to calculate the balance impact of the charges.

For example, if a charge offer includes a monthly recurring fee and usage charges for phone calls:

  • The BRM server looks in the BRM database to find out how much to charge for the recurring charge.

  • ECE looks in the ECE cache to find out how much to charge for usage.

Product offerings define everything about how to charge for an event. An event is simply a set of data; how to charge for that data is defined in your product offerings.

If you use Pricing Center to create your product offerings, rating is done through Pipeline Manager. For more information, see Pricing Center Help and BRM Configuring Pipeline Rating and Discounting.

About Usage Charging

All usage charging is performed by ECE. There are two types of usage charging:

  • Online charging rates events in real-time, such as during a prepaid call.

  • Offline charging is used for batch rating of events, typically from post-paid telephone usage.

For both online charging and offline charging, ECE receives events as usage requests. Usage requests contain the event data that ECE needs for rating. For example, to rate a phone call, ECE needs the number that made the call, the start time, and the end time.

When ECE receives a usage request, it uses the data in the usage request, typically the phone number, to identify the customer, which in turn identifies the charge offer that they own that is used to rate the event. In addition, the usage request includes the data needed for rating, such as the start and end times of the event.

Each type of service and event needs to be rated differently. For example, some events are rated by measuring duration, and some by measuring volume. When you configure events and services, you create event definitions that specify the data needed for charging the event. The event definitions are sent to ECE, and are stored in an ECE cache. For each incoming event, ECE uses the event definition to choose a usage request builder that creates the usage request.

A default set of event definition data is installed with ECE. If you create custom services and events, you can enrich event definitions in PDC and create customized event definitions.

Usage requests are created when network mediation clients submit data to the ECE Client:

  • For online charging, a real-time online event, such as a prepaid call, is routed from the network to the Diameter Gateway, which uses the ECE Client to create a usage request. ECE processes the usage request, authorizes the call, and sends a usage response back to the Diameter Gateway. As the call is in progress, ECE also manages the interaction with the network for handling update requests, re-authorizations, and top-ups. After the call has ended, ECE rates the call.

    In addition to prepaid calls, online charging can be used for any service that the subscriber connects to and uses in real time, such as broadband access, digital content, streaming radio, and cable television.

  • For offline charging, call detail records (CDRs) are processed by Offline Mediation Controller, which handles mediation tasks and normalization. Offline Mediation Controller acts as an ECE client application to create a usage request, which ECE uses to rate the events.

    Offline charging is used for batch rating of events, typically from post-paid telephone usage. Offline Mediation Controller performs mediation and normalization tasks, such as checking for duplicate calls and assembling calls that arrive in multiple records.

After an event is rated, ECE sends the rated event data to the BRM database, and the customer's balance is updated in both ECE and in the BRM database. The same process is used for loading online charging events and offline charging events.

About Online Charging

The following procedure describes how ECE typically processes a usage request for online charging.

  1. The Diameter Gateway receives charging events from the network.

  2. The Diameter Gateway creates a usage request.

  3. ECE calculates the charge of the event. For prepaid calls, ECE can perform the following tasks:

    • Calculate the cost of the call and compare it to the amount available in the customer's balance.

    • Send a usage response to the network to either allow the call to start, or to inform the network that the customer's balance is too low to make the call.

      A usage response can contain an in-session notification about the active customer session. For example, ECE can send an in-session notification about a customer's credit limit threshold breach information. The network mediation system can use the data from the in-session notification for sending a message to the customer.

    • Send notifications to the network when a customer's balance needs to be topped up.

    • Update the customer balance as balance elements are consumed.

  4. When the call ends, ECE updates the customer's balance and sends a record of the event to the BRM database.

During online charging, ECE communicates with the network components through the Diameter Gateway to manage update requests, re-authorization requests, balance queries, and top-ups. You can also use online charging to manage the following functions:

  • Policy-driven charging. You can change a customer's network configuration based on their service usage. For example, you can track the amount of data that a customer downloads and change their download speed when the amount of usage reaches a threshold amount.

  • Multiple Services Credit Control (MSCC). When multiple services are used within the same user session, ECE can calculate the charge for each service separately.

  • Server-initiated re-authorization requests. Re-authorization requests are typically generated by the network at regular intervals, but you can configure ECE to initiate a re-authorization request when a change occurs in a customer's account or balance data that might cause an in-session even to be charged different.

  • Advice of Charge (AoC). ECE can use AoC to tell a customer about the charge for a service at the beginning of a session, during a session or at the end of a session.

  • Advice of Promotion (AoP). ECE can use AoP to notify a customer that a better price could be obtained for the service they are about to use if they use the service at a different time.

About Offline Charging

Offline charging is used for batch rating of events, typically from post-paid telephone usage. Offline Mediation Controller performs mediation and normalization tasks, such as checking for duplicate calls and assembling calls that arrive in multiple records.

The following procedure describes how ECE typically processes a usage request for offline charging.

  1. Offline Mediation Controller collects charge detail records (CDRs). Depending on the type of service, the records can be in files, or can be received directly from a network application.

  2. Offline Mediation Controller converts the event records into its own format, and performs processing such as duplicate checking and aggregation.

  3. Offline Mediation Controller sends the records to ECE as usage requests.

  4. ECE calculates the charges based on the request attributes. ECE supports debit and refund operations for which the charges are passed in the input.

    If ECE detects errors (for example, it does not find a valid offering for charging for the request), then it rejects the request. It sends a negative usage response to Offline Mediation Controller which then rejects the CDR.

  5. ECE manages the current state of customer balances within the charging system so that it is synchronized with the balance information in BRM.

Offline Mediation Controller performs several mediation and normalization tasks:

  • Checks for duplicate records and duplicate input files.

  • Ensures that records and files are processed in the correct order (called sequencing).

  • Suspends failed records and recycles them after they have been corrected.

  • Aggregates records to manage charging more efficiently. For example, you can aggregate records by time or by volume.

  • Enhances and normalizes data, for example:

    • Mask social numbers that customers do not want on their bill.

    • Normalize number prefixes.

    • Map multiple service codes into a single service code.

  • Filter records based on data in the records, for example, discard records from specified APNs.

For more information about preparing records for offline charging, see Offline Mediation Controller User's Guide.

About Subscription Charging

Subscription charging is performed by the BRM server. These charges are always based on the occurrence of an event generated by the BRM server, or an event triggered by changes to a customer's product offerings. For example:

  • When you run billing, BRM creates events that trigger recurring charges, such as a monthly service fee.

  • When a customer purchases a charge offer, BRM can charge a purchase fee.

  • When a customer cancels a charge offer, BRM can charge a cancelation fee.

As with usage charges, subscription charges are defined in the product offerings that a customer purchases. For example, when a customer purchases a charge offer that includes a recurring charge, the charge offer defines the following:

  • The amount to charge

  • How often to charge (for example, monthly or yearly)

  • If the charges should be prorated if the charge offer is valid for only part of the time charged for.

Recurring charges are based on cycles; for example, a monthly recurring charge has a one-month cycle. Therefore, recurring charges are often referred to as cycle charges or cycle fees.

Note:

Because you can define recurring charges to use any length of cycle, you need to consider the impact of revenue recognition in general ledger (G/L) reports. For example, if a customer pays a monthly fee in advance for the following month, that fee cannot be included as earned revenue until the end of that month.

There are three types of recurring charges:

  • A cycle forward charge applies a charge in advance, such as a monthly charge applied at the beginning of the month.

  • A cycle arrears charge applies a charge to the previous month, such as a monthly charge applied at the end of the month.

  • A cycle forward arrears charge applies a charge at the end of the month, but the balance impact is recorded at the beginning of the month. The customer is not charged until the end of the month, but the balance impact is made at the beginning of the month, and can be recognized as unearned revenue at the beginning of the month.

About Product Offerings

You create product offerings to define the services you offer and how much to charge for those services. BRM uses the charges defined in the product offerings to determine how much to charge for the use of your services. You can use the following types of charges:

  • Usage: Charges for the use of a service, such as telephone calls or broadband sessions.

  • Recurring: Ongoing charges that are not generated or affected by usage, such as a monthly subscription fee.

  • One-time: Nonrecurring charges, such as setup or cancellation fees.

  • Rollover: Charges that extend the validity of unused balances to succeeding cycles. For example, included minutes are often rolled over.

  • Fold: Charges used to zero-out a balance or convert one balance into another. For example, you could configure a fold charge to convert frequent flyer miles to a dollar amount.

Product offerings in PDC are represented in the following pricing components.

Note:

Pricing Center uses different terms for these pricing components. In Pricing Center, product offerings are called price lists, bundles are called deals, and packages are called plans. For more information, see Pricing Center Help.
  • Charge Offers and Discount Offers: Define how to charge for a service. For example, a charge offer for a mobile phone service might include criteria for calculating the following charges:

    • A setup charge

    • A monthly subscription charge

    • Usage charges for phone calls

    A discount offer for a mobile phone service might include criteria for calculating the following discounts:

    • 50% off the monthly charge for the first 6 months

    • 25% off for usage over 750 minutes

    • Reduction in usage charges if the subscriber has included minutes

  • Bundles: Contain one or more charge offers, discount offers, or both. You can reuse charge offers and discount offers in multiple bundles.

    For example, you might mix and match charge offers and discount offers for a mobile phone service to create the following bundles:

    • Bundle A: Basic Voice

      • Charge Offer A: $300 setup fee

      • Charge Offer B: $50 monthly fee

      • Charge Offer C: $0.50 per minute for all minutes over 300 per month

      • Discount Offer A: 25% off usage over 750 minutes per month

    • Bundle B: Promotional Voice

      • Charge Offer A: $300 setup fee

      • Charge Offer D: $20 monthly fee

      • Charge Offer E: $1 per minute for all minutes over 300 per month

      • Discount Offer A: 25% off usage over 750 minutes per month

      • Discount Offer B: No setup fee if the service is purchased before a specified date

      • Discount Offer C: 50% off monthly fee for the first 6 months

    All offers in a bundle must be associated with the same service.

  • Packages: Contain one or more bundles. You use packages to offer services to customers. To subscribe to your services, a customer purchases a package.

    For example, if your company provides broadband access and VoIP (voice over Internet protocol), you might create the following packages:

    • A package that offers only broadband access. This package would contain one or more broadband access bundles, such as a high-speed broadband access bundle and a mobile broadband access bundle.

    • A package that offers only VOIP. This package would contain one or more VOIP bundles, such as a standard calling bundle and an international calling bundle.

    • A package that offers broadband access and VOIP. This package would contain at least one broadband access bundle and at least one VOIP bundle.

Figure 3-1 shows how product offerings are organized in BRM. To create product offerings, you start by creating charge offers and discount offers. You then organize them in bundles and packages.

Figure 3-1 Product Offerings Created in PDC

Description of Figure 3-1 follows
Description of "Figure 3-1 Product Offerings Created in PDC"

Figure 3-2 shows the hierarchy of pricing components. In this example:

  • The package offers two services: content download, and cloud-based storage.

  • Each service has a separate bundle.

  • Each bundle has a charge offer.

Figure 3-2 Product Offering Hierarchy

Description of Figure 3-2 follows
Description of "Figure 3-2 Product Offering Hierarchy"

About Implementing Charging

To implement charging, you need to configure and use several different BRM components. Assuming that BRM, ECE, and PDC are already installed, the overall process includes:

  • Plan your product offerings. This is usually done conceptually (for example, on a spreadsheet). Planning your product offerings reveals which events and services you need to charge for.

  • Create product offerings in PDC.

  • Configure ECE and the BRM server to keep customer data updated in ECE. This includes:

    • Configure event notification and account synchronization in the BRM server to send data to ECE.

    • Configure the Customer Updater in ECE to receive data from BRM. This configuration is performed when you install ECE.

  • Configure ECE and PDC to keep pricing data updated in ECE. This includes:

    • Configure PDC to send pricing data to ECE. To do so, you set up a JMS queue on a WebLogic server where PDC can publish pricing data for ECE and configure PDC to publish pricing data to the queue.

    • Configure the Pricing Updater in ECE to receive data from PDC. This configuration is performed when you install ECE.

  • Configure ECE to alert the BRM server about changes that need to occur, such as trigger billing for an account. This includes:

    • Configure the BRM Gateway to connect to a CM as a BRM client. This configuration is performed when you install ECE.

    • In ECE, configure the JMS queues that send data to the BRM Gateway. This configuration is performed when you install ECE.

  • Configure ECE for online charging. This includes:

    • Configure whether to send notifications to communicate with online charging clients, such as top-up clients and balance-query clients.

    • Configure charging rules and options, such as how to manage balance elements in a prepaid session.

  • Configure ECE for offline charging. This includes:

    • Configure the ECE nodes in Offline Mediation Controller.

    • Configure Offline Mediation Controller to send usage requests to the Elastic Charging Client.

  • Configure ECE to send rated events to BRM. This includes configuring the Rated Event Loader.

  • Configure ECE and the BRM server to enable rerating. This includes:

    • Configuring rerating in the BRM server to specify events that need rerating, and to send events to ECE for rerating.

    • Configure the ECE EM Gateway to receive events from BRM for rerating.

    • Configure the acknowledgement queue on the BRM server to receive messages from ECE.

  • Configure suspending and recycling events in Offline Mediation Controller and the BRM server.

To configure charging, see the following books:

  • See BRM Creating Product Offerings for information about creating packages, bundles, charge offers, and discount offers. This book is for pricing analysts who need to create product offerings.

  • See ECE Implementation Guide for information about configuring online and offline charging, rerating, and suspending and recycling events. This book is for users who implement and configure charging in a run-time environment.