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.
Architecture
In the Network Map
- Mobile Network → 5G Core → CHF (Policy & Charging)
Classification
Release Timeline
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (116 CRs across 5 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
Explore further
Broader topics and technologies where CHF plays a role.
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 vk20 | 5G System Architecture Stage 2 | Rel-20 |
| TS 23.503 vk20 | 5G System Policy and Charging Control Framework | Rel-20 |
| TS 28.201 vj20 | 5G Network Slice Performance Analytics Charging | Rel-19 |
| TS 28.203 vi10 | Charging management | Rel-18 |
| TS 28.204 vi11 | Charging management | Rel-18 |
| TR 28.815 vh00 | Charging Study for Edge Computing | Rel-17 |
| TR 28.816 vh00 | Charging for 5G Cellular IoT | Rel-17 |
| TR 28.822 vh00 | Charging for 5G LAN Services Study | Rel-17 |
| TR 28.827 vi00 | Technical Report on 5G Charging for Roaming Scenarios | Rel-18 |
| TR 28.840 vi10 | Technical Report | Rel-18 |
| TS 28.849 vj10 | CAPIF Phase2 Charging Study | Rel-19 |
| TS 29.507 vk00 | Access and Mobility Policy Control Service Stage 3 | Rel-20 |
| TS 29.510 vk00 | NRF Services and Protocol Specifications | Rel-20 |
| TS 29.512 vk00 | Session Management Policy Control Service | Rel-20 |
| TS 29.513 vk00 | Policy and Charging Control in 5G System | Rel-20 |
| TS 29.514 vk00 | 3GPP TS 29514 vk00: Policy Authorization Service | Rel-20 |
| TS 29.525 vk00 | UE Policy Control Service Stage 3 | Rel-20 |
| TS 29.561 vk00 | 5G Network Interworking Procedures | Rel-20 |
| TS 29.594 vj30 | 5G Spending Limit Control Service Stage 3 | Rel-19 |
| TS 32.240 vk00 | Charging Architecture and Principles in 3GPP | Rel-20 |
| TS 32.255 vk20 | 5G Data Connectivity Charging | Rel-20 |
| TS 32.256 vk00 | 5G Connection and Mobility Charging | Rel-20 |
| TS 32.257 vj00 | Edge Computing Charging Management | Rel-19 |
| TS 32.260 vk00 | IMS Charging Description and Management | Rel-20 |
| TS 32.271 vj20 | 3GPP LCS Charging Management Spec | Rel-19 |
| TS 32.277 vj20 | Charging Management for Proximity Services (ProSe) | Rel-19 |
| TS 32.279 vj00 | 5G MBS Session Converged Charging | Rel-19 |
| TS 32.290 vj50 | 5G Charging for Service Based Interface | Rel-19 |
| TS 32.291 vk00 | 3GPP TS 32.291 vk00: Service Based Interface for Charging | Rel-20 |
| TR 32.846 vh00 | Charging for ProSe in 5GS | Rel-17 |
| TR 32.847 vi00 | Technical Report | Rel-18 |
| TS 33.127 vj70 | Lawful Interception Architecture and Functions | Rel-19 |
| TS 33.128 vj70 | Lawful Interception in 5G System | Rel-19 |
| TS 33.515 vk00 | 5G SMF Security Assurance Specification | Rel-20 |
| TS 33.928 vj20 | ADMF Provisioning Logic for Lawful Interception | Rel-19 |