2 About Settling Roaming Charges

This chapter describes how settlement events for roaming charges are created and managed in Oracle Communications Billing and Revenue Management (BRM).

Before reading this document, you should be familiar with:

About Settlement Events

The settlement process creates settlement events with incollect roaming charges and outcollect roaming charges.

The settlement process stores incollect and outcollect settlement event records as individual events in the BRM database. This provides the following advantages:

  • It gives you the ability to include the event details along with the aggregated total roaming charges when you bill or invoice your roaming partner network operators.

  • It gives you the ability to generate reports based on the information stored in the settlement events.

  • It gives you the ability to audit and analyze the event data and generate financial reports.

When you run billing, BRM billing opcodes read the settlement event data and generate a bill for the total incollect charge amount (what you owe) and another bill for the total outcollect charge amount (what they owe). The amount that you owe your roaming partner network operator is the difference between the two.

How Settlement Events Are Created

Settlement events are created and used to bill and settle charges with your roaming partners.

How Settlement Events for Incollect Roaming Charges Are Created

Using the information in the validation pipeline output file, the incollect settlement pipeline creates settlement events that are loaded into the BRM database and used to settle charges with your roaming partners.

The incollect settlement pipeline processes the input file as follows:

  • The input module maps the contents of the file into an EDR container. For each EDR, it creates a DETAIL.ASS_ROAMING_EXT block and populates the SENDER and RECIPIENT fields. The sender is the network carrier (roaming partner) sending the TAP file and the recipient is the network carrier receiving the TAP file. Information stored in this block is used later by the pipeline to identify the roaming partner account information in the BRM database.

  • The ISC_ConsolidatedCP module removes all non '00' impact_category charge packets.

    The TAP input grammar creates individual charge packets as well as consolidated charge packets. However, the FCT_BillingRecord module considers all charge packets for creating balance packets. For this reason, the individual charge packets (non ’00' impact category charge packets) are removed and only consolidated charge packets are considered so that the balance amounts in the balance packets are correct.

    This module also assigns the G/L Id to each consolidated charge packet based on the GL_CODE registry entry.

  • The FCT_ServiceCode module maps external service codes to internal service codes.

    The FCT_ServiceCode module maps all external service codes to /service/roaming/settlement/incollect in the BRM database.

  • The FCT_Account module uses the network operator account information in the pipeline in-memory cache to lookup the BRM account and associates the EDR with the BRM account and enriches the EDR with information related to the account service, product, and bill. For information about setting up network operator accounts, see "Defining Roaming Partner Accounts in the BRM Database".

  • The FCT_ItemAssign module assigns the bill item associated with the roaming partner account's incollect service to the EDR.

  • The FCT_ExchangeRate module converts the charge amount in the charge packets, which is usually in SDR currency, to the subscriber's billing currency.

  • The FCT_BillingRecord module creates the balance impact information from the charge amount provided in the EDR and associates this impact to the bill item. Balance impact information will contain the resource name, charge amount, bill item, and service information.

After the EDRs are enriched, the FCT_EnhancedSplitting module routes the EDRs to GPRS and GSM output streams. You use RE Loader to load the events into the BRM database. See "How Settlement Events Impact Roaming Partner Account Balance".

If there is any error in the settlement pipeline, the entire input file is suspended. See "About Handling Suspended Settlement Events".

How Settlement Events for Outcollect Roaming Charges Are Created

Using the information in the outcollect TAP files, the outcollect settlement pipeline creates settlement events that are loaded into the BRM database and used for billing your roaming partners.

The outcollect settlement pipeline processes the outcollect TAP file as follows:

  • The input module converts the outcollect TAP file back to EDR format and maps the TAP data to staging fields in the EDR container by using TAP input grammar.

  • The ISC_TAP_0312_InMap module maps the data in the staging fields to business fields in the EDR container. For each EDR, it creates a DETAIL.ASS_ROAMING_EXT block and populates the SENDER and RECIPIENT fields - The sender is the network carrier sending the TAP file and the recipient is the network carrier (roaming partner) receiving the TAP file. Information stored in this block is used later by the pipeline to identify the roaming partner account information in the BRM database.

  • The ISC_ConsolidatedCP module removes all non '00' impact_category charge packets.

    The TAP input grammar creates individual charge packets as well as consolidated charge packets. However, the FCT_BillingRecord module considers all charge packets for creating balance packets. For this reason, the individual charge packets (non ’00' impact category charge packets) are removed and only consolidated charge packets are considered so that the balance amounts in the balance packets are correct.

    This module also assigns the G/L Id to each consolidated charge packet based on the GL_CODE registry entry.

  • The FCT_ServiceCode module maps external service codes to internal service codes.

    The FCT_ServiceCode module maps all external service codes to the /service/roaming/settlement/outcollect in the BRM database.

  • The FCT_Account module uses the network operator account information in the pipeline in-memory cache to lookup the BRM account and associates the EDR with the BRM account and enriches the EDR with information related to the account service, product, and bill. For information about setting up network operator accounts, see "Defining Roaming Partner Accounts in the BRM Database".

  • The FCT_ItemAssign module assigns the bill item associated with the roaming partner account's outcollect service to the EDR.

  • The FCT_ExchangeRate module converts the charge amount in the charge packets to SDR currency.

  • The FCT_BillingRecord module creates the balance impact information from the charge amount provided in the EDR and associates this impact to the bill item. Balance impact information will contain the resource name, charge amount, bill item, and service information.

After the EDRs are enriched, the FCT_EnhancedSplitting module routes the EDRs to GPRS and GSM output streams. You use RE Loader to load the events into the BRM database. See "About Loading Settlement Events into the BRM Database".

If there is any error in the settlement pipeline, the entire outcollect TAP file is suspended. See "About Handling Suspended Settlement Events".

After the settlement pipeline has successfully processed the outcollect TAP file, it generates a corresponding TAP Header Information file that stores lookup information. TAP files maintain a Lookup Directory for some items in the callEventDetails block, that specifies the item value.

For example, a callEventDetail specifies callEventStartTimeStamp by using two fields: LocalTimeStamp and UtcTimeOffsetCode. UtcTimeOffsetCode is a numeric code that points to the NetworkInfo->UtcTimeOffsetInfo entry in the Lookup Directory that specifies UtcTimeOffset value.

Any required lookup information such as UTC Time Offsets is written to the TAP Header Information file. This lookup information is later used by the RAP processing pipeline to reconstruct and reprocess the rejected TAP records. Based on the constructed rejected TAP records, the RAP processing pipeline generates the corresponding settlement backout record. See "About Processing Rejected Outcollect TAP Files and Records".

How Settlement Events Impact Roaming Partner Account Balance

Each roaming partner account in the BRM database is configured with two products, one for incollect settlement and another for outcollect settlement: for example, RoamingIncollect and RoamingOutcollect. The /service/settlement/roaming/incollect service is selected for the RoamingIncollect product and /service/settlement/roaming/outcollect service is selected for the RoamingOutcollect product. Each product is assigned a separate balance group and the balance groups are assigned separate bill units.

When incollect settlement events are loaded into the database, they are associated with the /service/settlement/roaming/incollect service and impact the bill unit for this service. The outcollect settlement events are associated with the /service/settlement/roaming/outcollect service and impact the bill unit for this service.

You create roaming partner accounts in Customer Center. For information on setting up roaming partner accounts, see "Setting Up Roaming for TAP".

For information about billing, see "About Billing" in BRM Configuring and Running Billing.

About Loading Settlement Events into the BRM Database

The incollect and outcollect settlement pipelines send settlement events to separate output streams based on the event type. The output files are generated using the RE Loader output grammar. RE Loader reads the output file and loads each event as an object into the BRM database.

For example, the GSM events are loaded into the /event/delayed/session/telco/gsm/roaming object and the GPRS events are loaded into the /event/delayed/session/telco/gprs/roaming object.

The event object contains the roaming partner account and billing information.

Incollect settlement events are stored against the /service/settlement/roaming/incollect service object of the roaming partner account. As a result, all charges for incollect roaming events impact the roaming partner's bill unit associated with the /service/settlement/roaming/incollect service.

Outcollect settlement events are stored against the /service/settlement/roaming/outcollect service object of the roaming partner account. As a result, all charges for outcollect roaming events impact the roaming partner's bill unit associated with the /service/settlement/roaming/outcollect service.

For outcollect settlement events, RE Loader also creates a statistical record using the outcollect TAP file and stores the record in the /batch/rel object. This record contains the file name, sequence number in the header of the file, number of events in the file, and other information. Each /event/delayed/session/telco/gsm/roaming and /event/delayed/session/telco/gprs/roaming object created from the output file includes a link to the /batch/rel object. The information stored in the /batch/rel object is used to back out balance impacts of TAP records during RAP file processing.

After the events are loaded into the BRM database, you can run BRM billing to generate invoices and to settle the roaming charges with your roaming partners.

To configure RE Loader, see "Configuring Rated Event Loader to Load Settlement Events into the BRM Database".

About Handling Suspended Settlement Events

It is possible for processing errors to occur in the settlement pipeline; for example, when the pipeline fails to associate the EDR with a roaming partner account.

The ISC_RollbackSettlement module checks for errors in the EDR. When there is an error, it notifies the Transaction Manager (TAM) to roll back the transactions in the settlement pipeline. The TAM then notifies the FCT_BatchSuspense module to suspend the entire input file. FCT_BatchSuspense creates a batch file that contains the input file name, location of the file, reason code specifying the reason the file was suspended, pipeline name specifying the pipeline that suspended the file, and the EDRs in the input file. This file is loaded into the BRM database by using SB Loader.

Using Suspense Management Center, you can query the suspended file and resubmit the file for processing. When the Pipeline Manager receives the resubmit request, the DAT_ResubmitBatch module routes the file back to the settlement pipeline that originally suspended the file for processing again.

For detailed information about batch suspense, see "About Suspense Manager" in BRM Configuring Pipeline Rating and Discounting.

For more information about the TAM, see "About Pipeline Manager Transactions" in BRM System Administrator's Guide.

To configure Suspense Manager for settlement, see:

About Validating the Bill Amount

You can perform a rate plan check on the TAP files received from your roaming partner network operators to validate them against the rate plans in the appropriate roaming agreement.

After incollect settlement events have been loaded into the BRM database, you can run billing, which will generate a bill for the incollect roaming charges. Use the information on this bill to validate the invoices issued by your roaming partner network operators.