---
updatedAt: 2026-08-23T14:40:39.000Z
---

Fetch the complete documentation index at: https://adopay-prod.readme.io/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Status Cashout

Retrieves the status and details of a cashout transaction. You can query by transaction ID, EndToEndId (e2e_id), or idempotency key. This endpoint provides comprehensive information about the transaction including status, amounts, recipient details, and error descriptors.

## Endpoint

```
GET /status-cashout
```

## Headers

| Parameter         | Type   | Description            | Required or Optional | Example                                                                                                                                                                                                                                        |
| :---------------- | :----- | :--------------------- | :------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Authorization** | String | Bearer + Access\_token | required             | Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzEzMzAwOTMxLCJpYXQiOjE3MTMyOTczMzEsImp0aSI6Ijc2ZWI4ZTE5ZjM4YjQ4NmZiODdmNzNjNTdkMWVmNDJhIiwidXNlcl9pZCI6MjQ2fQ.5zekMa7CUj9p-MvNHns5ke4ZPhYV3Y1CLOsYL7hDUUo |

## Query Parameters

| Parameter            | Type    | Description                                                                                              | Required    | Example                              |
| :------------------- | :------ | :------------------------------------------------------------------------------------------------------- | :---------- | :----------------------------------- |
| **id**               | Integer | Transaction ID. Only one parameter (id, e2e\_id, or idempotency\_key) should be provided.                | conditional | 123456                               |
| **e2e\_id**          | String  | EndToEndId of the transaction. Only one parameter (id, e2e\_id, or idempotency\_key) should be provided. | conditional | E60701190202301011200123456789012    |
| **idempotency\_key** | UUID    | Idempotency key used when creating the transaction. Only one parameter should be provided.               | conditional | 550e8400-e29b-41d4-a716-446655440000 |

**Important**: Exactly one of the three parameters must be provided. If none or multiple parameters are provided, the API will return a 400 error.

## Request Examples

**Query by transaction ID:**

```http
GET /status-cashout?id=123456
Authorization: Bearer <access_token>
```

**Query by EndToEndId:**

```http
GET /status-cashout?e2e_id=E60701190202301011200123456789012
Authorization: Bearer <access_token>
```

**Query by idempotency key:**

```http
GET /status-cashout?idempotency_key=550e8400-e29b-41d4-a716-446655440000
Authorization: Bearer <access_token>
```

## Response

### Success Response (200 OK)

```json
{
  "worked": true,
  "id": 123456,
  "transaction_id": 123456,
  "code_transaction": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "SUCCESS",
  "amount": 100.5,
  "fee": 0.0,
  "key": "joao@example.com",
  "tag": "payment-reference-123",
  "from_accout": "123456",
  "recipient_instution": "60701190",
  "recipient_instution_name": "ITAU UNIBANCO S.A.",
  "recipient_account_id": "654321",
  "recipient_branch_id": "0001",
  "recipient_legal_id": "12345678900",
  "recipient_name": "João da Silva",
  "recipient_account_type": "CURRENT_ACCOUNT",
  "operationUuid": "E60701190202301011200123456789012",
  "idempotency_key": "550e8400-e29b-41d4-a716-446655440000",
  "erro_descriptor": null,
  "new_erro_descriptor": null
}
```

### Response Fields

| Field                          | Type    | Nullable | Description                                                                                                                                                                           |
| :----------------------------- | :------ | :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **worked**                     | Boolean | no       | Always `true` on a successful response                                                                                                                                                |
| **id**                         | Integer | no       | Unique transaction identifier                                                                                                                                                         |
| **transaction\_id**            | Integer | no       | Transaction identifier. Currently returns the same value as `id`                                                                                                                      |
| **code\_transaction**          | String  | yes      | Internal UUID of the transaction                                                                                                                                                      |
| **status**                     | String  | no       | Transaction status. One of: `NEW`, `APPROVED`, `CANCELED`, `CANCELLED`, `WAITING REPROCESSING`, `PROCESSING`, `SUCCESS`, `AWAITING BANK CONFIRMATION`, `ERROR`, `PENDENT`, `REFUNDED` |
| **amount**                     | Number  | no       | Transaction amount, serialized as a float                                                                                                                                             |
| **fee**                        | Number  | no       | Transaction fee, serialized as a float. Currently always returns `0.0` for this endpoint                                                                                              |
| **key**                        | String  | yes      | PIX key used in the transaction. `null` for manual transfers (PIX without key)                                                                                                        |
| **tag**                        | String  | yes      | Custom reference tag informed when the cashout was created                                                                                                                            |
| **from\_accout**               | String  | no       | Source account number. Returns the mirror account when the transaction belongs to one. Note: the field name is spelled `from_accout` in the API contract                              |
| **recipient\_instution**       | String  | yes      | ISPB code of the recipient's bank, as stored in the transaction. Note: the field name is spelled `recipient_instution` in the API contract                                            |
| **recipient\_instution\_name** | String  | yes      | Name of the recipient's bank, resolved from the ISPB register. `null` when the ISPB is empty or not found                                                                             |
| **recipient\_account\_id**     | String  | yes      | Account number of the recipient                                                                                                                                                       |
| **recipient\_branch\_id**      | String  | yes      | Branch/agency of the recipient's account                                                                                                                                              |
| **recipient\_legal\_id**       | String  | yes      | CPF or CNPJ of the recipient                                                                                                                                                          |
| **recipient\_name**            | String  | yes      | Name of the recipient                                                                                                                                                                 |
| **recipient\_account\_type**   | String  | yes      | Type of the recipient's account. Values written by the platform: `CURRENT_ACCOUNT`, `SAVING_ACCOUNT`, `PAYMENT_ACCOUNT`, `Salary`                                                     |
| **operationUuid**              | String  | yes      | EndToEndId assigned by the payment system. This is the value matched by the `e2e_id` query parameter                                                                                  |
| **idempotency\_key**           | String  | yes      | Idempotency key persisted on the transaction (UUID as string)                                                                                                                         |
| **erro\_descriptor**           | String  | yes      | Error descriptor returned by the banking partner                                                                                                                                      |
| **new\_erro\_descriptor**      | String  | yes      | Normalized error descriptor                                                                                                                                                           |

## Error Responses

All errors are returned through the standard error envelope:

### 400 Bad Request - No Parameter Provided

```json
{
  "worked": false,
  "detail": "Either 'id', 'e2e_id' or 'idempotency_key' parameter is required",
  "message": "Either 'id', 'e2e_id' or 'idempotency_key' parameter is required",
  "data": null
}
```

### 400 Bad Request - Multiple Parameters Provided

```json
{
  "worked": false,
  "detail": "Only one parameter should be provided: 'id', 'e2e_id' or 'idempotency_key'",
  "message": "Only one parameter should be provided: 'id', 'e2e_id' or 'idempotency_key'",
  "data": null
}
```

### 400 Bad Request - Transaction Not Found

Also returned when the transaction exists but the authenticated user has no policy granting access to the source account.

```json
{
  "worked": false,
  "detail": "Transaction not found",
  "message": "Transaction not found",
  "data": null
}
```

### 401 Unauthorized

```json
{
  "worked": false,
  "detail": "Invalid or expired token",
  "message": "Invalid or expired token",
  "data": null
}
```

## Business Rules

1. **Parameter Exclusivity**: Only one query parameter (id, e2e\_id, or idempotency\_key) can be used per request
2. **Account Policy**: The authenticated user must hold a policy for the transaction's source account; otherwise the API responds as if the transaction did not exist
3. **Authentication**: Requires valid Bearer token with Cashout.READ permission
4. **Audience Support**: Available for both WEB and API audiences

## Use Cases

* **Transaction Tracking**: Monitor the status of cashout operations
* **Reconciliation**: Match transactions using idempotency keys
* **Customer Support**: Look up transaction details using EndToEndId
* **Webhook Verification**: Confirm transaction status after webhook notifications

## Related Endpoints

* [POST Create Cashout](create-cashout) - Create a new cashout transaction
* [POST Approve Cashout](approve-cashout) - Approve a pending cashout
* [GET Status Cashout by Tag](get_cashout_status-cashout_tag) - Query multiple transactions by tag

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "version": "3.0.0",
    "title": "Banking & PIX API",
    "description": "Complete API documentation for the banking and PIX payment platform."
  },
  "servers": [
    {
      "url": "https://api.adopay.com.br/"
    }
  ],
  "security": [],
  "tags": [
    {
      "name": "Cashout-API",
      "description": "Cashout-API endpoints"
    }
  ],
  "paths": {
    "/v2/finance/status-cashout": {
      "get": {
        "operationId": "get_cashout_status-cashout",
        "summary": "Status Cashout",
        "description": "Retrieves the status and details of a cashout transaction. You can query by transaction ID, EndToEndId (e2e_id), or idempotency key. This endpoint provides comprehensive information about the transaction including status, amounts, recipient details, and error descriptors.",
        "tags": [
          "Cashout-API"
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request - Invalid parameters"
          },
          "401": {
            "description": "Unauthorized - Invalid or missing authentication"
          },
          "500": {
            "description": "Internal server error"
          }
        },
        "x-internal": false
      }
    }
  },
  "x-readme": {
    "explorer-enabled": false,
    "proxy-enabled": true,
    "samples-languages": [
      "curl",
      "python",
      "javascript",
      "java",
      "go"
    ]
  }
}
```