6 Configuring Balance Queries

You can configure third-party clients to query Oracle Communications Elastic Charging Engine (ECE) for balance information.

Topics in this document:

Integrating Balance Query clients

You can write client applications to query data in ECE, such as query the login and password information of a customer, or query the customer's account balance.

ECE returns the balance element ID of each balance in the ECE balance query response. ECE returns the balance element ID of balances for both SUMMARY and DETAILED balance query modes. Client applications could use this information, for example, when customer balances are stored in multiple subscriber profile repositories and it is required to map the balances between the repositories.

To use the query APIs:

  • For the ECE authentication and query API: oracle.communication.brm.charging.messages.query

  • For the ECE PriceEnquiry of the charging API: oracle.communication.brm.charging.brs and oracle.communication.brm.charging.messages

For information about running sample programs that demonstrate how to use the ECE query APIs, see "ECE Sample Programs".

About Sending Authentication Queries

Use the authentication API to query the login and password of subscribers.

Use the login and password information for:

  • Implementing authentication methods outside of the ECE charging server

  • Enabling subscribers to validate their login and password credentials against a charge offer to which they are subscribed

About Sending Balance Queries

Use the balance API to query subscriber balances.

Use the subscriber balance for:

  • Making policy decisions

  • Sending the balance information to subscribers so they can monitor their network-usage expenses, validate their credit limit, or monitor their active reservation

ECE returns the balance element numeric ID of each balance in the ECE balance query response. ECE returns the balance element numeric ID of balances for both SUMMARY and DETAILED balance query modes. Client applications could use this information, for example, when customer balances are stored in multiple subscriber profile repositories and it is required to map the balances between the repositories.

ECE returns grantor information in the ECE balance query response for DETAILED balance query mode. Grantor information consists of the Grantor ID and the Grantor Type. The different grantor types include purchased charge offerings, purchased alteration offerings, charge offerings, and alteration offerings.

Configuring Debit Request History

For a debit request, ECE returns a correlation ID in the usage response and stores the correlation ID in a debit map for each charge offer. If a refund request is later received for the debit request, ECE uses the correlation ID to validate the refund request (refund requests are valid only when they are associated with a debit request correlation ID).

The debit request information in the debit map is transient data and you can configure the number of debit requests to be retained per charge offer. By default, debit request information is stored for ten debit request operations (for each charge offer) at any given time. For example, if the debit map contains ten entries and a new debit request is received, the entry for the oldest debit request is deleted from the debit map, and an entry for the new debit request is added.

To configure the debit request history:

  1. Access the ECE configuration MBeans in a JMX editor, such as JConsole. See "Accessing ECE Configuration MBeans".

  2. Expand the ECE Configuration node.

  3. Expand charging.server.

  4. Expand Attributes.

  5. Set the debitRefundSessionEvictionSize attribute to the maximum number of debit requests to log in the debit map at one time.

    This is the number of debit requests to keep in history so that refunds can be made against them.

About the Balance API

Use the balance API to query subscriber balances.

Use the subscriber balance for:

  • Making policy decisions

  • Sending the balance information to subscribers so they can monitor their network-usage expenses, validate their credit limit, or monitor their active reservation

When building a balance query request, you have the option to use the following balance query modes to restrict the contents of the balance query response that ECE returns:

  • SUMMARY: The balance query response contains only the total balance at the balance element level.

  • DETAILED: The balance query response contains the detailed balance for each of the balance elements; this includes balance element specification information (such as credit limits) as well as reservation information (such as the active and consumed reservation).

The balance query response mode you use may impact the overall performance of your system.

For details about the balance API, see the documentation for oracle.communication.brm.charging.messages.query in Elastic Charging Engine Java API Reference.