Si estás creando un WhatsApp Flow que se conecta a un endpoint externo (por ejemplo, para consultar disponibilidad, procesar formularios o integrar con tu sistema), necesitas configurar una clave pública RSA de 2048 bits en tu línea de WhatsApp. Esta clave permite el intercambio seguro de datos entre el cliente de WhatsApp y tu servidor.
¿Cuándo necesito hacer esto?
Debes configurar una clave de encriptación cuando tu Flow utiliza data_api_version en su JSON, es decir, cuando las pantallas del Flow se comunican con un endpoint externo para enviar o recibir datos dinámicos.
Si tu Flow es estático (sin conexión a endpoint), no necesitas seguir el contenido de este artículo.
Paso 1: Generar tu par de claves RSA
Primero, genera un par de claves RSA de 2048 bits. Abre tu terminal y ejecuta:
openssl genrsa -des3 -out private.pem 2048
Se te pedirá una contraseña. Recuérdala, ya que la necesitarás en tu servidor para desencriptar los datos.
Luego, exporta la clave pública:
openssl rsa -in private.pem -outform PEM -pubout -out public.pem
Ahora tienes dos archivos:
private.pem — La clave privada. Esta va en tu servidor y nunca debe compartirse.
public.pem — La clave pública. Esta es la que vas a subir a Wasapi.
Paso 2: Adjuntar la clave pública a tu línea de WhatsApp
Ingresa a Wasapi y ve a la sección WhatsApp Flows.
Haz clic en el botón Clave de encriptación en la parte superior.
Selecciona la línea de WhatsApp a la que deseas asociar la clave.
Puedes pegar el contenido de tu archivo
public.pemdirectamente en el campo de texto, o usar el botón Subir archivo .pem para seleccionar el archivo desde tu computadora.Haz clic en Adjuntar clave.
Si la clave se adjuntó correctamente, verás un indicador con el estado VALID. Si en algún momento necesitas descargar la clave que tienes configurada, puedes usar el botón Descargar clave dentro del mismo modal.
Nota: Si tienes múltiples líneas de WhatsApp conectadas a una misma cuenta WABA, debes configurar la clave pública en cada línea por separado.
Paso 3: Configurar tu endpoint
Con la clave pública registrada, WhatsApp encriptará los datos que envía a tu endpoint usando esa clave. Tu servidor debe:
Recibir las peticiones POST encriptadas.
Desencriptar los datos usando tu clave privada.
Procesar la solicitud y generar una respuesta.
Encriptar la respuesta y devolverla al cliente.
¿Cuándo debo volver a subir mi clave?
Debes volver a configurar tu clave pública en los siguientes casos:
Cuando re-registras tu número en la Cloud API.
Cuando migras tu número entre On-Prem y Cloud API.
Cuando recibes alertas de errores como
public-key-missingopublic-key-signature-verification.
Más información
Para conocer los detalles técnicos de la encriptación y cómo implementar correctamente tu endpoint, consulta la documentación oficial de Meta:
Aprende a conectar endpoints externos paso a paso
En Wasapi tenemos un curso completo en el que puedes aprender en detalle cómo crear WhatsApp Flows conectados a endpoints externos: desde la generación de claves, hasta la implementación de tu servidor con encriptación y lógica de negocio. Si quieres dominar esta funcionalidad, te recomendamos tomarlo.