Webhooks Salientes
CUCU entrega eventos a tu URL registrada usando el estándar Standard Webhooks para que la verificación de firma sea sencilla y predecible.Headers en cada entrega
| Header | Descripción |
|---|---|
webhook-id | UUID único de esta entrega. Úsalo como delivery_id para idempotencia en tu receptor. |
webhook-timestamp | UNIX timestamp del momento del envío. |
webhook-signature | Firma de autenticidad. Formato: v1,<base64(HMAC-SHA256)>. |
webhook-event | Tipo de evento (payment.confirmed, payment.failed, etc.). |
Verificación de firma
firma_esperada con el valor en webhook-signature (después del prefijo v1,).
Ejemplo en Python:
Eventos
payment.confirmed
El pago fue recibido y confirmado en la blockchain. Acredita el pedido en tu sistema.
payment.failed
El pago fue detectado pero no pudo procesarse (monto incorrecto, error de red, etc.).
charge.expired
El usuario no pagó dentro del tiempo de expiración del cobro.
charge.cancelled
El cobro fue cancelado programáticamente (via POST /cancel).
webhook.test
Evento sintético generado al llamar POST /merchants/me/webhook/test. No representa un pago real.
Política de reintentos
| Intento | Delay |
|---|---|
| 1 (inmediato) | 0s |
| 2 | ~30s |
| 3 | ~2min |
| 4 | ~8min |
| 5 | ~30min |
| 6 | ~2h |
failed y puedes consultarla en tu dashboard o contactar soporte CUCU.
Tu endpoint debe responder 2xx para que CUCU considere la entrega exitosa. Cualquier otro código HTTP (incluyendo 3xx y 5xx) activa el siguiente reintento.