PayChangu API errors can be grouped into three main categories. The validation errors, PayChangu errors, and provider errors.

They are usually returned in this format with the 400 HTTP status code:

{
    "status": "failed",
    "message": "tx_ref is required",
    "data": "null"
}

Provider Errors

Provider errors are returned from the payment provider. Below are some possible provider errors you can expect:

UNSPECIFIED_FAILURE

The transaction could not be processed.

DECLINED

Transaction declined by issuer.

TIMED_OUT

Response timed out

EXPIRED_CARD

Transaction declined due to expired card

INSUFFICIENT_FUNDS

Transaction declined due to insufficient funds

ACQUIRER_SYSTEM_ERROR

Acquirer system error occurred processing the transaction

SYSTEM_ERROR

Internal system error occurred processing the transaction

NOT_SUPPORTED

Transaction type not supported

DECLINED_DO_NOT_CONTACT

Transaction declined - do not contact issuer

ABORTED

Transaction aborted by payer

BLOCKED

Transaction blocked due to Risk or 3D Secure blocking rules

CANCELLED

Transaction canceled by payer

DEFERRED_TRANSACTION_RECEIVED

Deferred transaction received and awaiting processing

REFERRED

Transaction declined - refer to issuer

AUTHENTICATION_FAILED

3DS authentication failed

INVALID_CSC

Invalid card security code

LOCK_FAILURE

Order locked - another transaction is in progress for this order

NOT_ENROLLED_3D_SECURE

Card holder is not enrolled in 3D Secure

EXCEEDED_RETRY_LIMIT

Transaction retry limit exceeded

DECLINED_AVS

Transaction declined due to address verification

DECLINED_CSC

Transaction declined due to card security code

DECLINED_AVS_CSC

Transaction declined due to address verification and card security code

DECLINED_PAYMENT_PLAN

Transaction declined due to payment plan

UNKNOWN

Response unknown

CARD_NOT_ENROLLED

The card is not enrolled for 3DS authentication

AUTHENTICATION_NOT_AVAILABLE

Authentication is not currently available

AUTHENTICATION_ATTEMPTED

Authentication was attempted but the card issuer did not perform the authentication

CARD_DOES_NOT_SUPPORT_3DS

The card does not support 3DS authentication