Con Data Exchange, tu WhatsApp Flow se conecta con tu sistema: carga datos cuando se abre un screen, llama a tu API cuando el cliente lo envía y guarda las respuestas en el contacto.
Antes de empezar
Un flow en borrador (ver RH-07). Si ya está publicado, usa Duplicar y trabaja sobre la copia.
Si tu API pide autenticación, crea el secret en Configuración → Secrets. En el flow solo va la referencia
{{secret.CLAVE}}, nunca el valor.
1. Una lista que se llena desde tu API
En el tab Diseño, agrega una Lista desplegable y ponle una Variable (name), por ejemplo
servicio.En Opciones, elige Desde Init y escribe la Clave dentro de screen.data, por ejemplo
servicios.La lista se renderiza como
${data.servicios}: tu API debe devolver{ "servicios": [{ "id": "...", "title": "..." }] }.
2. Data Exchange: Al abrir
Ve al tab Data Exchange y selecciona el screen en Screens del flow.
Paso 1 Al abrir: elige una opción.
No, el screen es estático: los textos y opciones ya están en el diseño.
Sí, con datos fijos: escribes el JSON que recibe el screen.
Sí, consultando mi API: Plazbot llama a tu endpoint y entrega la respuesta al screen.
Con tu API: elige el Método, escribe la URL y, en Headers (JSON), usa + Insertar secret para agregar
Authorization: Bearer {{secret.CLAVE}}.Presiona Probar request: ves el código HTTP, la Respuesta y la Data que recibe el screen. Si tu API tarda más de 10 s, WhatsApp corta la espera.
Al abrir solo se ejecuta en el primer screen o cuando el screen anterior envía sus datos a Plazbot.
3. Data Exchange: Al enviar
Paso 2 Al enviar: elige Enviar a mi API (o Responder con datos fijos).
Marca Enviar todas las respuestas del formulario en el body para recibirlas en el campo
form.El Botón footer del screen debe tener la acción
data_exchange(onavigate). Concomplete, WhatsApp cierra el flow sin llamar a Plazbot.En ¿A dónde va el usuario después?, elige otro screen o COMPLETE — finalizar flow. Sin selección, va al screen que devuelva tu API en el campo
screen.
En los textos puedes usar {{contact.x}} (datos del contacto), {{form.x}} (respuestas) y {{secret.X}} (secrets).
4. Guardar en contacto
Paso 3 Guardar en contacto: presiona + Agregar mapeo.
En Origen del flow elige
form.<name>(lo que respondió el cliente) odata.<clave>(lo que devolvió tu API).En Campo / variable del contacto elige un dato del contacto (Nombre, Correo, Teléfono…) o una variable personalizada; también puedes crear una nueva.
Presiona Listo, luego Guardar arriba, y publica el flow.
Los valores se guardan al enviar el screen y al terminar el flow; las opciones de listas se guardan con su texto visible.