Charging

A prepaid subscriber starts a call, a data session, and an SMS in the same minute. Each one has to check the same balance, reserve against it, and debit it — in real time, without double-spending. The Ouroboros OCS does that on the same UDR your HSS already uses, so subscriber identity and balance are one repository, not two systems to reconcile.

AMTP · OCS
InterfacesGy · Ro · CAMEL/CAP
ProtocolsDiameterCAMELHTTP/2
Real-timeBalance authorised during the event
RatingFully programmable, per-PLMN
Generations2G, 3G, 4G/LTE, 5G
DatabaseRedundant balance database
subscribers on platform
2004
in production since
4 gen
2G through 5G
99.9999%
availability
00The problem

The HSS holds subscriber identity, profile, and provisioning state. The charging system holds balances, quotas, and rate plans. In most deployments these are separate products with separate databases which means the same subscriber exists twice, and the two copies drift.

When provisioning changes in one system and not the other, sessions get authorised against stale data: a barred subscriber who still has balance, a balance that does not reflect a plan change, a profile update that never reached charging. Reconciliation jobs paper over the gap, but the underlying problem is architectural — subscriber data and charging data should not live in two repositories that have to be kept in sync.

01How it works

OCScore
Data GWGy interface
IN/IMSRo Diameter
CAMELCAP/SCP
BSSrating export
01 / 04

Call or session starts — OCS authorises the balance

The Ouroboros OCS performs real-time online charging — balance check, quota reservation, and debit — for prepaid voice, data, and messaging across 2G, 3G, 4G, and 5G. Network elements request credit control over Diameter: the OCF/SCP interface to the packet core (Gy for the PGW, N40 for the 5G SMF/CHF role) and Ro for IMS-based services. Each request reserves a quota against the subscriber's balance and reports usage back, so charging tracks consumption as it happens rather than after the fact.

02 / 04

Rating engine applies the plan — per-PLMN rules

What makes this OCS different is where the balance lives. Instead of its own subscriber store, the OCS uses the same UDR (User Data Repository) as the HSS. Subscriber identity, profile, and balance are held in one repository, accessed by both functions. There is one record per subscriber, not two: the HSS reads and writes profile and provisioning state; the OCS reads and writes balances, quotas, and rate-plan state — against the same subscriber entity.

03 / 04

Same OCS: 2G voice through to 5G data

The consequence is that charging always sees current subscriber state. A bar, a plan change, or a provisioning update applied through the HSS is visible to the OCS immediately, because it is the same record. There is no synchronisation interface to fail, no reconciliation batch to run, and no window where the two copies disagree.

04 / 04

The OCS handles the full charging lifecycle: balance management, multiple balances per subscriber (main, promotional, dedicated data), validity periods, quota replenishment thresholds, and rating against configurable tariffs. Recharge and top-up update the balance directly in the shared UDR.

02Use cases

Real-time prepaid, convergent charging, tariff launches, roaming rating — one OCS across every generation.

01

Real-time prepaid charging across generations

Voice, data, and messaging sessions on 2G through 5G request credit control over Diameter. The OCS reserves and debits in real time, preventing overspend on any service while balance is shared cleanly across concurrent sessions.

02

Unified subscriber and balance record

Because the OCS uses the UDR, each subscriber has one record carrying both profile and balance. A bar or a plan change made through the HSS is immediately reflected in charging — no synchronisation, no drift.

03

Convergent data charging (Gy / N40)

Data sessions from the PGW (Gy) or the 5G SMF via the CHF role (N40) reserve quota against the subscriber's data balance. Time and volume thresholds drive smooth quota replenishment without session interruption.

04

Promotional and dedicated balances

Operators run main, promotional, and dedicated-data balances with independent validity periods on the same subscriber. The OCS applies the correct balance per service and per tariff, all within the shared UDR record.

05

MVNE serving multiple MVNOs

An MVNE hosts charging for multiple MVNOs on one OCS, each with its own tariffs and balances, while sharing the HSS UDR per subscriber — one repository, many brands.

03Specifications

Function
Real-time online charging system (prepaid)
Subscriber data
Shares the UDR with PCRF and HSS — single repository for identity, profile, and balance
Charging interfaces
Diameter Gy (PGW), Ro (IMS), N40 (5G CHF role), CAMEL (2G/3G)
Charging model
Online (real-time credit control), session and event based
Balances
Multiple per subscriber (main, promotional, dedicated), with validity periods
Quota management
Reservation, time/volume thresholds, replenishment
Standards
3GPP TS 32.240, TS 32.299 (Diameter charging), RFC 4006 (DCCA), TS 32.290 (5G converged charging)
Generations supported
2G, 3G, 4G/LTE, 5G
Virtualisation
VMware, KVM, Docker
Availability
99.9999%
Business model
OPEX rental · CAPEX licence
04Inside the platform

01

Shared UDR — one record per subscriber

Subscriber identity, profile, and balance live in the same repository the HSS and PCRF uses. Charging always sees current subscriber state; there is no separate balance store to drift out of sync, action on limits doesn't need extra.

02

Real-time credit control over Diameter

Camel, Gy, Ro, and N40 requests reserve quota and report usage as sessions run. Prepaid subscribers cannot overspend, even across concurrent voice, data, and messaging sessions.

03

No synchronisation interface

Because profile and balance share one record, there is no HSS-to-OCS sync to build, monitor, or repair. A provisioning change made once is correct everywhere — no reconciliation batch, no drift window.

04

Multiple balances and validity periods

Main, promotional, and dedicated-data balances coexist on the same subscriber. Operators run flexible prepaid offers without separate accounts or external balance managers.

05

Convergent charging across generations

The same OCS charges 2G voice and 5G data through the appropriate Diameter interface. One charging system covers the whole network rather than one per generation.

06

Quota threshold management

Time and volume thresholds drive replenishment requests before quota is exhausted. Data sessions continue smoothly without mid-session interruption at quota boundaries.

05Why Ouroboros

Most charging deployments treat the subscriber as two entities one in the HSS, one in the OCS and then spend operational effort keeping them aligned. The Ouroboros OCS removes the second copy: it charges against the same UDR the HSS uses, so there is one subscriber record, one source of truth, and no synchronisation layer to fail.

For operators that already run the Ouroboros HSS, this is a natural consolidation: identity and charging on one repository, one platform, one support contract. For those on a third-party HSS, the OCS can be deployed against a shared UDR where the architecture allows. The OPEX rental model lets operators add real-time charging without capitalising a separate charging database.

Ouroboros Telecom

Tell us your HSS, your current charging platform, and your prepaid service mix, and we'll show you what charging on a shared UDR looks like — and what reconciliation it removes.