Ir al contenido

Seguridad al usar Webhooks

Ver como Markdown Lee esta página como texto plano Abrir en ChatGPT Haz preguntas sobre esta página Abrir en Claude Haz preguntas sobre esta página Abrir en Perplexity Haz preguntas sobre esta página

Verificar la firma de los webhooks

Además de la firma, puedes asociar cada notificación con una sesión concreta enviando un token propio en optionals.

El campo optionals es un objeto comodín que puedes enviar en la petición de creación de sesión. Verificamex almacenará este objeto y lo incluirá exactamente igual en el payload de la notificación de webhook.

Esto te permite implementar un mecanismo de tokens de validación de un solo uso o firmas personalizadas:

  1. Genera un Token Secreto: En tu servidor, genera un token único y aleatorio para cada sesión de verificación.
  2. Envía el Token: Al crear la sesión de verificación, incluye el token dentro de un campo personalizado (por ejemplo, custom_webhook_secret) dentro del objeto optionals.
  3. Guarda el Token: Registra ese token de forma temporal en tu base de datos asociado a la sesión de verificación.
  4. Valida la Notificación: Cuando tu servidor reciba el webhook, comprueba que el custom_webhook_secret que viene dentro de optionals coincida con el que tienes almacenado.

Al enviar la solicitud para crear la sesión de verificación, define el objeto optionals. Puedes estructurarlo libremente según tus necesidades.

{
"validations": "INE",
"redirect_url": "https://tusitio.com/finalizado",
"webhook": "https://tu-api.com/v1/webhooks/verificamex",
"optionals": {
"client_id": "cli_92813",
"custom_webhook_secret": "vfx_sec_89dfh23jkd9812s"
}
}

A continuación se muestra cómo se visualiza esta estructura en la solicitud:

Petición de sesión usando optionals