Errors
API Errors
Error messages are returned in HTTP response. The body of the response contains the details of the error in JSON format.
The following attributes are returned as part of the error content
Attribute | Description |
---|---|
category | A string which groups errors based on the error handling routine that is required. |
code | A more specific code allowing you to handle the specific errors. |
message | Descriptive information about the error. This is for developer(/merchant) consumption and should not be used for showing errors to your customers. |
HTTP/1.1 200 OK
Content-Type: application/json
{
"error":{
"category": "Authorization",
"code": "1001",
"message": "Basic Auth required. Invalid credentials"
}
}
The following are the list of codes grouped based on category.
Category | Code | Message | Possible Cause |
---|---|---|---|
API Not Supported | 0000 | Operation not supported by {operator_name} | |
Authorization | 1001 | Basic auth required. Invalid credentials | Wrong or missing authorization token in HTTP header |
Authorization | 1002 | Your IP address {ip} is not in the whitelist {whitelist}. You can add it via the Management Portal | Wrong or missing IP Allow list in API access page in portal |
Authorization | 1003 | Rate limit exceeded, You have exceeded the number of requests per {period} | |
Request Validation | 2000 | Invalid parameter {parameter} value {value} | |
Request Validation | 2001 | Missing required parameters {params} | Missing mandatory parameters in HTTP request |
Request Validation | 2002 | Unknown merchant with URI {uri} | Wrong merchant parameter value |
Request Validation | 2003 | Unknown operator for MSISDN {msisdn} | Wrong country dial code in MSISDN parameter value |
Request Validation | 2004 | Campaign with uri {campaign_uri} is not valid | Wrong campaign parameter value or campaign not approved |
Request Validation | 2005 | {operator} does not accept charges in {currency} | Unsupported currency |
Request Validation | 2006 | {operator} has a max charge amount of {max} {currency} | Amount parameter value exceed the purchase limit |
Request Validation | 2007 | Correlator repeated. Possible duplicate transaction | Correlator parameter value has been used before |
Request Validation | 2008 | Invalid PIN | Wrong PIN parameter value |
Request Validation | 2009 | Invalid Notification URL | Wrong notification url value in service settings |
Request Validation | 2010 | Invalid frequency requested. Valid values are: {frequencies} | Wrong frequency value in service settings |
Request Validation | 2011 | Subscription not found | Wrong uuid value or no subscription available |
Request Validation | 2012 | Subscription {campaign} already exists with {operator} for this customer | Create duplicates subscription |
Request Validation | 2013 | No valid agreement with {operator} for {environment} environment | Service agreement not approved |
Request Validation | 2014 | {operator} does not support partial refund. Refunded amount ({refund_amount}) did not match original amount ({original_amount}) | Refund amount not equal to charge amount |
Request Validation | 2015 | Charge amount must be greater than zero | Charge amount less than zero |
Request Validation | 2016 | Invalid (charge) parameter value. should be true for subscriptions offers free trials | Create trial subscription with charge parameter value is false |
Request Validation | 2017 | Period value is invalid | Free coupons API request with not allowed period value |
Request Validation | 2018 | Subscription not in inactive mode | Subscription status value is not inactive |
Request Validation | 2019 | Subscription not active | Subscription status value is not active |
Request Validation | 2021 | Subscription not in paused mode | Subscription status value is not removed |
Request Validation | 2022 | Invalid SMS message | SMS MT not delivered |
Request Validation | 2023 | {language} is not supported for {operator} | Wrong language or it is not supported for this operator |
Request Validation | 2024 | {msisdn} is not a valid MSISDN or ACR | Wrong MSISDN or ACR parameter value |
Request Validation | 2025 | Account not found | The customer does not exist in our system |
Request Validation | 2026 | {operator} has a min charge amount of {min} {currency} | Amount parameter value exceeds the purchase limit |
Request Validation | 2027 | Refund amount must be less than zero | Refund amount greater or equal to zero |
Request Validation | 2028 | Offer not provisioned | |
Request Validation | 2029 | Customer may not be eligible. Please call isEligible before dataProvision. | |
Request Validation | 2030 | Customer {msisdn} is blocked from using campaign with uri {campaign_uri} | |
Request Validation | 2031 | Trial value must be over zero | |
Request Validation | 2032 | Subscription creation exceeded the limit | |
Request Validation | 2033 | Transaction not found | |
Request Validation | 2034 | Customer {msisdn} is not currently eligible to use this campaign with uri {campaign_uri} | MSISDN is not on the Campaign's whitelist |
Request Validation | 2035 | Unknown operator {operator_code} | |
Request Validation | 2036 | Unknown MSISDN {msisdn} for operator {operator_code} | |
Request Validation | 2037 | Unknown Token {token} | |
Request Validation | 2038 | Subscription {campaign_uri} request already processing with {operator_name} for this customer {msisdn} | |
Request Validation | 2039 | One Off Charges is not allowed on Subscription campaign with uri {campaign_uri} | |
Request Validation | 2040 | Your service is only allowed to authenticate via Checkout | |
PIN API | 3001 | PIN sending failed | SMS MT not delivered |
Invalid PIN | 4001 | PIN has been used already | Proved PIN value reused |
Invalid PIN | 4002 | PIN has expired | Provided PIN value TTL expired |
Invalid PIN | 4003 | PIN not found | Wrong PIN parameter value |
Free Trial | 5001 | {service_name} service doesn't support Free trial for subscriptions | Trial subscriptions not activated on service settings |
Free Trial | 5002 | Free trial period cannot exceed 30 days | Trial parameter value greater than 30 |
Free Period | 5501 | {service_name} service doesn't support Free periods for subscriptions | Free coupons for subscription not activated in service settings |
Free Period | 5502 | Free period cannot exceed {max_free_days} days | |
Service Incomplete | 6001 | Your service is missing notification_url | Notification url value is empty in service settings |
Service Incomplete | 6002 | Your service is missing amount | Subscription amount is empty in service settings |
Service Incomplete | 6003 | Your service retries grace period is invalid. Grace period should not exceed 30 days and number of retries should not exceed 3 times per day | Wrong grace period value in service settings |
Service Incomplete | 6004 | You are not allowed to use this service | |
Service Incomplete | 6005 | Your service is inactive, Your are not allowed to use this service | |
Token Error | 7001 | Token {token} could not be found | |
Token Error | 7001 | Token {token} has been already used | |
Token Error | 7002 | No MSISDN for token {token} | |
Token Error | 7003 | Amount {amount} doesn't match the original amount provisioned with Token {token} | |
Token Error | 7004 | Token {token} doesn't belong to campaign with uri {campaign_uri} | |
Token Error | 7005 | Token {token} has not been provisioned with environment {environment} | |
Token Error | 7006 | Token {token} has expired | Provided Token value TTL expired |
SMS API | 8001 | SMS sending failed | SMS MT not delivered |
SMS API | 8002 | SMS API is not allowed for campaign with uri {campaign_uri} | |
SMS API | 8003 | SMS API with dynamic parameter is not allowed for campaign with uri %{campaign_uri} | |
SUBSCRIPTION API | 9001 | Subscription creation failed with error={message} | |
MO API | 10001 | MO sending failed | |
MO API | 10002 | MO unknown command sent {command} | |
MO API | 10003 | MO operator not found for {param} {value} | |
MO API | 10004 | MO customer not found | |
MO API | 10005 | MO settings is not supported for operator {operator_code} | |
MO API | 10006 | MO is not allowed for campaign {campaign_id} | |
MO API | 10007 | MO unknown service keyword command sent {keyword} | |
MO API | 10008 | MO unknown receiver sent {receiver} for campaign {campaign_id} | |
MO API | 10009 | MO service is inactive, You are not allowed to use this service | |
MO API | 10010 | MO service is inactive, Customer {msisdn} is not currently eligible to use this campaign {campaign_id} | |
Fraud Token Error | 11001 | Token not found | |
Fraud Token Error | 11002 | Token does not belong to this service | |
Fraud Token Error | 11003 | Token is not valid | |
Fraud Token Error | 11004 | Token already used | |
Fraud Token Error | 11005 | Token expired | |
Error | No resources | Error contacting the operator systems so please contact Support to confirm |
CALLBACK Errors
Other errors will be returned to your redirect URL and will have the following format:
http://your-redirect-url/?status=error&correlator={correlator}&message={reason_for_the_error}
Message | Possible Cause |
---|---|
not_found¶m=xxx | Missing required parameter |
invalid_service | Unknown service |
invalid_merchant | Unknown merchant |
invalid_price | Invalid price param |
invalid_transaction_id | Transaction ID param does not exist |
invalid_correlator | Correlator params does not exist |
invalid_service_not_belong_to_merchant | The Service provided does not belong to the Merchant |
invalid_mismatch_merchant | The merchant provided is not the same merchant as the previous request |
invalid_referral_is_blacklisted | The referral URL is blocked |
service_not_allowed | Service is not allowed to use two click |
operator_unsupported | Operator is not allowed to use two click |
msisdn_not_detected | Unable to get the MSISDN/ACR |
request_not_from_operator_gateway_ip | The request is not from the operator trusted IP. MSISDN could be from a different operator, not on mobile data etc. |
transaction_id_not_unique | Duplicate transaction ID |
msisdn_mismatch | |
block_fraud | Fraud detected |
not_confirmed | Fraud user did not check the confirm box |
token_missing | Fraud token was missing when attempting to complete fraud check. This could mean the fraud script was being blocked on customers side, such as a browser add-on for example. |
fraud_detected | Fraud detected |
civilid_check_failed | Wrong civil ID |
user_cancel | User canceled the current transaction |
no_auth_methods | Unavailable authentication methods |
user_blocked | User is blocked |
unable_to_redirect_to_axiata | Unable to redirect to Axiata checkout page |
invalid_service_not_belong_to_axiata | The service provided does not belong to Axiata |
blocked | The request has been blocked |
blocked_{msg} | The request has been blocked and the reason will be the extra msg |
Updated 6 months ago