wireless solutions for a wired world

Status Codes

The following tables describe status code values the Charge To Account Gateway may return in:

HTTP API request outcomes

When your application makes a request to the Charge To Account Gateway using the HTTP API, the gateway indicates the outcome of the request in the HTTP response. The HTTP status code returned indicates the general outcome. outcomeReasonId, outcome and outcomeReasonText are included in the body of the response.

outcomeReasonId HTTP status code outcome outcomeReasonText
1000 200 success Request was successful.
 
2001 200 userinputrequired User confirmation required.
2002 200 userinputrequired Missing information that requires user input.
 
3000 403 rejected Missing username.
3001 403 rejected Missing password.
3002 403 rejected Missing action.
3003 403 rejected Missing transactionMode.
3004 403 rejected Missing transactionId.
3005 403 rejected Missing subscriptionId.
3006 403 rejected Missing product information.
3032 403 rejected Missing product name.
3033 403 rejected Missing product description.
3034 403 rejected Missing product category.
3035 403 rejected Missing product subcategory.
3036 403 rejected Missing product group.
3037 403 rejected Missing amount.
3038 403 rejected Missing currency.
3040 403 rejected Missing subscription duration.
3041 403 rejected Missing subscription period.
3042 403 rejected Missing subscription period units.
3043 403 rejected Missing subscription free period units.
3100 403 rejected Invalid username or password.
3102 403 rejected Invalid action.
3103 403 rejected Invalid transactionMode.
3104 403 rejected Invalid transactionId.
3105 403 rejected Invalid subscriptionId.
3106 403 rejected Invalid productId - product not found.
3107 403 rejected Invalid productId - product specified is not a subscription.
3108 403 rejected Invalid msisdn
3110 403 rejected Invalid Provider or Provider Type(s) according to account permissions.
3111 403 rejected Invalid Provider or Provider Type(s) specified - no provider to support request found.
3112 403 rejected Invalid Provider Type.
3130 403 rejected Invalid note.
3131 403 rejected Invalid subaccount.
3132 403 rejected Invalid product name.
3133 403 rejected Invalid product description.
3134 403 rejected Invalid product category.
3135 403 rejected Invalid product subcategory.
3136 403 rejected Invalid product group.
3137 403 rejected Invalid amount.
3138 403 rejected Invalid currency.
3140 403 rejected Invalid subscription duration.
3141 403 rejected Invalid subscription period.
3142 403 rejected Invalid subscription period units.
3143 403 rejected Invalid subscription free period units.
3145 403 rejected Cannot have opt ins in when confirmation page is none
3200 403 rejected Invalid currency and amount combination according to account policy
5000 403 rejected This action is currently unsupported

Notification API - subscription status (deprecated)

reasonid and reasontext are sent in notifications from the Charge To Account Gateway to your application's notification URL, but they are deprecated; your application should interpret the subscription outcomeReasonId codes below instead.

reasonid reasontext
4000A technical error has occurred
4001 No applicable payment method could be found
4100Subscription has been unsubscribed. No further actions can occur.
4101Subscription has been cancelled or failed to confirm. No actions can be made at this time.
4102Subscription is concluding. No actions can be made at this time.
4200Subscription charge rejected: Subscription is already billing
4201Subscription charge rejected: General error
4210Subscription cancel rejected: General error
4211Subscription cancel rejected: Subscription has already been confirmed.
4220Subscription confirm rejected: General error
4221Subscription confirm rejected: Subscription has already been confirmed.
4222Subscription subscribe failed: Authorization/confirmation timed out
4230Subscription conclude rejected: General error
4231Subscription conclude rejected: Subscription is currently billing.
4240Subscription restore rejected: Subscription is not concluding or suspended
4250Subscription unsubscribe rejected: Subscription is not currently subscribed
4260Subscription subscribe rejected: General error
4261Subscription subscribe failed: First charge failed.
4271Subscription unsubscribed: Subscription has reached end of defined duration
4281Subscription subscribe failed: Authorization timed out
4291Subscription subscribe failed: User input timed out
   
5001Subscription restoration successful
5002Subscription conclude successful
5003Subscription cancel successful
5005Subscription unsubscribe successful
5006Subscription subscribe successful
5007Arbitary Subscription billing complete
5008Timed Subscription billing complete

Notification API - outcomeReasonId codes

Notifications from the Charge To Account Gateway to your application's notification URL use an outcomeReasonId code to provide a detailed reason for a failure or status change.

There is one set of codes for outcomes of transactions (i.e. one-off or ad hoc charges), and another set for subscription status changes. The tables below give the meanings of the codes.

The outcomeReasonId is sent by the gateway in decimal, but needs to be converted to hexadecimal for interpretation. The bytes are then counted from left to right. For example, an outcome code of 197121 would equal 0x00030201 in hexadecimal; the first byte is 0x00, the second byte is 0x03, the third byte is 0x02 and the fourth byte is 0x01.

Additional failure reason codes may be added in future. Where possible the codes will be structured to fit into the existing second, third and fourth bytes. However, other values may need to be introduced.

Transaction failure outcomeReasonId codes

First byte Second byte Third byte Fourth byte
First nibble Second nibble
0x0 Failure 0x0 Transaction 0x00 Account failure 0x00 Invalid account 0x00 Account number is not valid
0x01 Start date is incorrect
0x02 Expiry date is incorrect
0x03 CVV is incorrect
0x04 Geographical address did not match account
0x01 Not billable 0x00 Account barred
0x01 Account type not supported: Billing of Pre-Pay account not supported
0x02 Account type not supported: Issuer/Reseller does not support billing
0x03 No applicable payment method could be found
0x04 No applicable mobile payment method could be found
0x02 Holder not accepted 0x00 The account holder did not accept the charge
0x03 Not verified 0x00 Account holder not verified to receive this class of Adult content
0x01 Credit control 0x00 Insufficient credit 0x00 Insufficient credit in account
0x01 Credit limit exceeded 0x00 Daily credit limit exceeded
0x01 Monthly credit limit exceeded
0x02 Other credit limit exceeded
0x02 Fraud control 0x00 Blacklisted 0x00 Account is blacklisted
0x01 Duplicate 0x00 Transaction appears to be a duplicate
0x03 Permanent system failure 0x01 At provider 0x00 System failure
0x01 System failure - mobile
0x02 At MX Telecom 0x00 System failure
0x04 Temporary system failure 0x00 At account 0x00 Sim card full
0x01 At provider 0x00 System failure
0x01 System failure - mobile
0x02 At MX Telecom 0x00 System failure
0x05 User Input 0x00 Timed out 0x00 Userinput timed out

Examples of transaction failure reason codes:

Reason Code
(decimal)
Reason Code
(hexadecimal)
First byte Second byte Third byte Fourth byte Reason
257 0x00000101 0x00 0x00 0x01 0x01 Prepay billing account not supported
65793 0x00010101 0x00 0x01 0x01 0x01 Monthly credit limit exceeded
327680 0x00050000 0x00 0x05 0x00 0x00 Userinput timed out

Subscription status outcomeReasonId codes

First byte Second byte Third byte Fourth byte
First nibble Second nibble

0x0

Failure

0x1

Subscription

0x00

Account failure

0x00

 

0x00

Account failure

 

 

 

 

 

 

0x01

Not billable

0x03

No applicable payment method could be found

 

 

 

 

 

 

 

 

0x04

No applicable mobile payment method could be found

 

 

 

 

 

 

 

 

0x05

Handset not using a WAP connection

 

 

 

 

 

 

0x03

Not verified

0x00

Account holder not verified to receive this class of Adult content

 

 

 

 

0x03

Permanent system failure

0x00

At account

0x00

Sim card full

 

 

 

 

 

 

0x01

At provider

0x00

System failure

 

 

 

 

 

 

0x02

At MX Telecom

0x00

System failure

 

 

 

 

0x04

Temporary system failure

0x00

At account

0x00

Sim card full

 

 

 

 

 

 

0x01

At provider

0x00

System failure

 

 

 

 

 

 

0x02

At MX Telecom

0x00

System failure

 

 

 

 

0x05

Subscription status error

0x00

Subscription ending or terminated

0x00

Subscription has been unsubscribed. No further actions can occur

 

 

 

 

 

 

 

 

0x01

Subscription has been cancelled or failed to confirm. No further actions can occur

 

 

 

 

 

 

 

 

0x02

Subscription is concluding. No further actions can occur

 

 

 

 

 

 

 

 

0x03

Subscription unsubscribed: Subscription has reached end of defined duration

 

 

 

 

 

 

0x01

Subscription subscribe failed

0x00

Authorization timed out

 

 

 

 

 

 

 

 

0x01

Confirmation timed out

 

 

 

 

 

 

 

 

0x02

Userinput timed out

 

 

 

 

 

 

 

 

0x03

First charge failed

 

 

 

 

 

 

 

 

0x04

General error

 

 

 

 

 

 

0x02

Subscription unsubscribe rejected

0x00

Subscription is not currently subscribed

 

 

 

 

 

 

0x03

Subscription conclude rejected

0x00

Subscription is currently billing

 

 

 

 

 

 

 

 

0x01

General error

 

 

 

 

 

 

0x04

Subscription restore rejected

0x00

Subscription is not currently concluding or suspending

 

 

 

 

 

 

 

 

0x01

General error

                0x02 Cannot restore when user requested STOP.

 

 

 

 

 

 

0x05

Subscription cancel rejected

0x00

Subscription has already been confirmed

 

 

 

 

 

 

 

 

0x01

General error

 

 

 

 

 

 

0x06

Subscription confirm rejected

0x00

Subscription already confirmed

 

 

 

 

 

 

 

 

0x01

General error

 

 

 

 

0x06

 

0x00

Subscription charge rejected

0x00

Maximum number of pending charges reached

 

 

 

 

 

 

 

 

0x01

General error

 

 

 

 

 

 

0x01

Subscription charge unsuccessful

0x00

Charge validity period expired before previous charge completed

 

 

 

 

 

 

 

 

0x01

General error

0x1

Success

0x1

Subscription

0x01

Subscription status

0x00

Subscribe success

0x00

Subscription subscribe request successful

 

 

 

 

 

 

0x01

Subscription unsubscribed

0x00

Subscription unsubscribe request successful

 

 

 

 

 

 

 

 

0x01

Suspended period timeout

 

 

 

 

 

 

 

 

0x02

Permitted inactivity period timeout

 

 

 

 

 

 

 

 

0x03

Permitted billing failure period timeout

 

 

 

 

 

 

 

 

0x04

Permitted number of consecutive billing failures exceeded

 

 

 

 

 

 

 

 

0x05

Permitted number of consecutive failed SMS exceeded

 

 

 

 

 

 

 

 

0x06

Concluded

                0x07 User requested STOP
            0x02 Subscription concluded 0x00 Request successful
                0x01 User requested STOP

 

 

 

 

 

 

0x03

Subscription restored

0x00

Request successful

 

 

 

 

 

 

0x04

Subscription cancelled

0x00

Request successful

 

 

 

 

 

 

0x05

Subscription confirmed

0x00

Request successful

 

 

 

 

0x02

Charge status

0x00

Ad hoc charge

0x00

Ad hoc charge: billing successful

 

 

 

 

 

 

 

 

0x01

Ad hoc charge: billing failure permitted.

 

 

 

 

 

 

0x01

Timed charge

0x00

Timed billing complete: billing successful.

Examples of subscription failure reason codes:

Reason Code
(decimal)
Reason Code
(hexadecimal)
First byte Second byte Third byte Fourth byte Reason
16777477 0x01000105 0x01 0x00 0x01 0x05 Handset not using a WAP connection
17039360 0x01040000 0x01 0x04 0x00 0x00 Sim card full
285278464 0x11010100 0x11 0x01 0x01 0x00 Subscription subscribe request successful