WhatsApp Commerce Suite Shopware — Guía de instalación y configuración
Instalar el plugin, conectar la Meta Cloud API, configurar el webhook, las plantillas HSM y los 4 módulos en Shopware 6.5, 6.6 y 6.7.
Requisitos
- Shopware 6.5, 6.6 o 6.7 (un solo código), PHP 8.1 mínimo
- Una cuenta WhatsApp Business con un número verificado en Meta Business Suite
- Una app de Meta de tipo Business con el producto WhatsApp activado
- El worker de colas y el runner de tareas programadas de Shopware activos (
messenger:consumeyscheduled-task:run)
Instalación
- Copie la carpeta
DfWhatsAppCommerceencustom/plugins/(o suba el zip vía Extensiones → Mis extensiones). - Instale y active:
bin/console plugin:refresh bin/console plugin:install --activate DfWhatsAppCommerce bin/console cache:clear - Compile la administración y el storefront:
bin/build-administration.sh bin/build-storefront.sh
df_wac_ y 2 tareas programadas (recordatorios de carrito cada 15 min, lote de catálogo cada hora). Todo se elimina limpiamente al desinstalar, salvo que marque «conservar los datos».Configuración de la Meta Cloud API
1. Obtener las credenciales
En developers.facebook.com, cree una app Business y añada el producto WhatsApp. Obtenga: el token permanente (usuario de sistema con permisos whatsapp_business_messaging y catalog_management), el Phone number ID, el WABA ID y el App secret (Configuración de la app → Básica).
2. Crear el catálogo
En Meta Commerce Manager, cree un catálogo y conéctelo a su cuenta WhatsApp Business. Anote el ID del catálogo.
3. Configurar el webhook
En la app de Meta → WhatsApp → Configuración:
- URL de devolución de llamada:
https://sutienda.tld/df-wac/webhook - Token de verificación: el valor que introduzca en la configuración del plugin (campo «Webhook verify token»)
- Suscríbase al campo
messages
X-Hub-Signature-256 de los webhooks no se valida.4. Introducir la configuración en Shopware
Configuración → Sistema → Plugins → DataFirefly WhatsApp Commerce Suite. Rellene la tarjeta «API Meta Cloud» y pruebe desde el panel (Marketing → WhatsApp Commerce): botón Probar conexión API y envío de un mensaje de prueba.
Los 4 módulos
Catálogo Meta
Tres modos: tiempo real (con cada guardado de producto), lote horario, o manual. Las variantes se envían individualmente con el retailer_id sw_{número de artículo}. Excluya categorías si es necesario. La resincronización completa (lotes de 100) se lanza desde el panel.
Pedidos conversacionales
Máquina de estados de 6 niveles. Palabras clave reconocidas (FR/EN/DE): menu, cart, pay, human, reset, help. El idioma del cliente se detecta automáticamente. La transferencia humana envía un correo a la dirección configurada con el enlace de la conversación.
Recuperación de carritos abandonados
3 recordatorios configurables (60 min, 24 h, 72 h por defecto) enviados por la tarea programada cada 15 minutos, a los clientes cuyo teléfono de facturación se conoce. El código promocional introducido en la configuración se adjunta al 3.er recordatorio y se aplica automáticamente al carrito restaurado.
Enlace de pago firmado y notificaciones
Los enlaces de checkout y de recuperación de carrito están firmados HMAC SHA-256 con caducidad configurable (72 h por defecto). Notificaciones automáticas: confirmación de pedido, envío (con número de seguimiento), fallo de pago.
Plantillas HSM a crear en Meta Business Suite
| Plantilla | Variables del cuerpo | Botón |
|---|---|---|
| Recordatorio 1 y 2 | {{1}} nombre del cliente, {{2}} total del carrito | URL dinámica (sufijo = token) |
| Recordatorio 3 | {{1}} nombre, {{2}} total, {{3}} código promocional | URL dinámica (sufijo = token) |
| Confirmación | {{1}} nombre, {{2}} nº de pedido, {{3}} total | — |
| Envío | {{1}} nombre, {{2}} nº de pedido, {{3}} nº de seguimiento | CTA de seguimiento (opcional) |
| Fallo de pago | {{1}} nombre, {{2}} nº de pedido | CTA de reintento (opcional) |
Para los recordatorios, el botón URL de la plantilla debe tener como base https://sutienda.tld/df-wac/cart/restore?token= con sufijo dinámico {{1}}. Introduzca los nombres de las plantillas aprobadas en la configuración del plugin.
Administración
Marketing → WhatsApp Commerce: panel de KPI (conversaciones, no leídos, carritos, tasa de recuperación, errores), página Conversaciones (hilo estilo WhatsApp Web, respuesta directa), Carritos abandonados, Catálogo (registro de sincronización) y Registros (filtros por nivel/canal).
Solución de problemas
- No aparece nada en el frontal: compruebe que el «Número de WhatsApp público» está configurado (el botón flotante y los CTA dependen de él), luego
bin/console cache:clear. - Webhook 403: token de verificación distinto entre Meta y el plugin, o App secret erróneo.
- Recordatorios no enviados: compruebe que
scheduled-task:runymessenger:consumeestán en marcha, que el módulo está activo y que las plantillas HSM están aprobadas. - Productos no sincronizados: consulte la página Catálogo (estados pending/synced/error) y los Registros, canal
catalog.
RGPD
No se envía ningún dato a terceros fuera de la Meta WhatsApp Cloud API. Las conversaciones y los números se almacenan localmente en las tablas df_wac_ y se eliminan al desinstalar.