Requisitos previos
Lo que tiene que estar en pie antes de ejecutar el primer caso. Si algo de esto falta, los fallos que veas no serán del CRM.
En Meta
- Cuenta de Meta Business verificada.
- App de tipo Business creada en
developers.facebook.com. - Producto WhatsApp añadido a la app.
- Un número de teléfono registrado en WhatsApp Business Platform. No puede ser un número que ya use la app normal de WhatsApp: hay que darlo de baja allí primero o usar uno nuevo.
- Token de acceso permanente (el token de prueba caduca en 24 horas y te hará creer que la integración se rompió sola).
- Página de Facebook conectada a la app, para el disparador de RF-02.
- Las plantillas enviadas a aprobación. Tardan de minutos a un día.
Las siete están en la migración
0011_seed_config.sqlcon su texto y variables; hay que darlas de alta en el gestor de plantillas de Meta con el mismo nombre.
En el servidor
- El endpoint público responde:
https://crm-api.chewcud.tech/health→ok - El certificado es válido (Meta no acepta certificados autofirmados).
- La API arrancada con las variables de Credenciales y variables.
- PostgreSQL en pie con la base
crm. - Datos de demostración cargados (
crm-api seed-demo) o datos reales.
Comprobación de humo
Antes del CP-01, que estas tres respondan:
curl -s https://crm-api.chewcud.tech/health
# ok
curl -s -X POST https://crm-api.chewcud.tech/graphql \
-H 'content-type: application/json' \
-d '{"query":"{__typename}"}'
# {"data":{"__typename":"Query"}}
curl -s -o /dev/null -w '%{http_code}\n' https://crm.chewcud.tech/
# 200
Lo que NO hace falta
- No hace falta el túnel de Cloudflare: la API va por Caddy con registro A.
- No hace falta abrir el puerto 80: el certificado se emite por DNS-01.
- No hace falta desplegar nada nuevo: el webhook ya está implementado y en producción, sólo espera credenciales.
Siguiente: Credenciales y variables