# Webhooks de retiro

> Versión en Markdown de la documentación pública de la API v1 de Bifrost Crypto, para agentes de IA y generadores de código. El mismo contenido de las páginas HTML, generado de la misma fuente, sin navegación ni estilos.
>
> Versión HTML: https://bifrostcrypto.com/es/docs/webhooks-payments
> Archivos relacionados: [ai.md](https://bifrostcrypto.com/ai/es.md) · [Postman](https://bifrostcrypto.com/postman-collection.json) · [OpenAPI](https://bifrostcrypto.com/openapi.json) · [llms.txt](https://bifrostcrypto.com/llms.txt)
> Otros idiomas: [Português](https://bifrostcrypto.com/ai/pt-BR/webhooks-payments.md) · [English](https://bifrostcrypto.com/ai/en/webhooks-payments.md) · [Français](https://bifrostcrypto.com/ai/fr/webhooks-payments.md)
> API v1 · último cambio de contrato el 2026-10-10

Avisos de un payout creado por la API.

## `payment_processed` · Payout Confirmado

Se envía cuando el retiro se procesa. status es success. El cuerpo trae la billetera, los montos, la red y customer_info.

```json
{
  "data": {
    "status": "success",
    "wallet": "0xBeef0000000000000000000000000000000000b2",
    "network": "BinanceSmartChain",
    "created_at": "2026-03-01 13:00:00",
    "fiat_amount": "40.00",
    "network_fee": "0.00000400",
    "confirmed_at": "2026-03-01 13:00:06",
    "percent_rate": "0.50",
    "reference_id": "33333333-3333-4333-8333-333333333333",
    "transactions": "0xdef0000000000000000000000000000000000000000000000000000000000abc",
    "crypto_amount": "40.00000000",
    "customer_info": "customer@example.com",
    "fiat_currency": "USD",
    "crypto_currency": "USDT",
    "internal_reference": "44444444-4444-4444-8444-444444444444"
  },
  "event": "payment_processed",
  "timestamp": "2026-03-01 13:00:16"
}
```

## `payment_failed` · Payout Fallido

Se envía cuando el retiro no puede completarse. El cuerpo trae solo status, reference_id e internal_reference.

```json
{
  "data": {
    "status": "failed",
    "reference_id": "55555555-5555-4555-8555-555555555555",
    "internal_reference": "66666666-6666-4666-8666-666666666666"
  },
  "event": "payment_failed",
  "timestamp": "2026-03-01 13:05:00"
}
```

> Su integración debe tratar este aviso: localice el payout por reference_id o internal_reference y decida qué informar a su cliente. Para pagar de nuevo, cree un payout nuevo con un reference_id nuevo.

**`customer_info`** (Payin & Payout)

Su propio identificador del cliente, como ID de usuario, e-mail o número de pedido. Se devuelve en los webhooks y listados, así sabe de quién es cada transacción, incluidos los payins que Bifrost crea por su cuenta (pagos adicionales y depósitos en direcciones fijas), cuyo reference_id genera Bifrost.

`"customer_info": "user@email.com" o "user_12345_order_67890"`
