Description
The Charging Function (CHF) is a fundamental component within the 5G Core Network (5GC) architecture, specifically part of the Charging framework. It operates as a producer of charging events, interacting with other Network Functions (NFs) like the Session Management Function (SMF) and Policy Control Function (PCF) via service-based interfaces (e.g., Nchf). The CHF is responsible for collecting usage information, applying charging policies, and generating Charging Data Records (CDRs) or Charging Events. These records are then forwarded to the Charging Data Function (CDF) for long-term storage and eventual processing by the billing system.
Architecturally, the CHF is defined as a standalone Network Function that can be deployed independently, supporting both offline and online charging modes. In online charging, it performs credit control in real-time, granting or denying service units based on a user's account balance and policy rules. This involves direct interaction with the user's balance management system. For offline charging, it collects usage data after the service is rendered, correlating events from multiple NFs to produce consolidated CDRs. The CHF supports a converged charging system, meaning it can handle charging for any service type (e.g., data, voice, IoT, network slicing) through a unified framework.
Key components of the CHF's operation include the Charging Trigger Function (CTF), which is logically embedded within other NFs like the SMF to detect chargeable events, and the Charging Data Function (CDF) for record storage. The CHF itself implements the charging logic, determining tariff times, applying rating, and managing quotas. It uses standardized reference points such as Nchf (for service-based communication with other NFs) and Rf/Ga (for legacy offline/online charging interfaces if needed). Its design is highly flexible, supporting event-based, session-based, and volume-based charging, which is essential for 5G's diverse service offerings like network slicing and edge computing.
The CHF's role is critical for monetizing 5G services. It enables operators to implement sophisticated, real-time charging strategies, such as dynamic pricing, QoS-based charging, and slice-specific billing. By decoupling charging from session management, 5G allows for more agile service deployment and innovative business models, including third-party service charging. The CHF ensures that all network resource usage is accurately measured, rated, and recorded, forming the basis for revenue assurance and customer billing in modern telecom networks.
Purpose & Motivation
The CHF was introduced in 3GPP Release 15 as part of the new 5G Core (5GC) architecture to address the limitations of previous charging systems in 4G EPC. In 4G, charging was tightly coupled with specific network elements like the PGW (via Gy/Gz interfaces), which made it inflexible and difficult to adapt to new services. The 4G charging architecture was primarily designed for traditional mobile broadband, struggling with real-time, service-differentiated charging required for IoT, network slicing, and edge services.
The primary motivation for creating a dedicated CHF was to enable a converged, service-based charging framework that could support the diverse use cases promised by 5G. This separation allows charging logic to be applied independently of the underlying network topology or session state, facilitating innovation. It solves the problem of monolithic charging systems by providing a modular, cloud-native NF that can scale dynamically and integrate with modern IT systems via APIs.
Historically, charging evolved from simple call detail records in circuit-switched networks to more complex data charging in packet-switched networks. The CHF represents the next step, designed for a software-defined, service-oriented core. It addresses the need for real-time charging for on-demand services, support for network slicing where each slice may have a different charging model, and the ability to charge for third-party applications and services directly through the network. This enables new revenue streams and business models essential for 5G's economic viability.
What changed in its specifications
The latest release-to-release comparison of specifications that define CHF. Each summary describes the whole specification, not only this term.
Rel-19 added MPQUIC steering to multi-access PDU sessions, XR and media handling, and an Energy Information Function. It also added Local Offloading Management for edge computing, Vertical Federated Learning for AI/ML, and Ambient IoT text.
Full comparison in TS 23.501 →Rel-19 TS 23.503 adds Network Slice Replacement and Energy Saving Indicator reporting, Application Function influence on payload header handling, and Local Offloading Management Policy for edge computing. It also adds ATSSS Phase 4 multi-access steering (MPQUIC-E, ATSSS-LL), spending-limit policy for roaming, and PCF use of network analytics.
Full comparison in TS 23.503 →Architecture
Where it sits in the network
- Mobile Network → 5G Core → CHF (Policy & Charging)
Release Timeline
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (122 CRs across 6 releases). Complements the general historical overview above with the evidence-based evolution of this function.
- Add table of CHF Spending Limit Control service in 7.2.x TS 23.501CR0401
- CHF discovery and selection TS 23.501CR0576
- Introduce Charging Function in overall architecture TS 23.501CR0793
- Change OCS to CHF in TS23.503 TS 23.503CR0117
- Selection of the CHF for charging and spending limit control for the PDU session TS 23.503CR0150
- Change OCS to CHF in TS 23.503 TS 23.503CR0221
+ 6 more changes
- CHF Group ID TS 29.510CR0284
- CHF set and instance Id in charging information TS 29.512CR0431
- Add offline only charging for CHF selection TS 32.255CR0051
- CHF selection in offline only TS 32.255CR0062
- Introduce CHF-Controlled Quota Management TS 32.255CR0204
- CHF selection for IMS charging TS 32.260CR0401
+ 11 more changes
- Reporting FQDN of CHF to RADIUS DN-AAA server TS 29.561CR0079
- Reporting FQDN of CHF to Diameter DN-AAA server TS 29.561CR0080
- Introduction of CHF framework in the scope TS 32.260CR0414
- Introduction of CHF selection using NRF TS 32.260CR0421
- Supported PLMN for CHF Discovery TS 29.510CR0698
- Correcting home routed CHF selection TS 32.255CR0392
+ 10 more changes
- 23.503 - CHF selection in Spending Limits for AM and UE Policies in the 5GC TS 23.503CR1052
- Support of CHF address(es) information TS 29.525CR0317
- Add reference point between MMS node and CHF TS 32.240CR0469
- Rel-18 CR 32.240 Addition of CHF as consumer in LBO architecture TS 32.240CR0476
- Rel-18 CR 32.240 Addition of business CHF via consumer CHF TS 32.240CR0477
- Rel-18 CR 32.255 Addition of CHF as consumer in LBO architecture TS 32.255CR0467
+ 30 more changes
- CHF selection aspects TS 29.507CR0316
- Spending limits for UE Policy and Support of CHF information in roaming scenario TS 29.525CR0355
- CHF selection aspects considering roaming scenarios TS 29.525CR0361
- H-PCF for a UE interacts with the H-CHF in the roaming scenario TS 29.594CR0113
- Rel-19 CR 32.255 Adding use of charging characteristics for CHF Group TS 32.255CR0566
- Rel-19 CR 32.255 Clarify the CHF selection method TS 32.255CR0582
+ 29 more changes
- Rel-20 CR TS 32.255 Applicable Triggers in the V-CHF TS 32.255CR0636
- Rel-20 CR TS 32.290 Handling of stored charging data requests in CTF and V-CHF TS 32.290CR0256
- Rel-20 CR TS 32.290 Handling of V-CHF receives abnormal message TS 32.290CR0257
- Rel-20 CR TS 32.290 Handling of H-CHF receives abnormal message TS 32.290CR0258
- Correct the feature name for CHF group ID handling TS 29.512CR1499
- Rel-20 CR TS 32.260 Correction on the description of CHF CDR trigger TS 32.260CR0463
Defining Specifications
3GPP specifications that define or reference CHF, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 23.501 vk30 | 5G System Architecture | Rel-20 read |
| TS 23.503 vk30 | 5G Policy and Charging Control Framework | Rel-20 read |
| TS 28.201 vj20 | 5G Network Slice Performance Analytics Charging | Rel-19 read |
| TS 28.203 vi10 | Charging management | Rel-18 read |
| TS 28.204 vi11 | Charging management | Rel-18 read |
| TR 28.815 vh00 | Charging Study for Edge Computing | Rel-17 read |
| TR 28.816 vh00 | Charging for 5G Cellular IoT | Rel-17 read |
| TR 28.822 vh00 | Charging for 5G LAN Services Study | Rel-17 read |
| TR 28.827 vi00 | Technical Report on 5G Charging for Roaming Scenarios | Rel-18 read |
| TR 28.840 vi10 | Technical Report | Rel-18 read |
| TS 28.849 vj10 | CAPIF Phase2 Charging Study | Rel-19 read |
| TS 29.507 vk10 | Access and Mobility Policy Control | Rel-20 read |
| TS 29.510 vk10 | NRF Service-Based Interface | Rel-20 read |
| TS 29.512 vk10 | Session Management Policy Control Service Stage 3 | Rel-20 read |
| TS 29.513 vk10 | 5G PCC Signalling Flows | Rel-20 read |
| TS 29.514 vk10 | Policy Authorization Service | Rel-20 read |
| TS 29.525 vk10 | UE Policy Control Service | Rel-20 read |
| TS 29.561 vk10 | 5G Network Interworking Procedures | Rel-20 read |
| TS 29.594 vk00 | 5G Spending Limit Control Service (Nchf) | Rel-20 read |
| TS 32.240 vk10 | 3GPP Charging Architecture and Principles | Rel-20 read |
| TS 32.255 vk30 | 5G Data Connectivity Converged Charging | Rel-20 read |
| TS 32.256 vk10 | 5G Connection and Mobility Charging | Rel-20 read |
| TS 32.257 vj00 | Edge Computing Charging Management | Rel-19 read |
| TS 32.260 vk10 | IMS Charging Management | Rel-20 read |
| TS 32.271 vj20 | 3GPP LCS Charging Management Spec | Rel-19 read |
| TS 32.277 vj20 | Charging Management for Proximity Services (ProSe) | Rel-19 read |
| TS 32.279 vj00 | 5G MBS Session Converged Charging | Rel-19 read |
| TS 32.290 vk00 | 5G Charging Service-Based Architecture | Rel-20 read |
| TS 32.291 vk10 | 5G Charging Service-Based Interface | Rel-20 read |
| TR 32.846 vh00 | Charging for ProSe in 5GS | Rel-17 read |
| TR 32.847 vi00 | Technical Report | Rel-18 read |
| TS 33.127 vj80 | Lawful Interception Architecture | Rel-19 read |
| TS 33.128 vj80 | Lawful Interception Protocols and Procedures | Rel-19 read |
| TS 33.515 vk00 | 5G SMF Security Assurance Specification | Rel-20 read |
| TS 33.928 vj30 | LI ADMF Provisioning Logic for LI Functions | Rel-19 read |