Skip to main content
Un webhook es una petición HTTP POST que Cobrix envía a tu servidor cuando ocurre algo relevante. Tu receptor debe validar que la petición proviene de Cobrix, guardar el evento y responder rápido.

Antes de programar

Una URL pública con HTTPS para sandbox
El secreto del webhook guardado como variable de entorno
El evento webhook.test habilitado para la prueba inicial
Acceso al cuerpo crudo de la petición, antes de convertirlo a objeto

Configura el canal correcto

En Cobrix abre Configuración → Integraciones → Webhooks. La misma pantalla reúne ambos canales, pero los presenta en secciones separadas para que el contrato y las acciones de cada endpoint sean explícitos: Ambos canales pueden apuntar a la misma URL HTTPS, pero cada uno conserva su propio secreto y su propia fórmula de firma. Los endpoints de documentos aparecen individualmente por partner y ambiente; el drawer muestra ese vínculo, el protocolo y los nombres técnicos antes de guardar.
Usa endpoint y secreto distintos para sandbox y producción. El ambiente se determina por la aplicación Cobrix desde la que configuraste el webhook.
collection_document.cancelled pertenece al webhook general. invoice.canceled pertenece a cobrix_invoice_v1. Aunque ambos representan una anulación, no comparten envelope ni fórmula de firma.

Configurar, administrar o eliminar un endpoint

La vista Endpoints muestra únicamente configuraciones existentes. Para crear un endpoint de documentos, selecciona Configurar endpoint público en la parte superior y elige dentro del panel el partner que todavía no tiene una URL configurada. Cada endpoint configurado incluye sus propias acciones: Al eliminar un endpoint de documentos, Cobrix deja de enviarle futuras entregas invoice.* y retira su fila de la tabla. La eliminación no borra el partner, sus llaves API ni los documentos existentes: el partner vuelve a estar disponible en Configurar endpoint público. Si lo configuras nuevamente, debes establecer un secreto nuevo en el receptor.
La diferencia no es de permisos ni de calidad de servicio. El webhook general es una suscripción configurable para varios dominios; cobrix_invoice_v1 es un contrato de compatibilidad dedicado, único por partner y ambiente, con eventos administrados por Cobrix.

Flujo de una entrega

1

Cobrix construye el evento

El webhook general usa un envelope con id, event y data. El canal de documentos usa {invoice, event}.
2

Cobrix firma los bytes

La firma HMAC-SHA256 se calcula sobre el cuerpo JSON exacto. Los eventos generales incluyen también un timestamp.
3

Tu endpoint verifica

Lee el cuerpo crudo, calcula la firma esperada y compárala en tiempo constante.
4

Tu endpoint deduplica

Para el canal general guarda payload.id. Para documentos usa event.type + invoice.id. Si la clave ya existe, no repitas la acción.
5

Tu endpoint responde

Encola el trabajo y devuelve una respuesta exitosa inmediatamente. Para cobrix_invoice_v1 debe ser HTTP 200 exacto.

Receptor mínimo en Node.js

No uses express.json() antes de esta ruta. Si el framework vuelve a serializar el objeto, espacios, orden o escapes pueden cambiar y la firma dejará de coincidir.

Qué evento procesar primero

Confirmar un pago

Úsalo como señal final de pago confirmado.

Probar conectividad

Comprueba URL, firma, timeout y respuesta sin crear movimientos reales.