❌ PROBLEMA DETECTADO
Error típico: Al acceder a /facebook/login/ recibes un error de permisos o restricciones.
Mensaje común: "Esta app no está disponible" o "Requires business verification"
Causa: Facebook requiere verificación de negocio para apps en modo "Live", PERO hay una solución simple.
✅ SOLUCIÓN CONFIRMADA (100% FUNCIONAL)
NO necesitas verificación de negocio para proyectos universitarios.
Puedes usar Facebook API en Modo Development con hasta 5 cuentas de prueba sin ninguna restricción.
Perfecto para tu práctica académica de la UTH.
🔧 Solución Paso a Paso (15 minutos)
📍 ¿Dónde verificar?
- Ve a developers.facebook.com
- Inicia sesión con tu cuenta de Facebook
- Clic en "My Apps" (Mis Aplicaciones)
- Selecciona tu aplicación
- En la parte superior derecha verás un interruptor de modo
🔍 Lo que debes ver:
┌─────────────────────────────────────┐ │ [Logo Facebook] My App Dashboard │ │ │ │ Mode: [ Development ▼ ] ← AQUÍ │ └─────────────────────────────────────┘
✅ Debe decir: Development
❌ Si dice: Live ← Ahí está el problema
¿Cómo cambiar a Modo Development?
- Haz clic en el interruptor de modo (arriba a la derecha)
- Selecciona "Switch to Development"
- Confirma el cambio
- Listo, tu app ahora está en modo desarrollo
⚠️ IMPORTANTE: En modo Development, solo TÚ y las personas que agregues como "Testers" pueden usar la app. Esto es PERFECTO para tu proyecto universitario.
👥 ¿Para qué agregar testers?
Si tu profesor o compañeros necesitan probar tu aplicación, debes agregarlos como "Testers".
Límite: Hasta 5 testers en modo gratuito (más que suficiente).
Cómo agregar un tester:
- En el Dashboard de tu app, ve a la sección lateral izquierda
- Busca y haz clic en "Roles"
- Haz clic en "Testers"
- Haz clic en botón verde "Add Testers"
- Ingresa el nombre de Facebook o correo electrónico del profesor/compañero
- Haz clic en "Submit"
- La persona recibirá una invitación en Facebook que debe ACEPTAR
📧 El tester debe:
- Revisar sus notificaciones de Facebook
- Aceptar la invitación como "Tester de la aplicación"
- Ya podrá usar tu aplicación sin problemas
✅ Permisos que NO requieren revisión:
Estos permisos están aprobados automáticamente en modo Development:
public_profile- Nombre, foto, ID del usuario ✅email- Correo electrónico ✅
⚠️ Permisos que requieren configuración extra:
Para publicar en Facebook, necesitas permisos avanzados. En modo Development, puedes usarlos SIN App Review siguiendo estos pasos:
Configurar permisos para PUBLICAR:
- Ve a tu app en Facebook Developers
- En el menú lateral, busca "Facebook Login" → "Settings"
- Desplázate hasta encontrar "Permissions and Features"
- Busca estos permisos y haz clic en "Request" (o ya estarán disponibles):
pages_show_listpages_read_engagementpages_manage_posts
💡 TRUCO IMPORTANTE
En modo Development, estos permisos funcionan INMEDIATAMENTE sin esperar aprobación.
Solo necesitas asegurarte de que tu app esté en Development Mode.
⚠️ REQUISITO CRÍTICO
Facebook bloqueó publicaciones en perfiles personales desde 2018.
Debes crear una Página de Facebook (es gratis y toma 2 minutos).
Crear tu Página de Facebook:
- Ve a facebook.com/pages/create
- Selecciona "Comunidad o Figura Pública"
- Nombre de la Página: "Proyecto UTH Facebook API - [Tu Nombre]"
Ejemplo: "Proyecto UTH Facebook API - Juan Pérez" - Categoría: Busca y selecciona "Educación"
- Haz clic en "Crear Página"
- OPCIONAL: Agrega descripción, foto de perfil, etc.
- Listo! Ya tienes tu página
💡 Nota: Las publicaciones que hagas desde tu app Django aparecerán en esta PÁGINA, no en tu perfil personal.
Esto es normal y es como funciona la API de Facebook actualmente.
Actualizar scope en views.py:
Abre social_app/views.py y busca la función facebook_login()
❌ CÓDIGO INCORRECTO (causará errores):
auth_url += "&scope=email,public_profile,user_posts"
✅ CÓDIGO CORRECTO (para modo Development):
auth_url += "&scope=email,public_profile,pages_show_list,pages_read_engagement,pages_manage_posts"
Explicación de cada permiso:
email- Obtener correo del usuariopublic_profile- Nombre y foto de perfilpages_show_list- Listar páginas que administras ← NUEVOpages_read_engagement- Leer likes, comentarios ← NUEVOpages_manage_posts- PUBLICAR en páginas ← CLAVE
Checklist antes de probar:
- ☐ App en modo Development
- ☐ Página de Facebook creada
- ☐ Código actualizado con permisos correctos
- ☐ URLs de redirección configuradas:
http://localhost:8000/facebook/callback/ - ☐ Servidor Django corriendo:
python manage.py runserver
Proceso de prueba:
- Inicia tu servidor Django:
python manage.py runserver
- Abre tu navegador y ve a:
http://localhost:8000/facebook/login/
- Serás redirigido a Facebook - Verás un diálogo pidiendo permisos
- IMPORTANTE: Facebook mostrará qué permisos solicita:
- ✅ Acceso a tu perfil público
- ✅ Tu dirección de correo electrónico
- ✅ Administrar tus Páginas de Facebook
- ✅ Publicar en tus Páginas
- Haz clic en "Continuar como [Tu Nombre]"
- Si Facebook pregunta qué página usar, selecciona la página que creaste
- Deberías ser redirigido a:
http://localhost:8000/dashboard/ - ¡Éxito! Ya estás autenticado
🔧 Solución a Errores Comunes
Error 1: "Esta app no está disponible"
Causa: App en modo "Live" sin verificación de negocio
Solución:
- Cambia a modo Development (PASO 1)
- Agrégate como Tester si es necesario
Error 2: "Invalid OAuth Redirect URI"
Causa: La URL de callback no coincide
Solución:
- Ve a Facebook Developers → Tu App → Facebook Login → Settings
- En "Valid OAuth Redirect URIs" verifica que esté EXACTAMENTE:
http://localhost:8000/facebook/callback/
- Guarda cambios y espera 1-2 minutos
Error 3: "Requires business verification"
Causa: Intentando usar permisos avanzados en modo Live
Solución:
- Cambia a modo Development (PASO 1)
- En Development mode NO necesitas verificación
Error 4: "No administras ninguna Página de Facebook"
Causa: No has creado una Página
Solución:
- Crea una Página de Facebook (PASO 4)
- Asegúrate de ser administrador de la página
Error 5: Permisos no funcionan
Causa: Permisos no actualizados en el código
Solución:
- Actualiza el scope en views.py (PASO 5)
- Cierra sesión de Facebook en tu app
- Vuelve a hacer login para obtener nuevos permisos
📋 Resumen: Configuración para Proyectos Universitarios
✅ Configuración Perfecta para UTH
| Modo de App: | Development ✅ |
| Verificación de Negocio: | NO requerida ✅ |
| App Review: | NO requerido ✅ |
| Usuarios permitidos: | Tú + 5 testers (suficiente) ✅ |
| Publicaciones: | En Página de Facebook ✅ |
| Costo: | 100% GRATIS ✅ |
🎉 ¡Listo para tu Proyecto!
Con esta configuración podrás:
- ✅ Iniciar sesión con Facebook
- ✅ Obtener datos del perfil
- ✅ Publicar en tu Página de Facebook
- ✅ Leer métricas (likes, comentarios, shares)
- ✅ Demostrar todo en el Video
- ✅ Completar tu práctica sin problemas
Todo sin necesidad de verificación de negocio ni App Review.
🎓 Consejos para la Evaluación
- Video de demostración: Graba mostrando cómo funciona tu app en modo Development
- Documentación: Menciona que usas modo Development (es lo correcto para proyectos académicos)
- Página de prueba: Usa una Página de Facebook creada específicamente para el proyecto
💡 Nota Final
El modo Development es el método OFICIAL de Facebook para desarrollo y pruebas. No es un "hack" ni algo incorrecto.
Es exactamente lo que Facebook recomienda para:
- Proyectos universitarios ✅
- Desarrollo y pruebas ✅
- Prototipos ✅
- Aprendizaje ✅