Denial Codes
Denial codes are a way to deny service access to subscribers for a specific reason. You define them in My MATRIXX and add them to rate table rows in place of a rating formula, so the value is returned to the network based on the row selected during rating.
When a denial is encountered during rating, rating stops 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, off-peak, and weekend" normalizer to charge a different amount based on the time of day and the day of the 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. Note that 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 overage. Or, the failure to apply a first-usage charge to a balance does not prevent usage charges from being applied.
Denial Code | Diameter Result Code |
---|---|
1–99 | DIAMETER_AUTHORIZATION_REJECTED (5003) |
100–199 | DIAMETER_CREDIT_LIMIT_REACHED (4012) |
200–299 | DIAMETER_RATING_FAILED (5031) |
300–399 | DIAMETER_END_USER_SERVICE_DENIED (4010) |
400–9,999 | Customer-defined |
10,000–10,099 | DIAMETER_CREDIT_CONTROL_NOT_APPLICABLE (4011) |
For example, if you create an error code 320, then the Diameter CCA message returns a Result-Code of DIAMETER_END_USER_SERVICE_DENIED (4010) in the Diameter Result-Code AVP and a textual description of the error in the Error-Message AVP. 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. When you define an error code, you can provide a textual description of the specific reason for denial. For example, the description for error code 320 might be "Free Min Balance Not Valid During Peak Hours." This error code would be in a rating formula associated with a Time Range Normalizer and in a charge component impacting a free minimum balance.