Migración a WhatsApp Cloud API
Retirar Baileys/Evolution del canal de Orvito IA y dejarlo operando sobre la API oficial de Meta: webhook nativo en n8n, token permanente de System User y app publicada en modo Live.
Fases de la migración
Cada fase habilita la siguiente. Hoy el proyecto está detenido en la Fase 2: sin token válido, nada de lo posterior puede probarse.
App de Meta y webhook verificado
Completada HechoApp creada en Meta for Developers con producto WhatsApp. Webhook apuntando a la instancia bonos-n8n verificado con el token orvito_orve_2026, workflow activo y campo messages suscrito.
Credenciales: System User y token permanente
Bloqueada HoyEl token permanente devuelve (#200) Provide valid app ID incluso contra /phone_numbers de la WABA 1575017650945458. Diagnóstico en curso: probar con token temporal para aislar si el problema es el token o la relación app↔WABA, reasignar activos al System User y regenerar.
Workflow n8n sobre Cloud API
En proceso JSON listoWorkflow corregido y entregado: filtro de statuses, payload remapeado (messages[0].from / .id / .text.body), audio vía media ID + Bearer, debounce Redis reparado (orden tail) y envío de documentos/stickers directo a Graph API. Falta insertar el Phone Number ID real y el token bueno.
Publicación de la app (modo Live)
Pendiente Tras Fase 2Política de privacidad publicada, ícono y categoría, switch a modo Activo, método de pago en la WABA y verificación del negocio para subir el límite de 250 a 1,000+ conversaciones iniciadas por día.
Pruebas end-to-end
Pendiente Tras Fase 4Batería completa desde un número no-administrador: texto simple, ráfaga de mensajes (valida el debounce de 10s), nota de voz (transcripción), respuesta con brochure PDF y sticker, y registro de asesor nuevo con el marcador [REGISTRAR_ASESOR].
Producción y monitoreo
Pendiente CierreRetiro definitivo de la instancia Baileys, monitoreo del quality rating del número, disclosure de IA en el primer mensaje (política Meta 2026) y plan de migración de identidad a BSUID para usuarios que ocultan su teléfono.
Cómo crear el System User y el token permanente
El orden importa: los activos se asignan antes de generar el token. Un token generado sin los activos asignados nace sin permisos y produce el error (#200) — no se arregla asignando después, hay que regenerarlo.
Crear el System User
business.facebook.comEntra a Configuración del negocio → menú lateral Usuarios → Usuarios del sistema → botón Agregar. Nombre sugerido: orvito-system. Rol: Administrador (el rol "Empleado" no puede administrar la WABA). Si el botón está bloqueado, falta confirmar la información del negocio o tu cuenta no es admin del Business Manager.
Asignar la app de Orvito
Activo 1 de 2Con el System User seleccionado, clic en Agregar activos → pestaña Apps → selecciona la app de Orvito → activa Administrar app (control total) → Guardar. Si la app no aparece en la lista, la app vive en otro Business Manager y ese es el verdadero origen del #200.
Asignar la cuenta de WhatsApp
Activo 2 de 2 · el que todos olvidanMismo botón Agregar activos → pestaña Cuentas → Cuentas de WhatsApp → selecciona la WABA 1575017650945458 → control total → Guardar. Sin este paso el token tendrá los scopes correctos pero la WABA no aparecerá en sus Granular Scopes, y todas las llamadas a /phone_numbers y /messages fallarán.
Generar el token permanente
Después de 2 y 3En el System User, clic en Generar token nuevo. Configuración exacta: App = la app de Orvito · Expiración = Nunca · Permisos = whatsapp_business_messaging + whatsapp_business_management. Meta lo muestra una sola vez: cópialo directo a la credencial de n8n y al vault. Es una cadena de ~200+ caracteres que empieza con EAA… — si se corta o le entra un salto de línea, deja de funcionar.
Validar antes de usar
30 segundosPega el token en developers.facebook.com/tools/debug/accesstokens y verifica cuatro cosas: Tipo = System User · App = Orvito · Expires = Never · en Granular Scopes aparece la WABA bajo ambos permisos. Si las cuatro pasan, ejecuta el nodo Verificar WABA en n8n: la respuesta trae el Phone Number ID real para los nodos de envío. Cualquier cruz en el debugger = regresa al paso que falló y regenera.
Tareas clave
En orden de ejecución. Las primeras cinco ya quedaron; el desbloqueo empieza en la prueba con token temporal.
- Verificar webhook en MetaURL de producción de n8n + token de verificación aceptados. Panel Meta
- Credencial del trigger (App ID + App Secret)Capturada en n8n; workflow activable. n8n
- Suscripción al campo messagesEl trigger dispara con mensajes entrantes. Panel Meta
- Workflow migrado a Cloud APIJSON corregido: 7 fixes, listo para importar. Autónoma
- Identificar WABA ID1575017650945458 confirmado en Configuración de la API. Panel Meta
- Probar con token temporal (24h)Aísla el problema: si funciona, el token permanente nació mal; si falla, la WABA vive en otro Business Manager. Desbloqueo
- Reasignar activos al System UserApp de Orvito (Administrar) + Cuenta de WhatsApp (control total), ANTES de generar token. Business Manager
- Regenerar token permanenteExpiración "Nunca" + whatsapp_business_messaging y _management. Copiar directo a n8n, sin intermediarios. Business Manager
- Validar token en el Access Token DebuggerTipo System User, app correcta, "Never", scopes con la WABA en Granular Scopes. Panel Meta
- Obtener el Phone Number ID realGET /v22.0/WABA_ID/phone_numbers con el nodo "Verificar WABA". El ID anterior (126093…) ya no corresponde. n8n
- Actualizar los 3 nodos de envío + credencialSend message, Enviar Documento y Enviar Sticker1 con el Phone ID nuevo; token nuevo en la credencial de WhatsApp. n8n
- Publicar política de privacidad y pasar a modo LiveRequisito de Meta para recibir tráfico de números no-administradores. Panel Meta
- Método de pago + verificación del negocioHabilita plantillas fuera de ventana y sube límites de conversación. Documentos de ORVE ya verificados previamente. Business Manager
- Batería de pruebas E2ETexto → ráfaga (debounce) → audio → documento/sticker → registro de asesor. Autónoma
- Retirar instancia Baileys y monitorear calidadApagar Evolution para este número; vigilar quality rating las primeras semanas. Autónoma
Entregables de la migración
Workflow Cloud API
Agente_Asesor_Orve_IA_CloudAPI.json — importable, con filtro de statuses, pipeline de audio nativo y envíos vía Graph API v22.0.
Credenciales de producción
System User con token permanente validado en el debugger, WABA ID y Phone Number ID documentados en el vault del proyecto.
App publicada y probada
App en modo Live con política de privacidad, negocio verificado y batería E2E aprobada desde números reales de asesores.