Webhooks duales
Por qué una integración híbrida recibe dos formatos de webhook y cómo manejarlos en un solo endpoint.
En el modelo Híbrido, una sola transacción puede emitir dos webhooks: uno en formato Long (de Hosted/SDK, para la tarjeta) y otro en formato Short (de API Direct, para métodos no-tarjeta, retiros y reembolsos). Esto es por diseño.
Por qué llegan webhooks duplicados
Como cada leg de tu integración (SDK/Hosted para tarjetas, API Direct para todo lo demás) tiene su
propio canal de webhooks, recibirás notificaciones de ambos. Un mismo pago puede generar un evento
Pending y luego un Success por cada canal involucrado.
Los webhooks duplicados en modo Híbrido son intencionales (Pending + Success). Implementa
siempre la deduplicación usando metadata.external_id de tu lado.
Qué necesitas configurar
- Dos endpoints de webhook, uno por estilo de integración.
- Lógica de manejo separada: webhooks estilo Hosted/SDK para las transacciones con tarjeta, y estilo API Direct para los demás métodos, retiros y reembolsos.
Lista de deduplicación
- Deduplica por
metadata.external_id(funciona en formatos Short + Long). - Mantén un índice
idempotency_keyen tu base de datos. - En modo Híbrido, trata el par Pending + Success como intencional.
- Verifica siempre el estado final con
GET /api/v1/transactions/{id}/. - Maneja
Declinedpara retiros como estado terminal.
Siguientes pasos
¿Te resultó útil esta página?
