Online Charging is the name used by 3GPP for pre-paid charging in the IMS scope. It is the charging which occurs in real-time, where the service cost is deducted from the user balance (which has been previously loaded by the user) while the service is going
on. In IMS this is the Ro interface, and is defined by 3GPP TS 32.299 (and extending RFC
4006 - Diameter Credit Control Application).
On the other hand, Offline Charging is the 3GPP name for post-paid charging, where the provided services are not paid at the time of their usage but rather in a periodic manner, such as at the end of each month. However, while the service is on course, it's
usage is logged as a Call Detail Record (CDR) that will be processed later by a Billing system. This corresponds to the IMS interface Rf, defined also by 3GPP
TS 32.299 (inheriting from Diameter Base Accounting in RFC 3588).
The CDR generation is the responsibility of an Offline Charging Server.
Please keep in mind that while we are using the Online/Offline terminology introduced by 3GPP for IMS, this post does not intend to focus on IMS details, and so, we will only use the Diameter Base Accounting Application, allowing to simplify the exchanged messages
and provide a more straightforward tut