Errors and codes
Payments operation errors
These error codes explains the qp_status_code field in the response when performing some operation on a payment.
Error Categories
- 3xxxx: Authentication/SCA required (action needed to proceed)
- 4xxxx: Client errors (rejections, validation errors)
- 5xxxx: Server/communication errors
| Code | Message | Description | How to Handle |
|---|---|---|---|
| 30100 | 3-D Secure required | Transaction requires 3-D Secure authentication before proceeding. | Redirect cardholder to 3DS authentication URL. Wait for callback after completion. |
| 30101 | SCA required | Strong Customer Authentication required per PSD2 regulations. | Complete additional authentication. Wait for callback. |
| 40000 | Rejected by acquirer | Transaction rejected by acquirer or payment network. Always check aq_status_code and aq_status_msg for specific reason. |
Common causes: Insufficient funds, card declined, expired card, invalid card, amount limit exceeded, fraud suspicion, merchant configuration error. Do not retry without changes - check acquirer message to determine if retryable. |
| 40001 | Request data error | Request contained invalid or malformed data. | Fix validation errors (invalid card data, missing required fields, invalid format). Correct request data before retry. |
| 40002 | Authorization expired | Authorization expired and can no longer be used for capture. | Authorization too old or capture window passed. Create new authorization. |
| 40003 | Operation aborted | Operation was aborted by merchant or system. | Operation cancelled. Start new operation if needed. |
| 40300 | Fraud block | Transaction blocked by fraud detection systems. | Transaction flagged by fraud filters or risk score too high. Review fraud rules and transaction details. |
| 41000 | CoF deleted by scheme | Card-on-file token deleted by the card issuer (bank) and no longer available. | Card was removed by the issuer. Re-enroll card to create new token. |
| 42300 | CoF token suspended by scheme | Card-on-file token suspended by the card issuer (bank) and cannot be used. | Token temporarily blocked by issuer. Contact support or wait for reactivation. |
| 50000 | Gateway Error | Unexpected internal error in QuickPay system. Development team automatically notified. | Internal system error. Check logs. Do not retry immediately - may need support investigation. |
| 50300 | Communications Error | Communication error with acquirer, payment network, or tokenization service. | Network timeout or service unavailable. Retry after delay may succeed. |
Important Notes
About Status Code 40000 (REJECTED)
This is a general rejection code covering many decline scenarios. Always check the aq_status_code and aq_status_msg fields for acquirer-specific details about why the transaction was rejected.
When you receive 40000:
- Check
aq_status_codeandaq_status_msgfor the specific reason - Determine if the error is retryable (e.g., insufficient funds might be retryable, but expired card is not)
- Provide appropriate feedback to end users based on the specific error
- Log both
qp_status_codeandaq_status_codefor debugging and analytics
Related Response Fields
qp_status_msg: Human-readable message for the status codeaq_status_code: Acquirer-specific status code (varies by acquirer)aq_status_msg: Acquirer-specific status message with detailed rejection reasonpending: Boolean indicating if operation is still pending