Descripción General del Proceso
Cuando ocurre un evento en tu cuenta de Confío, como la actualización del estado de un pago, Confío envía una solicitudPOST a un endpoint que tú configuras. Esta solicitud contiene toda la información relevante sobre el evento.
Tu plataforma debe:
- Recibir la notificación del webhook en un endpoint público.
- Verificar que la solicitud proviene de Confío (usando el token de autorización).
- Procesar la información del evento y actualizar el estado correspondiente en tu sistema.
- Responder con un código de estado
200 OKpara confirmar la recepción.
Requisitos Previos
Para manejar webhooks de Confío, necesitarás:- Un endpoint HTTPS en tu servidor que sea accesible públicamente.
- Haber contactado a tu gerente de cuenta de Confío para:
- Registrar la URL de tu endpoint de webhooks
- Obtener el
PARTNER_ACCESS_TOKENque Confío usará para autenticarse en tus webhooks - Configurar los eventos que deseas recibir
- Lógica en tu backend para verificar y procesar las solicitudes entrantes.
Nota: No necesitas ser partner de Confío para recibir webhooks. Cualquier desarrollador puede registrar un endpoint de webhooks contactando a su gerente de cuenta.
Seguridad de los Webhooks
Para asegurar que las notificaciones son genuinas y provienen de Confío, debes verificar el encabezadoAuthorization en cada solicitud entrante.
- Authorization:
Bearer <PARTNER_ACCESS_TOKEN>
Eventos de Webhook
Confío envía diferentes tipos de eventos, cada uno identificado por el encabezadoX-Confio-Event y el campo event en el payload.
Cambio de Estado del Pago
- Event:
payment.statusChanged - Cuándo se envía: Cuando el estado de un pago es actualizado.
- Payload: Ejemplo real
Cambio de Estado del Intento de Pago
- Event:
paymentAttempt.statusChanged - Cuándo se envía: Cuando el estado de un intento de pago es actualizado.
- Payload: Ejemplo real
Mejores Prácticas
-
Responde Rápidamente: Tu endpoint debe responder con un código
200lo más rápido posible. Para operaciones que toman tiempo, procésalas de forma asíncrona en segundo plano para evitar timeouts. -
Manejo de Reintentos: Confío reintentará enviar un webhook si no recibe una respuesta exitosa (
2xx). Tu sistema debe ser idempotente para manejar notificaciones duplicadas sin causar problemas. - Registra las Notificaciones: Mantén un registro de los webhooks recibidos. Esto es invaluable para depurar problemas y tener una auditoría de los eventos.