Rating & Charging
Last updated 14 Oct 2026
At a glance
Rating works out what an event or a subscription period is worth. Charging applies that value: to a balance now (prepaid) or to the account for the next invoice (postpaid). The Online Charging System does both during the session and can refuse it. Rating executes catalog rules against Install Base context; it does not decide prices.
The picture
Rating determines the value; charging applies it. Online, the decision is made while the session waits.
1 · Request
Online
Credit-control request: 500 MB quota for a data session
Gy (4G) · Nchf (5G)
Offline
A prepared usage event from mediation, after the session
2 · Context
- Subscriber
- Account ACC-1001, home network
- Product held
- Mobile 10 GB plan (Install Base)
- Tariff
- Out-of-bundle rate per MB (catalog)
- Balance
- 10 GB allowance, 9.5 GB left
3 · Decision
- Consume from allowance
- Charge out of bundle
- Deny: credit exhausted
500 MB granted; 9.0 GB left once used
4 · Applied
Prepaid
Balance or allowance deducted now
Postpaid
Posted to the account for the next invoice
How it works
Three functions
| Function | What it does | Output |
|---|---|---|
| Mediation | Prepares usage (6.3) | A clean usage event with no price |
| Rating | Determines value from the product, tariff and discounts | A rated event: a price, or an allowance consumption |
| Charging / OCS | Applies the value; online, also controls the session | A balance deduction, an invoice line, or a refusal |
An event is rated once but may be charged in different ways depending on the billing model. In 3GPP mobile networks the network asks the OCS for quota over Diameter Gy (4G) or asks the CHarging Function (CHF), part of the converged charging system, over Nchf (5G). The OCS is required for prepaid and is also used for postpaid spend caps and fair-use control.
What a charging decision needs
Usage or session request
Mediation / networkOffline: a prepared usage event from mediation. Online: a credit-control request at session start and during it.
Subscriber
Subscriber / account dataWhich account and subscription, and where (home or roaming).
Product
Product Inventory / Subscription MgmtWhich product instances the customer holds: plan, add-ons, roaming pass. This is the Install Base view.
Tariff
Product CatalogRate per unit, time bands, destination zones and discounts for that product.
Balance / allowance
Balance managementWhat is left: a 10 GB allowance with 9.5 GB remaining, a €5 prepaid balance, a spend cap.
Decision
OCS / CHFGrant quota and continue, consume from the allowance, charge out of bundle, or deny because credit is exhausted. Written to the balance and, for postpaid, to the account.
Charge types
| Charge type | Trigger | Rating input | Example |
|---|---|---|---|
| Recurring | Billing cycle | Subscription from SLM, price from catalog | Monthly plan fee |
| Usage-based | Each call, session or SMS | Usage event from mediation, tariff from catalog | 12 min at €0.05/min = €0.60 |
| One-time | Activation, installation or order event | Order completion, fee from catalog | SIM activation fee |
| Penalty / adjustment | Contract breach, manual correction | Contract terms, SLA breach data | Early termination fee |
Real time, near real time, batch
- Batch: usage collected over the period and rated in bulk at bill run. Hours to days of latency, no in-session control; the customer sees charges only on the invoice.
- Real time (OCS): each event rated and charged immediately. Balance checks, spending limits, quota management and in-session policy. Required for prepaid; increasingly used for postpaid spend visibility.
- Near real time: rated within minutes, without in-session blocking. Used for postpaid spend alerts and threshold notifications.
Most operators run more than one of these, which is where integration complexity comes from.
Who owns what
| Entity | System of Record | System of Engagement | System of Reference | Notes |
|---|---|---|---|---|
| Tariffs, discounts and charge types | Product Catalog | — | Rating / OCS | TMF620. Rating executes them; a local copy in the rating engine drifts. |
| Products held by the subscriber | Product Inventory / Subscription Management | — | Rating / OCS | TMF637. Decides which tariff and allowance apply. |
| Balances, allowances and quota reservations | Balance management (OCS / CHF) | Self-care app, top-up channels | — | TMF654 for prepay balances. Updated during the session. |
| Rated events | Rating | — | Billing, Revenue Assurance | Postpaid rated events become invoice lines at bill run. |
In practice
Rating, charging and the OCS need not be separate products. A convergent charging platform may do all three. A legacy estate may run a prepaid IN platform, a separate postpaid rating engine and a billing system that rates recurring charges itself.
The trade-off
What it solves
Separating value calculation from its application lets one tariff serve prepaid and postpaid, and lets the OCS control spending while the session runs.
What it does not solve
- Wrong prices or wrong holdings upstream, which rating applies faithfully at scale.
- Usage that mediation lost or delayed before rating saw it.
- Disagreement between the price a customer was quoted and the tariff rating applies.
What it adds
- Real-time charging is in the call path: its latency and availability affect service, not just revenue.
- Running batch and real-time rating side by side means two configurations of the same tariff unless they share one engine.
- Allowances, shared pools and spend caps need balance state that every rating path reads consistently.
Architecture decision
Should postpaid usage be rated in real time?
Batch at bill run
Choose when there are no spend caps, no shared allowances and no customer need to see usage before the invoice.
Near real time
Choose when customers or regulation require spend alerts or usage visibility, but the service is never stopped mid-session.
Online through the OCS
Choose when postpaid plans have hard caps, fair-use control or allowances shared with prepaid, so the session must be controlled as it runs.
Breaks if the same tariff is configured separately in a batch engine and an OCS. The two drift, and the customer sees one figure in the app and another on the invoice.
Takeaways
Key Takeaways
- Rating determines value; charging applies it to a balance or an account; the OCS does both during the session
- A charging decision needs the usage or request, the subscriber, the product held, the tariff and the balance
- Four charge types: recurring, usage-based, one-time and penalty or adjustment
- Batch, near-real-time and real-time rating suit different needs, and most operators run more than one
- Rating executes catalog and SLM data: most billing disputes start there, not in the rating engine
Check yourself
A prepaid customer's data session stops mid-stream although they topped up an hour ago. Which component made that decision, and which record would you check?Show answerHide
The OCS (or CHF in 5G) denied quota. Check the balance in balance management: whether the top-up was applied to the right balance, and whether the product held gives access to it.
A whole tariff plan is overcharged by the same amount. Is the rating engine broken?Show answerHide
Probably not. Rating applies the price it is given; a consistent error across a plan points to the catalog price or the plan recorded in SLM.