--- title: "Terminal API refusal reasons" description: "Learn about the refusal reasons for point-of-sale payment requests." url: "https://docs.adyen.com/point-of-sale/error-scenarios/refusal-reasons-pos" source_url: "https://docs.adyen.com/point-of-sale/error-scenarios/refusal-reasons-pos.md" canonical: "https://docs.adyen.com/point-of-sale/error-scenarios/refusal-reasons-pos" last_modified: "2022-01-28T21:01:00+01:00" language: "en" --- # Terminal API refusal reasons Learn about the refusal reasons for point-of-sale payment requests. [View source](/point-of-sale/error-scenarios/refusal-reasons-pos.md) When your [payment request is declined](/point-of-sale/error-scenarios#declined-payment), we include an error category in the `ErrorCondition` field of the payment response, and a further explanation in the `refusalReason` inside the `Response.AdditionalResponse`. The refusal reasons we provide are based on the [raw responses](/point-of-sale/error-scenarios/raw-acquirer-responses) we receive from acquirers and issuers. You can use the `ErrorCondition` to code your POS app. The `refusalReason` and `message` fields are included for additional insight, and should not be coded against. ## Refusal reasons by error condition The following tables show the most common refusal reasons for point-of-sale payment transactions, grouped by the [ErrorCondition](https://docs.adyen.com/api-explorer/terminal-api/latest/post/payment#responses-200-Response-ErrorCondition) in the `PaymentResponse.Response`: * [Aborted](#error-condition-aborted) * [Busy](#error-condition-busy) * [Cancel](#error-condition-cancel) * [DeviceOut](#error-condition-deviceout) * [InvalidCard](#error-condition-invalidcard) * [NotAllowed](#error-condition-notallowed) * [Refusal](#error-condition-refusal) * [UnreachableHost](#error-condition-unreachable) * [WrongPIN](#error-condition-wrongpin) The tables show the `refusalReason` and `message` you receive in the `PaymentResponse.Response.AdditionalResponse`. Contact our [Support Team](https://ca-test.adyen.com/ca/ca/contactUs/support.shtml?form=other) if you need more information about a refusal reason. ### ErrorCondition: Aborted | ErrorCondition | refusalReason | message | Description | Retry? | | -------------- | -------------------- | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | Aborted | Contactless fallback | CONTACTLESS\_FALLBACK | The shopper abandoned the transaction after they attempted a contactless payment and were prompted to try a different card entry method (PIN or swipe). | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | ### ErrorCondition: Busy | ErrorCondition | serviceId | message | Description | Retry? | | -------------- | ---------- | ----------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- | | Busy | 1234567890 | Forbidden Request, Service Dialogue PaymentRequest is in Progress | Another transaction, with the provided `serviceId`, is still in progress. Using the `serviceId` you can make an `AbortRequest` to [cancel](/point-of-sale/basic-tapi-integration/cancel-a-transaction#cancel-from-register) the in-progress transaction. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Busy | | ADMIN\_MENU | | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Busy | | (all other messages) | | ![-x-](/user/data/smileys/emoji/x.png "-x-") | ### ErrorCondition: Cancel | ErrorCondition | refusalReason | message | Description | Retry? | | -------------- | --------------------------------------------------- | --------------------- | --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | Cancel | Approved | APPROVED | Transaction was canceled after being initially approved by the issuer. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Cancel | Cancelled | CANCELLED | Transaction was canceled. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | card removed | CANCELLED | Shopper's card was removed from the terminal before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Card removed during application selection | CANCELLED | Shopper's card was removed from the terminal before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Card removed during transaction | CANCELLED | Shopper's card was removed from the terminal before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Card removed during transaction (first ac) | CANCELLED | Shopper's card was removed from the terminal before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Card removed during transaction (verify cardholder) | CANCELLED | Shopper's card was removed from the terminal before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Card removed while processing online | CANCELLED | Shopper's card was removed from the terminal before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Card swapped mid-transaction | CANCELLED | Card removed from the terminal and swapped for another card during the transaction. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | chip cancelled tx (2nd ac returned AAC) | CANCELLED | The Application Authentication Cryptogram (AAC) on the card declined the transaction offline. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Merchant cancelled | CANCELLED | The merchant canceled the transaction before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Merchant cancelled after contactless fallback | CONTACTLESS\_FALLBACK | The merchant canceled the transaction before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Merchant cancelled during online authorization | CANCELLED | The merchant canceled the transaction before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Merchant cancelled during validate call | CANCELLED | The merchant canceled the transaction before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Merchant cancelled tx | CANCELLED | The merchant canceled the transaction before the transaction finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper Cancelled | SHOPPER\_CANCELLED | The shopper canceled the transaction before completing it. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled after contactless fallback | CONTACTLESS\_FALLBACK | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled during application selection | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled during dcc selection | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled during online authorization | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled during validate call | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled Manual Key Entry | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled pin entry | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper cancelled tx | CANCELLED | The shopper canceled the transaction before it finished. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Cancel | Shopper did not present a card | CANCELLED | The shopper did not present a card, so the transaction was canceled. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | ### ErrorCondition: DeviceOut | ErrorCondition | refusalReason | message | Description | Retry? | | -------------- | -------------- | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | DeviceOut | Crash recovery | POI\_is\_Temporary\_Unavailable\_Terminal\_not\_ready | Terminal stopped responding for an unknown reason, causing the transaction to fail. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | DeviceOut | Low battery | Failed starting transaction: Low Battery | Battery charge level dropped below the minimum battery level configured in your Customer Area. Connect the terminal to a power source and retry, or retry using a different terminal. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | ### ErrorCondition: InvalidCard | ErrorCondition | refusalReason | message | Description | Retry? | | -------------- | ------------------------------------- | --------------------- | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | InvalidCard | Card data authentication failed | DECLINED | Failed to obtain the relevant card data. The shopper should use an alternate payment method. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | InvalidCard | No checking account available on Card | NO\_CHECKING\_ACCOUNT | No checking account available on the card. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | InvalidCard | No savings account available on Card | NO\_SAVINGS\_ACCOUNT | No savings account available on the card. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | ### ErrorCondition: NotAllowed | ErrorCondition | refusalReason | message | Description | Retry? | | -------------- | --------------------------------- | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- | | NotAllowed | Blocked Card | BLOCK\_CARD | The selected card application is blocked. It cannot be used for the transaction. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | NotAllowed | Invalid Amount | INVALID\_AMOUNT | An amount mismatch occurred during the transaction. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | NotAllowed | Payment details are not supported | ERROR | The used payment method is not supported. Contact our [Support Team](https://ca-test.adyen.com/ca/ca/contactUs/support.shtml?form=other). | ![-x-](/user/data/smileys/emoji/x.png "-x-") | ### ErrorCondition: Refusal | ErrorCondition | refusalReason | message | Description | Retry? | | -------------- | --------------------------------------------------- | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | Refusal | Acquirer Error | ERROR | The transaction did not go through due to an error that occurred on the acquirer's end. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | AID banned | ERROR | The application is temporarily in our AID penalty box until its payments network can be reached again. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Refusal | Always refused | DECLINED | Gift card refused. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Refusal | Amount too low to be accepted by Card Network | DECLINED | The card network doesn't accept the entered amount because it is too low. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Refusal | Card blocked | BLOCK\_CARD | The card has been blocked and cannot be used. The shopper should contact their bank. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Refusal | Card requires online pin | PIN\_REQUIRED | Card requires online pin | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | CVC Declined | CVC\_DECLINED | The specified [CVC (card security code)](/get-started-with-adyen/adyen-glossary/#card-security-code-cvc-cvv-cid) is invalid. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | declined | DECLINED | Transaction has been declined for a unspecified reason. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Declined Non Generic | DECLINED | [This response represents all response codes that cannot be reliably mapped.](https://developer.mastercard.com/repower/documentation/code-and-formats/error-codes/) This makes it easier to differentiate between generic declines (for example, Mastercard "05: Do not honor" response) and more specific ones. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Expired Card | CARD\_EXPIRED | The card has expired. It cannot be used for the transaction. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Issuer Suspected Fraud | ISSUER\_SUSPECTED\_FRAUD | Issuer reported the transaction as suspected fraud. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Refusal | Mobile PIN required | MOBILE\_PIN\_REQUIRED | Mostly for [NFC wallet transactions](/point-of-sale/what-we-support/payment-methods#nfc-wallets) when extra authentication is needed on the phone to complete the transaction (like enter PIN, unlock phone, or fingerprint). | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Not enough balance | NOT\_ENOUGH\_BALANCE | The card does not have enough money to cover the payable amount. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Not Submitted | NOT\_SUBMITTED | The transaction was not submitted correctly for processing. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Not supported | NOT\_SUPPORTED | The shopper's bank doesn't support or doesn't allow this type of transaction. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Pin tries exceeded | PIN\_TRIES\_EXCEEDED | The shopper specified an incorrect PIN more that three times in a row. This error also occurs for example with a Bancontact/Mister Cash (BCMC) payment where the shopper exceeded the maximum time between transactions without using a PIN. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Pin validation not possible | PIN\_VALIDATION\_NOT\_POSSIBLE | It is not possible to validate the specified PIN number. | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Refusal | Refused | DECLINED | The transaction was refused. This response is also returned when the transaction is declined based on the fraud rules and checks on the EMV chip. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Restricted Card | RESTRICTED\_CARD | Several 'Decline' codes are mapped to this refusal reason response value. For example:- 62: Restricted Card - 62: Invalid card in this country/region | ![-x-](/user/data/smileys/emoji/x.png "-x-") | | Refusal | Timeout waiting for card after contactless fallback | CONTACTLESS\_FALLBACK | Transaction timed out. Shopper should retry or use an alternate payment method. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Transaction Not Permitted | TRANSACTION\_NOT\_PERMITTED | Several 'Decline' codes are mapped to this refusal reason response value. For example:- 57: Transaction not permitted to issuer/cardholder - 57: Transaction not allowed for this merchant - 58: Transaction not permitted to acquirer/terminal | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Withdrawal count exceeded | WITHDRAWAL\_COUNT\_EXCEEDED | The number of withdrawals permitted for the shopper's card was exceeded. Also used for contactless transactions (Contactless Withdrawal Count Exceeded). | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | Refusal | Withdrawal amount exceeded | WITHDRAWAL\_AMOUNT\_EXCEEDED | The withdrawal amount permitted for the shopper's card was exceeded. Also used for contactless transactions (Contactless Withdrawal Amount Exceeded). | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | ### ErrorCondition: UnreachableHost | ErrorCondition | refusalReason | message | Description | Retry? | | --------------- | ------------------- | ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------- | | UnreachableHost | failed to go online | DECLINED | Unable to go online. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | | UnreachableHost | Issuer Unavailable | ISSUER\_UNAVAILABLE | It is not possible to contact the shopper's bank to authorize the transaction. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | ### ErrorCondition: WrongPIN | ErrorCondition | refusalReason | message | Description | Retry? | | -------------- | ------------- | ------------ | ------------------------------------------------- | ------------------------------------------------------------------------------------------- | | WrongPIN | Invalid Pin | INVALID\_PIN | The specified PIN number is incorrect or invalid. | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | ## See also * [Raw acquirer responses](/point-of-sale/error-scenarios/raw-acquirer-responses) * [Handle responses](/point-of-sale/error-scenarios)