A payment towards an order can be declined
or failed
for a reason. You can check it from the decline_reason
field under payments
in the response of the Retrieve an order operation.
The following table lists the most common reasons that are mapped to human-readable values:
decline_reason value | Description |
---|---|
3ds_challenge_failed_manually | The customer has failed the 3DS challenge manually. |
insufficient_funds | The account associated with the payment method used doesn't have sufficient funds to make the payment. |
transaction_not_allowed_for_cardholder | The customer's bank doesn't allow the cardholder to make the payment. |
high_risk | The transaction has been declined due to high risk. This can be a trigger from both the issuing bank and internal Revolut tools. |
cardholder_name_missing | The cardholder name is missing. This is a required parameter to make a card payment. |
cardholder_name_missing | The cardholder name is missing. This is a required parameter to make a card payment. |
unknown_card | The card can't be identified. Ensure that you don't use a test card in the production mode. |
customer_challenge_abandoned | The customer has abandoned the 3DS challenge without completing it. |
customer_challenge_failed | The customer has failed the 3DS challenge. |
customer_name_mismatch | The name provided in the order doesn't match the name associated with the customer. note This value is only returned for merchants who use Revolut's name validation feature. |
do_not_honour | The customer's bank declines the payment because it fails the authorization process. The most common reasons are:
|
expired_card | The card provided has expired. |
high_risk | The transaction has been declined due to high risk. This can be a trigger from both the issuing bank and internal Revolut tools. |
insufficient_funds | The account associated with the used payment method doesn't have sufficient funds to make the payment. |
invalid_address | The billing address is invalid. |
invalid_amount | The transaction amount provided is invalid. |
invalid_card | The card number provided is invalid. |
invalid_card | The card number provided is invalid. |
invalid_email | The email provided doesn't have a valid format. |
invalid_country | The country code provided was invalid. |
invalid_cvv | The provided CVV is invalid. |
invalid_email | The provided email is invalid. |
invalid_expiry | The card's expiration date is invalid. |
invalid_merchant | Your business is not supported on the cardholder's account. Certain cards have usage restrictions for specific purposes, and certain Merchant Category Codes (MCC) may be blocked. Instruct the cardholder to contact their bank. |
invalid_phone | Phone number is not on file for the cardholder. |
invalid_pin | The provided PIN is incorrect. |
issuer_not_available | The card issuer is currently unavailable to authorize the transaction. Try again later. If the issue persists, instruct the customer to contact their card issuer. |
pick_up_card | The card has been reported as lost or stolen. The issuing bank has given the instruction to pick up the card and notify the issuing bank so that it can be returned to its rightful owner. |
rejected_by_customer | The transaction was rejected by the cardholder. The most common reasons are:
|
restricted_card | The issuing bank has a restriction on the card. Ask the customer to contact their bank for more details. |
restricted_card | The issuing bank has a restriction on the card. Ask the customer to contact their bank for more details. |
expired_card | The card provided has expired. |
technical_error | A general technical error occurred during the transaction process. Try again later. If the issue persists, contact support. |
transaction_not_allowed_for_cardholder | The customer's bank doesn't allow the cardholder to make the payment. |
unknown_card | The card can't be identified. Ensure that you don't use a test card in the production mode. |
withdrawal_limit_exceeded | The withdrawal limit for a specific card or account has been reached or exceeded. Ask the customer to contact their bank to extend this limit. |
withdrawal_limit_exceeded | The withdrawal limit for a specific card or account has been reached or exceeded. Ask the customer to contact their bank to extend this limit. |