Solución de problemas
¿Tienes problemas? No te preocupes — ¡la mayoría tienen soluciones sencillas! Busca tu problema a continuación y sigue la solución.
Fallo en la verificación del webhook
Error: "The callback URL or verify token couldn't be validated."
Posibles causas y soluciones:
| # | Causa | Solución |
|---|---|---|
| 1 | La URL no es HTTPS | Instala un certificado SSL en tu servidor |
| 2 | Error tipográfico en la URL de callback | Copia y pega directamente desde la configuración del módulo |
| 3 | Error tipográfico en el verify token | Copia y pega directamente desde la configuración del módulo |
| 4 | El servidor bloquea las peticiones | Revisa tu firewall / plugins de seguridad |
| 5 | Problemas de redirección en .htaccess | Asegúrate de que la URL no redirija (sin problemas de redirección www ↔ no-www) |
| 6 | Seleccionaste "User" en lugar de "Page" | Cambia el menú desplegable a "Page" en los webhooks de Facebook |
Cómo depurar:
- Abre tu navegador y visita tu Webhook URL directamente:
https://yourcrm.com/facebookleadsintegration/webhook?hub.mode=subscribe&hub.verify_token=YOUR_TOKEN&hub.challenge=test123 - Si funciona correctamente, deberías ver
test123mostrado en la página - Si ves una página de error, el problema está en tu servidor
¿Sigue sin funcionar? Revisa los logs de error de tu servidor en /path/to/your/crm/application/logs/
Error "Invalid Scopes" durante el inicio de sesión en Facebook
Error: "Invalid Scopes: pages_manage_metadata"
Solución:
Esto significa que el módulo solicita un permiso obsoleto. Asegúrate de usar la última versión del módulo (v2.0.0+), que usa los permisos correctos:
pages_show_listpages_read_engagementleads_retrievalpages_manage_adsads_management
Actualiza tu módulo a la última versión para solucionarlo.
"Error Accessing App" / "App Not Active"
Error: Al intentar conectar con Facebook ves "Error Accessing App" o "The app is not active."
Posibles causas y soluciones:
| # | Causa | Solución |
|---|---|---|
| 1 | App ID incorrecto en la configuración del módulo | Verifica que el App ID coincida con tu app Meta |
| 2 | La app fue eliminada o deshabilitada | Revisa tu app en developers.facebook.com/apps |
| 3 | No eres admin/desarrollador de la app | Añádete en App Roles → Roles |
| 4 | Restricciones de la app | Revisa App Settings → Basic → App Restrictions |
El lead de prueba funciona pero los leads reales no llegan
El botón "Send Test Lead" del módulo funciona, pero los leads reales de Facebook no aparecen.
Comprueba esto:
| # | Comprobación | Cómo |
|---|---|---|
| 1 | ¿Tu página está suscrita? | Settings → Connected Pages → Debe mostrar "Monitoring" |
| 2 | ¿El webhook está verificado? | Settings → Connection Status → Webhook debe estar en verde |
| 3 | ¿"leadgen" está suscrito? | Meta App → Webhooks → Page → "leadgen" debe estar marcado |
| 4 | ¿El anuncio usa la página correcta? | Ads Manager → Ad Set → Asegúrate de que usa la página suscrita |
| 5 | ¿El anuncio está activo? | Ads Manager → El estado de la campaña debe ser "Active" |
Prueba con la herramienta de Facebook:
Usa la Lead Ads Testing Tool para enviar un lead de prueba real del webhook. Si esto funciona pero los anuncios reales no, el problema probablemente está en la configuración de tu campaña de anuncios.
Error 500 en las páginas del módulo
Síntoma: Las páginas del módulo muestran una página en blanco o "500 Internal Server Error"
Soluciones:
-
Revisa los logs de error de PHP:
/path/to/your/crm/application/logs/log-YYYY-MM-DD.php -
Causas comunes:
- Versión de PHP demasiado antigua (necesitas 7.4+)
- Extensiones PHP faltantes (cURL, JSON)
- Permisos de archivos incorrectos
- Archivos del módulo corruptos durante la subida
-
Corregir permisos de archivos:
find /path/to/modules/facebookleadsintegration -type f -exec chmod 644 {} \;
find /path/to/modules/facebookleadsintegration -type d -exec chmod 755 {} \; -
Vuelve a subir el módulo si los archivos podrían estar corruptos
El botón Copy no funciona
Síntoma: Hacer clic en el botón "Copy" junto a la webhook URL o verify token no hace nada.
Solución:
- Asegúrate de que tu CRM se acceda por HTTPS — la API del portapapeles requiere un contexto seguro
- Prueba seleccionando manualmente el texto y pulsando Ctrl+C
- Revisa la consola del navegador en busca de errores de JavaScript (F12 → pestaña Console)
Los leads se quedan en "Pending Retry"
Síntoma: Sync History muestra leads con estado "Pending" que no se están procesando.
Soluciones:
- Procesar manualmente: Ve a Sync History → Haz clic en "Process Retry Queue"
- Revisa el cron: La cola de reintento se procesa automáticamente mediante el cron job de Perfex CRM
- Asegúrate de que tu cron job esté ejecutándose: Setup → Settings → Cron Job
- La URL del cron debe llamarse cada 5 minutos
- Revisa el mensaje de error en Sync History para ver por qué falló el lead inicialmente
Token de acceso expirado
Síntoma: La prueba de conexión falla con "Token expired" o los leads dejan de llegar.
Solución:
El módulo intercambia tokens de corta duración por tokens de larga duración (válidos unos ~60 días). Para actualizar:
- Ve a Meta Leads → Settings
- Desplázate hasta Connected Pages
- Haz clic en "Connect with Facebook" de nuevo
- Inicia sesión y concede permisos
- El token se actualiza automáticamente
Pon un recordatorio para reconectar cada 50 días y mantener el token actualizado.
Los campos no se mapean correctamente
Síntoma: Los datos del lead aparecen en campos incorrectos o faltan.
Pasos para depurar:
- Ve a Sync History → Haz clic en una entrada de lead para ver los datos crudos
- Comprueba qué nombres de campos envía Facebook
- Ve a Field Mapping → Asegúrate de que el nombre del campo de Facebook coincida
- Recuerda: los campos estándar (email, full_name, phone_number) se mapean automáticamente
Problemas comunes de nombres de campos:
| Lo que esperas | Lo que envía Facebook | Solución |
|---|---|---|
name | full_name | Ya se mapea automáticamente |
phone | phone_number | Ya se mapea automáticamente |
company | company_name | Ya se mapea automáticamente |
budget | custom_question_1 | Crea un mapeo personalizado |
El módulo no aparece después de la instalación
Soluciones:
- Revisa la ubicación de los archivos: La carpeta del m ódulo debe estar en
modules/facebookleadsintegration/ - Revisa el nombre del archivo: El archivo principal debe ser
facebookleadsintegration.php(todo en minúsculas) - Activa el módulo: Ve a Setup → Modules → Haz clic en Activate
- Revisa los permisos: Los archivos deben ser legibles por el servidor web (644 para archivos, 755 para directorios)
Problemas específicos del servidor
Usuarios de Cloudflare
Si usas Cloudflare, añade las IPs del webhook de Facebook a la lista blanca:
- Ve a Cloudflare → WAF (Web Application Firewall)
- Crea una regla para Allow peticiones desde Facebook
- O añade estas a la lista blanca de tu firewall:
- Las IPs del webhook de Facebook están en:
https://developers.facebook.com/docs/sharing/webmasters/getting-started/webhooks/
- Las IPs del webhook de Facebook están en:
Usuarios de Nginx
Asegúrate de que tu configuración de Nginx permita peticiones POST a la webhook URL y no bloquee el User-Agent de Facebook.
Hosting compartido
La mayoría del hosting compartido funciona bien. Si tienes problemas:
- Comprueba si
allow_url_fopenestá habilitado en PHP - Comprueba si la extensión
cURLestá instalada - Comprueba si tu host bloquea webhooks entrantes (algunos hosts centrados en seguridad lo hacen)
¿Sigues necesitando ayuda?
Si ninguna de las soluciones anteriores resuelve tu problema:
- Revisa los logs de error de Perfex CRM
- Revisa el Sync History del módulo en busca de mensajes de error
- Captura una captura de pantalla de cualquier mensaje de error
- Contáctanos en [email protected] con:
- Tu versión de Perfex CRM
- Versión de PHP
- El mensaje de error
- Pasos para reproducir el problema
Consulta el FAQ para más respuestas FAQ