Denial Codes in 5G

Denial codes in 5G are very similar to the Diameter denial codes used in 4G, in that denial codes provide a way to deny service access to subscribers for a specific reason. You define the denial codes in My MATRIXX and add the codes to rate table rows in place of a rating formula. A value is returned to the network based on which row is selected during rating.

When a denial is encountered during rating, the rating process stops in a manner that is similar to when a hard credit limit is reached. No additional rate tables or product offers are examined for valid rates. During usage rating, each event segment is checked for a denial. For example, a data charge might use a "peak, offpeak, and weekend" normalizer to charge a different amount based on time-of-day and day of week. The charge can be configured to have a denial code formula associated with the "weekend" parameter to disallow data usage at this time.

During non-usage rating (purchase, cancel, recurring, first-use, and auto-renew), a denial indicates a failure to do the corresponding operation. A failure to perform recurring or first usage pricing does not impact whether usage can still occur. For example, if a recurring charge fails to allocate a monthly asset, usage might still be authorized as an overage. Or, failure to apply a first-usage charge to a balance does not prevent usage charges from being applied.

When the network interface to upstream systems is based on 5G, the following mapping is applied. Mapping Between Denial Codes and 5G Result Codes shows the mapping between the (customer-defined) denial codes you can create and the 5G result codes returned in the 5G charging data response.

Note: Denial code values 400 - 9,999 are reserved for customers, while values 10,000 and greater are reserved for MATRIXX.
Table 1. Mapping Between Denial Codes and 5G Result Codes
Denial Code Result Code MDC field multipleUnitInformation resultCode AVP
1-99 4 SERVICE_REJECTED
100-199 3 QUOTA_LIMIT_REACHED
200-299 6 RATING_FAILED
300-399 1 SERVICE_DENIED
400-9,999 1 SERVICE_DENIED
10,000-10,099 2 QUOTA_MGMT_NOT_APPLICABLE

For example, if you receive a denial code 320, the 5G charging data response includes the result code of 1, which returns the resultCode value SERVICE_DENIED. This means the service request was denied due to service restrictions or limitations related to the subscriber, for example the subscriber's balances could not cover the requested service.