---
title: "Error Messages"
source_url: https://docs.rapyd.net/en/error-messages.html
lang: en
---

# Error Messages

When the requested operation cannot be completed, Rapyd returns an error code with a message.

The message explains the cause of the error and the steps to correct it.

> **Note:**
>
> A third-party integration, such as an external 3DS service, may trigger different errors in the sandbox and production environments.

For a list of all Rapyd error codes and messages, see [Rapyd Error Codes](https://docs.rapyd.net/en/rapyd-error-codes.md "Rapyd Error Codes").

> **Note:**
>
> Create Payment error responses include [Payment Failed Webhook](https://docs.rapyd.net/en/payment-failed-webhook.md "Payment Failed Webhook") data. See [Create Payment Error Examples](https://docs.rapyd.net/en/create-payment-error-examples.md "Create Payment Error Examples").

The response usually includes the error. See [Response Format](https://docs.rapyd.net/en/error-messages.md#UUID-f7141de3-2861-d5a3-9298-450df02af68e_section-idm234797722522165 "Response Format").

> **Note:**
>
> Certain errors have different formats. These errors may appear in the response, a webhook, or both. For example:
>
> - [Card Network Errors](https://docs.rapyd.net/en/card-network-errors.md "Card Network Errors") - Card processing errors.
> - [Merchant Advice Codes](https://docs.rapyd.net/en/merchant-advice-codes.md "Merchant Advice Codes") - Related to [Create Payment](https://docs.rapyd.net/en/create-payment.md "Create Payment") response parameters: `merchant_advice_code` and `merchant_advice_message`.

## Response Format

When a requested operation succeeds, the response has two objects: `status` (see the table below) and `data`. The `data` object contains the response parameters documented for each method.

When the requested operation fails and returns an error, the response has one object: `status`

The `status` object contains information about the requested operation, including error data.

| Parameter | Type | Description | Value Example |
| --- | --- | --- | --- |
| `error_code` | string | Error code. Summarizes what went wrong. Same as response_code. Empty when successful. | **ERROR_INVALID_EWALLET** |
| `status` | string | Status of the request. One of the following:  - **ERROR** - **SUCCESS** | **ERROR** |
| `message` | string | Detailed error message:  - The cause. For example: **The request attempted an operation that requires a wallet, but the wallet was not recognized.** - The request status. For example: **The request was rejected.** - The solution. For example: **Corrective action: Use the ID of a valid wallet, a string starting with 'ewallet_'.**  Empty when successful. | **The request attempted an operation that requires a wallet, but the wallet was not recognized. The request was rejected. Corrective action: Use the ID of a valid wallet, a string starting with 'ewallet_'.** |
| `response_code` | string | Error code. Summarizes what went wrong. Same as error_code. Empty when successful. | **ERROR_INVALID_EWALLET** |
| `operation_id` | string | Operation ID for Rapyd Support. UUID. | **c9ef7f0c-07e0-4c85-9491-5d517920fb04** |

Response Example: Success

```json
{
    "status": {
        "error_code": "",
        "status": "SUCCESS",
        "message": "",
        "response_code": "",
        "operation_id": "f338792d-548f-48a9-ab50-aa64d969a8b3"
    },
    "data": {
        "id": "payment_e9bf3b2355931a063384a6704244a345",
		
//         . . .	

        "merchant_advice_message": null
    }
}
```

Response Example: Error

```json
{
    "status": {
        "error_code": "ERROR_INVALID_EWALLET",
        "status": "ERROR",
        "message": "The request attempted an operation that requires a wallet, but the wallet was not recognized. The request was rejected. Corrective action: Use the ID of a valid wallet, a string starting with 'ewallet_'.",
        "response_code": "ERROR_INVALID_EWALLET",
        "operation_id": "c9ef7f0c-07e0-4c85-9491-5d517920fb04"
    }
}
```
