Decline codes
A decline code is an alphanumeric error code that indicates why a transaction was declined. These codes can come from various sources, including:
- Issuing banks
- Payment processors
- Credit networks
Frame decline codes
Frame uses its own set of decline codes. These codes cover many of the same reasons as traditional decline codes but provide clearer problem definitions. Use the following table to help resolve issues related to decline codes:
DECLINE CODE | DESCRIPTION | NEXT STEPS |
---|---|---|
authentication_required | The card was declined because the transaction requires authentication such as 3D Secure. | When using Frame.js, in most cases a soft decline from an issuer triggers an authentication flow, allowing the customer to try again and authenticate their card. |
approve_with_id | The payment can't be authorized. | Attempt the payment again. If you still can't process it, the customer needs to contact their card issuer. |
call_issuer | The card was declined for an unknown reason. | Customer must contact their card issuer for more information. |
card_not_supported | Card doesn't support this purchase type. | Customer should contact their card issuer to verify card's purchase capabilities. |
card_velocity_exceeded | Customer exceeded balance, credit limit, or transaction amount limit. | Customer must contact their card issuer for more information. |
currency_not_supported | Card doesn't support the specified currency. | Customer should check with issuer if the card supports the specified currency. |
do_not_honor | Card declined for unknown reason. | Customer must contact their card issuer for more information. |
do_not_try_again | Card declined for unknown reason. | Customer must contact their card issuer for more information. |
duplicate_transaction | Identical transaction (amount and card info) submitted recently. | Check if a recent payment already exists. |
expired_card | The card has expired. | Customer needs to use a different card. |
fraudulent | Payment declined due to suspected fraud. | Present to customer as a generic_decline . Do not provide detailed information. |
generic_decline | Card declined for unknown reason. | Customer must contact their card issuer for more information. |
incorrect_number | Card number is incorrect. | Customer should retry with the correct card number. |
incorrect_cvc | CVC number is incorrect. | Customer should retry with the correct CVC. |
incorrect_pin | Incorrect PIN (applies only to card reader payments). | Customer should retry with the correct PIN. |
incorrect_zip | The postal code is incorrect. | Customer should retry with the correct billing postal code. |
insufficient_funds | The card has insufficient funds to complete the purchase. | Customer needs to use an alternative payment method. |
invalid_account | The card, or account the card is connected to, is invalid. | Customer should contact their card issuer to verify card functionality. |
invalid_amount | Payment amount is invalid or exceeds allowed limit. | If the amount seems correct, customer should check with their card issuer about purchase limits. |
invalid_cvc | Incorrect CVC number. | Customer should retry with the correct CVC. |
invalid_expiry_month | Invalid expiration month. | Customer should retry with the correct expiration date. |
invalid_expiry_year | Invalid expiration year. | Customer should retry with the correct expiration date. |
invalid_number | Incorrect card number. | Customer should retry with the correct card number. |
invalid_pin | Incorrect PIN entered. | Customer should retry with the correct PIN. |
issuer_not_available | The card issuer couldn't be reached, so the payment couldn't be authorized. | Retry the payment. If issue persists, customer should contact their card issuer. |
lost_card | The payment was declined because the card is reported lost. | Present to customer as a generic_decline . Do not disclose specific reason. |
merchant_blacklist | The payment was declined because it matches a value on the Frame user's block list. | Present to customer as a generic_decline . Do not disclose specific reason. |
new_account_information_available | The card, or account the card is connected to, is invalid. | Customer should contact their card issuer for more information. |
no_action_taken | The card was declined for an unknown reason. | Customer should contact their card issuer for more information. |
not_permitted | The payment isn't permitted. | Customer should contact their card issuer for more information. |
offline_pin_required | The card was declined because it requires a PIN. | Customer should retry by inserting card and entering PIN. |
online_or_offline_pin_required | The card was declined as it requires a PIN. | If card reader supports Online PIN, prompt for PIN without creating a new transaction. Otherwise, customer should retry by inserting card and entering PIN. |
pickup_card | The customer can't use this card to make this payment (it's possible it was reported lost or stolen). | Customer should contact card issuer for more information. |
pin_try_exceeded | The allowable number of PIN tries was exceeded. | Customer must use another card or payment method. |
processing_error | An error occurred while processing the card. | Retry payment. If issue persists, try again later. |
reenter_transaction | The payment couldn't be processed by the issuer for an unknown reason. | Retry payment. If issue persists, customer should contact card issuer. |
restricted_card | The customer can't use this card to make this payment (it's possible it was reported lost or stolen). | Customer should contact card issuer for more information. |
revocation_of_all_authorizations | The card was declined for an unknown reason. | Customer should contact card issuer for more information. |
revocation_of_authorization | The card was declined for an unknown reason. | Customer should contact card issuer for more information. |
security_violation | The card was declined for an unknown reason. | Customer should contact card issuer for more information. |
service_not_allowed | The card was declined for an unknown reason. | Customer should contact card issuer for more information. |
stolen_card | The payment was declined because the card is reported stolen. | Present as a generic decline to the customer. |
stop_payment_order | The card was declined for an unknown reason. | Customer should contact card issuer for more information. |
testmode_decline | A Frame test card number was used. | Use a genuine card for payment. |
transaction_not_allowed | The card was declined for an unknown reason. | Customer should contact card issuer for more information. |
try_again_later | The card was declined for an unknown reason. | Retry payment. If subsequent attempts fail, customer should contact card issuer. |
withdrawal_count_limit_exceeded | The customer has exceeded the balance or credit limit available on their card. | Customer should use an alternative payment method. |