# Payment refused errors and how to resolve them

**This section outlines some of the most common payment_refused errors encountered during payment processing via the Demand API. Each error includes its description, example (if applicable), likely causes, and recommended solutions.**

## General payment_refused error

This guide details specific errors related to payment being refused and therefore failured, which are returned with the corresponding message.

### payment_refused

**Name:** Payment refused

**Description:**

* This is a generic error returned when the Payment Service Provider (PSP) does not disclose the specific reason for declining the transaction.
* **Solution**
  * In such cases, contact the issuing bank for more information regarding the refusal.


In case there is an explanatory message, contact the bank and provide the details retrieved in the message. Example:


```json
{
  "request_id": "01gw7p7mp43dccs5zje3gezwkc",
  "errors": [
    {
      "id": "payment_refused",
      "message": "Payment could not be processed: Payment collection failed."
    }
  ]
}
```

## Specific payment_refused errors

### Fraud

**Name:** Payment refused - fraud

**Description:**
This error indicates that a payment was refused due to suspected fraud. In API V2, this was surfaced as a payment-related fraud error. In some cases, you may still encounter the older, less specific error message “*Book process failed*”.

**Possible causes:**

* The Payment Service Provider (PSP) rejected the transaction based on its fraud detection systems (most common cause).
* The payment attempt used the [CC_NO SCA payment method](/demand/docs/payments/payments-examples2#credit-card-non-sca), which is supported only for a limited group of partners.
* The user entered incorrect data multiple times in the /orders/create request, triggering a fraud-related rejection.


**Recommended actions:**

* Contact the PSP to identify the fraud trigger and obtain further details.
* Ensure that users enter accurate payment details.
* If incorrect data was submitted, wait before retrying the /orders/create request.


### insufficient_funds

**Name:** Payment refused - Insufficient funds

**Description:**

- This is an error returned by the payment service provider (PSP).
- It means the customer’s card doesn’t have enough balance to cover the charge at the time of the transaction – subsequent attempts at a later date may be successful.


Example response:


```json
{
  "request_id": "01gw7p7mp43dccs5zje3gezwkc",
  "errors": [
    {
      "id": "payment_refused_insufficient_funds",
      "message": "Payment could not be processed: There is insufficient funds on the credit card used to book."
    }
  ]
}
```

**Solution** - Ask the user to ensure sufficient funds are available or choose an alternative [payment method](/demand/docs/payments/payments-methods).

### budget_overflow

**Name:** Payment refused - Budget overflow

**Description:**

- The transaction exceeds the budget or credit limit associated with the card.


**Solution** - Confirm the card’s spending limit and retry with a valid payment method.

### card_is_expired

**Name:** Payment refused - Card is expired

**Description:**

- The credit card provided is no longer valid due to an expired expiry date.


**Solution** - Use a different card with a valid expiry date.

### card_status_invalid

**Name:** Payment refused - Card status is invalid

**Description:**

- This message usually appears when the issuer or cardholder has put a restriction on the card.


Example response:


```json
{
  "request_id": "01gw7p7mp43dccs5zje3gezwkc",
  "errors": [
    {
      "id": "payment_refused_card_status_invalid",
      "message": "Payment could not be processed: Payment collection failed."
    }
  ]
}
```

**Solution** - The cardholder must contact their issuing bank for further clarification.

### invalid_card_number

**Name:** Payment refused - Invalid card number

**Description:**

- The provided credit card number is invalid.


**Solution** - Double-check the card number for accuracy, ensuring it matches the correct format.

### invalid_amount

**Name:** Payment refused - Invalid amount

**Description:**
This error is returned by Booking.com when the amount to be captured is invalid. It usually indicates:

* It typically means the authorised amount (the amount approved for the charge) is less than the amount that needs to be captured.
* In rare cases, it can also occur if the authorised amount is more than the expected capture amount.


This error usually happens due to:

* Rounding issues or configuration bugs.
* A mismatch between the price shown in orders/preview and the final price sent in orders/create — for example, if the price changed between the two steps.


Example:


```json
{
  "request_id": "01gw7p7mp43dccs5zje3gezwkc",
  "errors": [
    {
      "id": "payment_refused_invalid_amount",
      "message": "Payment could not be processed: The amount to be charged is invalid."
    }
  ]
}
```

**Solution** - Verify that the amount being charged matches the expected value and format.

### invalid_payment_method

**Name:** Payment refused - Invalid payment method

**Description:**

- The provided payment method is invalid or unsupported.
- Example of error response:



```json
{
  "request_id": "01gw7p7mp43dccs5zje3gezwkc",
  "errors": [
    {
      "id": "payment_refused_invalid_parameter",
      "message": "Parameter 'payment.method' is invalid."
    }
  ]
}
```

**Solution** - Check the [payment methods documentation](/demand/docs/payments/payments-methods) and ensure the specified method is supported.

### issuer_cvc_check_failed

**Name:** Payment refused - Issuer CVC check failed

**Description:**

- The Card Verification Code (CVC) provided with the payment is invalid, and the issuer rejected it.


**Solution** - Verify that the correct CVC is entered and that it matches the one on the credit card.

### withdrawal_amount_exceeded

**Name:** Payment refused - Withdrawal amount exceeded

**Description:**

- The requested payment amount exceeds the limit allowed by the credit card.


**Solution** - Check the withdrawal limit for the card and adjust the payment amount accordingly.

### withdrawal_count_exceeded

**Name:** Payment refused - Withdrawal count exceeded

**Description:**

- The credit card used for booking has already been charged too many times, exceeding the allowable number of withdrawals.


**Solution** - Use a different card or contact the bank to discuss increasing the withdrawal limit.

### psp_card_is_blocked

**Name:** Payment refused - PSP card is blocked

**Description:**

- The Payment Service Provider (PSP) has blocked the credit card used for the transaction.


**Solution** - Contact the PSP or bank to resolve the card blockage issue.

### sca_required

**Name:** Payment refused - SCA Required

**Description:**

- Strong Customer Authentication (SCA) is required for the payment, but the provided authentication is either invalid or incomplete.


This error does not necessarily mean that SCA was not provided, as it may also occur if the SCA tokens are invalid.

**Solution** - Ensure that [SCA data](/demand/docs/payments/payments-examples2#credit-card--sca-token) is provided correctly during the transaction process. If the issue persists, contact the PSP or payment provider.

## Related topics

Curious to know more?
For additional information on supported payment methods, use cases, and guidance on creating order requests, refer to:

* [Payment methods](/demand/docs/payments/payments-methods)
* [Payment use cases](/demand/docs/payments/pay-examples-intro)
* [Payments quick guide](/demand/docs/payments/how-to)


For more generic, not-payment related errors refer to the [Client error codes and examples](/demand/docs/support/error-handling/error-codes).