> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mesadepagos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Payout Crypto

> Envío de payouts desde una wallet interna hacia una wallet externa.

El módulo Payout Crypto permite enviar fondos desde una wallet creada en ON RAMP hacia una wallet externa indicada por el partner.

## Endpoint

```http theme={null}
POST /v2/transactions/payouts/crypto
```

### Headers

| Header          | Requerido | Descripción                    |
| --------------- | --------- | ------------------------------ |
| `Authorization` | Sí        | `Bearer <token>` de sesión JWT |
| `Content-Type`  | Sí        | `application/json`             |

## Crear Payout Crypto

Usa este endpoint para solicitar un payout crypto desde una wallet interna hacia una dirección destino.

### Request

```json theme={null}
{
  "walletId": "550e8400-e29b-41d4-a716-446655440000",
  "destinationWallet": "0x0000000000000000000000000000000000000000",
  "amount": "100",
  "asset": "USDC",
  "blockchain": "Polygon",
  "externalReference": "9dd9614e-5059-4cb5-826c-ef092fd99cb9"
}
```

### Campos

| Campo               | Tipo   | Requerido | Descripción                                                       |
| ------------------- | ------ | --------- | ----------------------------------------------------------------- |
| `walletId`          | string | Sí        | Identificador de la wallet interna desde donde se hará el payout. |
| `destinationWallet` | string | Sí        | Dirección de la wallet externa que recibirá el payout.            |
| `amount`            | string | Sí        | Monto crypto a enviar.                                            |
| `asset`             | string | Sí        | Asset que se enviará. Ejemplo: `USDC` o `USDT`.                   |
| `blockchain`        | string | Sí        | Blockchain del asset. Ejemplo: `Polygon`, `Ethereum`, `TRON`.     |
| `externalReference` | string | Sí        | Referencia única enviada por el partner para conciliación.        |

### Probar en Sandbox

Usa estos parámetros como base para hacer una prueba en sandbox:

| Parámetro           | Valor de prueba                              | Notas                                      |
| ------------------- | -------------------------------------------- | ------------------------------------------ |
| `baseUrl`           | `https://sandbox-rampa.mesadepagos.com/api`  | URL base del ambiente sandbox.             |
| `token`             | `<TOKEN>`                                    | Reemplazar por el JWT obtenido en login.   |
| `walletId`          | `550e8400-e29b-41d4-a716-446655440000`       | Reemplazar por una wallet real del tenant. |
| `destinationWallet` | `0x0000000000000000000000000000000000000000` | Wallet externa destino.                    |
| `amount`            | `100`                                        | Monto crypto a enviar.                     |
| `asset`             | `USDC`                                       | También puede ser `USDT`.                  |
| `blockchain`        | `Polygon`                                    | También puede ser `Ethereum` o `TRON`.     |
| `externalReference` | `9dd9614e-5059-4cb5-826c-ef092fd99cb9`       | Debe ser único por operación.              |

```bash theme={null}
curl --request POST 'https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/crypto' \
  --header 'Authorization: Bearer <TOKEN>' \
  --header 'Content-Type: application/json' \
  --data '{
    "walletId": "550e8400-e29b-41d4-a716-446655440000",
    "destinationWallet": "0x0000000000000000000000000000000000000000",
    "amount": "100",
    "asset": "USDC",
    "blockchain": "Polygon",
    "externalReference": "9dd9614e-5059-4cb5-826c-ef092fd99cb9"
  }'
```

### Response

```json theme={null}
{
  "transactionId": "550e8400-e29b-41d4-a716-446655440001",
  "walletId": "550e8400-e29b-41d4-a716-446655440000",
  "destinationWallet": "0x0000000000000000000000000000000000000000",
  "amount": "100",
  "asset": "USDC",
  "blockchain": "Polygon",
  "externalReference": "9dd9614e-5059-4cb5-826c-ef092fd99cb9",
  "status": "pending_transaction",
  "message": "Payout crypto created"
}
```

## Consideraciones

* `walletId` debe corresponder a una wallet existente del partner autenticado.
* `destinationWallet` debe pertenecer a la misma `blockchain` enviada en el request.
* `externalReference` debe ser único por operación para facilitar conciliación e idempotencia.
