Para Ecommerce
Plugins y Conectores
Lleva tu agente a donde ya están tus clientes. Daguito se integra con las plataformas de ecommerce más usadas y enruta los mensajes entrantes de cada canal hacia el flujo que elijas. Instala un plugin, conecta tu API key y empieza a conversar.
Toda integración termina enrutando los mensajes a un flujo. El plugin o conector es solo la puerta de entrada: la lógica vive en tus flujos y bases de conocimiento, y la misma configuración sirve para todos los canales.
Integraciones de ecommerce
Daguito ofrece integraciones nativas para las tres plataformas de tienda más comunes en Latinoamérica y el mundo. Cada una embebe el mismo widget de chat y sincroniza tu catálogo de productos para que el agente responda con datos reales de tu tienda.
WordPress y WooCommerce
El plugin daguito-chat embebe el agente en tu sitio de WordPress y, si usas WooCommerce, sincroniza tus productos hacia la base de conocimiento del agente.
Durante la instalación, el plugin provisiona un canal de WordPress con uno o dos flujos de agente (un asistente general y, si tienes WooCommerce, un asistente de ventas). Los productos de WooCommerce se importan en segundo plano con colas asíncronas, sin bloquear el panel.
Instalación
1. Sube el plugin a /wp-content/plugins/daguito-chat/
2. Actívalo desde el menú Plugins
3. Ve a Ajustes > Daguito Chat
4. Pega tu API key de daguito.com
5. Listo Requiere WordPress 6.0 o superior y PHP 7.4 o superior. La conexión usa application passwords de WordPress para el OAuth.
Tres formas de insertar el widget
- Widget flotante — se inyecta automáticamente en el pie de todas las páginas del sitio.
- Shortcode
[daguito-chat]— colócalo en cualquier página o entrada. - Bloque de Gutenberg — para insertarlo desde el editor de plantillas.
El shortcode acepta un parámetro opcional flow para forzar un flujo concreto en esa página, en lugar del flujo por defecto del canal:
[daguito-chat]
[daguito-chat flow="flow_xxxxx"] Shopify
La app de Daguito para Shopify se instala mediante OAuth 2.0. Al aceptar los permisos, Daguito provisiona automáticamente un flujo de agente enlazado al canal de widget e inyecta el script del widget en tu tienda.
El widget se entrega como una Theme App Extension (TAE) que aparece en el editor de temas. El comerciante la activa o desactiva desde Personalizar → Insertados de aplicación, sin tocar código.
Permisos solicitados
En producción la app pide cuatro permisos. Los dos primeros son obligatorios para inyectar el widget y leer tu catálogo; los de temas permiten gestionar la Theme App Extension:
scopes = "write_script_tags,read_products,read_themes,write_themes" La app de Shopify NO es embebida: no aparece dentro del admin de Shopify. Toda la configuración ocurre del lado del servidor después de que el comerciante acepta los permisos durante el OAuth.
Tiendanube y Nuvemshop
La integración con Tiendanube (Nuvemshop en Brasil) es solo del lado del servidor: no hay un artefacto de plugin que descargar. Tras el OAuth, Daguito inyecta el widget en tu tienda usando la Scripts API de Tiendanube.
La integración cumple con GDPR y LGPD: maneja webhooks de redacción de la tienda, borrado de clientes y solicitudes de datos.
Tiendanube envía todos sus eventos (instalación, desinstalación, suspensión y eventos de privacidad) a un único endpoint multiplexado, indicando el tipo de evento en la cabecera x-linkedstore-event.
La inyección del widget requiere subir manualmente el archivo tnb-shim.js al Portal de Partners con la opción «Instalación automática» activada. Este paso no está automatizado por CLI ni por GitHub Actions.
El widget web
El widget es un componente de chat en React que se carga de forma cross-origin desde widget.daguito.com. Es el mismo embebido para todas las plataformas: WordPress, Shopify y Tiendanube comparten exactamente el mismo widget.
Reutilizar un único widget significa que cada mejora llega a todas las tiendas a la vez, sin actualizar plugins por separado.
Qué hace el widget
- Resolución de API key — descubre la clave de la tienda automáticamente al cargar.
- Sincronización de carrito — un puente con Shopify mantiene el carrito al día durante la conversación (otras plataformas, en camino).
- Búsqueda estructurada — consulta tu catálogo y devuelve productos dentro del chat.
- Diseño responsive — optimizado para móvil de fábrica.
API del widget
El widget se autentica con una api_key (no con JWT). Bajo el prefijo /api/widget expone los endpoints públicos que mueven la conversación:
POST /api/widget/init # arranca la sesión y devuelve la config de render
POST /api/widget/message # envía un mensaje del visitante
POST /api/widget/cart/sync # sincroniza el carrito (Shopify hoy)
GET /api/widget/history/:session_id # recupera el historial de la conversación
POST /api/widget/form-response # devuelve la respuesta de un formulario Conectores de canal nativos
Más allá de las tiendas, Daguito recibe mensajes por varios canales y los enruta al flujo configurado. Cada canal entrante usa la misma tubería de ingesta: persistir el mensaje, agruparlo y ejecutar el flujo.
Widget
El canal de widget cubre el chat en tu landing y la integración con ecommerce. Es el canal por defecto que se provisiona al instalar la app de Shopify o Tiendanube.
WhatsApp Business API
El conector de WhatsApp recibe mensajes a través del webhook de la Graph API de Meta y verifica cada evento antes de procesarlo. El enrutamiento del mensaje entrante hacia un flujo está en desarrollo: hoy el webhook valida, registra y normaliza el mensaje, pero la resolución de canal a flujo todavía se está conectando.
Maneja texto, imagen, audio, video, documentos, ubicación y respuestas interactivas (listas y botones). Necesita tres variables de entorno:
# Variables de entorno requeridas
WHATSAPP_VERIFY_TOKEN # cadena que defines en el panel de Meta
WHATSAPP_ACCESS_TOKEN # token del usuario de sistema, para enviar respuestas
WHATSAPP_APP_SECRET # App Secret de Meta, para verificar X-Hub-Signature-256 Cada webhook entrante se verifica con la firma X-Hub-Signature-256 (HMAC-SHA256 del cuerpo crudo usando el App Secret). Si la firma no coincide, el mensaje se rechaza.
Webhook
El canal de webhook es un disparador por HTTP POST: cualquier sistema externo puede enviar un evento y arrancar un flujo. Es la vía para integraciones a medida que no encajan en un plugin existente.
Email e Instagram aparecen como integraciones planeadas en nuestra web, pero todavía NO están implementados en la plataforma. No documentamos su uso porque aún no existe API ni configuración para ellos.
Instalación paso a paso
Un resumen de cómo poner en marcha cada integración. En todos los casos necesitas una API key de tu cuenta de Daguito.
WordPress
Descarga el plugin, actívalo y pega tu API key en Ajustes → Daguito Chat. El plugin crea el flujo de sincronización e importa tus productos de WooCommerce automáticamente.
Shopify
Instala la app vía OAuth. Daguito provisiona el flujo enlazado al widget y, después, el comerciante activa el widget en el editor de temas (Insertados de aplicación).
Tiendanube
Inicia la instalación por OAuth. La inyección del widget requiere subir manualmente el shim al Portal de Partners con la instalación automática activada.
Hoy WhatsApp se configura a nivel de servidor con las variables de entorno (verify token, access token y app secret) y apuntando el webhook de Meta a la API de Daguito. El enrutamiento del mensaje entrante hacia tu flujo aún se está conectando; escríbenos si quieres habilitarlo.
Enrutamiento de canales y flujos
Un canal se conecta a un flujo a través de la tabla relacional channel_flow_bindings. El canal es la puerta de entrada; el flujo enlazado decide cómo responder. Así funcionan hoy los canales de widget y de ecommerce.
Una restricción de base de datos (uniq_channel_flow_bindings_active) garantiza que solo haya un flujo activo por canal. Cambiar de flujo desactiva el anterior y activa el nuevo en una sola transacción.
Puedes reutilizar el mismo flujo en varios canales, o dedicar un flujo distinto a cada uno. El canal es la entrada; el flujo es el cerebro.
Gestionar canales por API
Desde la API de administración puedes listar tus canales con su flujo activo y cambiar el enlace o el estado de cada uno:
GET /api/channels # lista los canales y su flujo activo
PATCH /api/channels/:channelId # activa el canal o cambia su flujo enlazado