Verificar la Firma del Webhook de WhatsApp: Por Qué Importa
Verificar la firma del webhook de WhatsApp confirma que cada notificación que recibe tu servidor viene realmente de Meta y no de alguien que armó una llamada falsa imitando la estructura de la API.
Qué es un webhook en el contexto de WhatsApp
Cuando un cliente te escribe por WhatsApp, Meta no espera a que vos le preguntes si hay mensajes nuevos: le avisa a tu servidor mandando una notificación a una URL que vos configuraste de antemano, llamada webhook. Ese mismo mecanismo se usa para avisar el estado de un mensaje enviado, si se entregó, se leyó o falló. El problema es que esa URL, si no está protegida, técnicamente podría recibir una llamada de cualquiera que conozca la dirección, no solo de Meta.
Para qué sirve verificar la firma
Cada notificación que manda Meta a tu webhook incluye una cabecera llamada X-Hub-Signature-256, que es una firma calculada con el App Secret de tu aplicación, un dato que solo vos y Meta conocen. Tu servidor puede recalcular esa misma firma con el cuerpo del mensaje recibido y comparar el resultado: si coincide, la notificación es legítima; si no coincide, alguien mandó algo que no vino realmente de Meta y hay que descartarlo sin procesarlo.
| Paso | Qué hace |
|---|---|
| 1. Meta manda el webhook | Incluye la cabecera X-Hub-Signature-256 con la firma |
| 2. Tu servidor recibe la notificación | Toma el cuerpo crudo del mensaje, sin modificarlo |
| 3. Recalcula la firma | Usando el App Secret y el mismo algoritmo (HMAC-SHA256) |
| 4. Compara ambas firmas | Si coinciden, procesa; si no, rechaza la notificación |
Error común: algunos frameworks modifican o parsean el cuerpo de la solicitud antes de que puedas calcular la firma, y eso rompe la verificación aunque el webhook sea legítimo. Hay que calcular la firma sobre el cuerpo exactamente como llega, sin transformarlo antes.
Qué riesgo corre un servidor que no verifica la firma
Sin esta verificación, cualquiera que descubra la URL del webhook podría mandarle a tu servidor datos falsos con el formato de un mensaje de WhatsApp: un pedido inventado, una confirmación de pago que nunca pasó, o instrucciones que el agente termina ejecutando como si fueran reales. No es un riesgo teórico: es la puerta de entrada más directa para manipular un sistema automatizado que confía ciegamente en todo lo que le llega a esa URL.
Dónde se configura esto en la práctica
El App Secret con el que se calcula la firma está disponible en la configuración de la aplicación dentro de Meta for Developers, en la misma sección donde se generan los tokens de acceso. La verificación en sí se implementa del lado del servidor que recibe el webhook, sea código propio o una plataforma de automatización como n8n, y es responsabilidad de quien construye la integración, no algo que Meta resuelva por defecto.
Cómo lo hace agenteala
agenteala implementa la verificación de firma en cada webhook que recibe de Meta, para que ningún mensaje falso llegue a procesarse como si fuera una conversación real, un paso de seguridad básico que muchas integraciones armadas rápido terminan salteando.
Preguntas frecuentes
¿Qué cabecera trae la firma del webhook de WhatsApp?
Se llama X-Hub-Signature-256 y viaja en cada notificación que Meta manda a tu servidor.
¿Con qué se calcula la firma?
Con el App Secret de tu aplicación de Meta y el algoritmo HMAC-SHA256 aplicado sobre el cuerpo de la notificación.
¿Qué pasa si no verifico la firma del webhook?
Tu servidor queda expuesto a recibir notificaciones falsas que imitan el formato de WhatsApp sin haber salido realmente de Meta.
¿Por qué a veces la verificación falla aunque el webhook sea legítimo?
Porque algunos frameworks modifican el cuerpo de la solicitud antes de calcular la firma; hay que usarlo tal cual llega, sin transformarlo.
¿Dónde se obtiene el App Secret?
En la configuración de la aplicación dentro de Meta for Developers, en la misma sección donde se gestionan los tokens de acceso.
Probá el agente antes de decidir
agenteala arma y mantiene el agente a la medida de tu negocio — no es un bot genérico: atiende, gestiona y vende por tu WhatsApp. Probalo en 2 minutos o hablá con un asesor.
Seguinos en Instagram @agenteala