Solución de problemas
Los errores más frecuentes al integrar Block-Auth. En cada uno verás el mensaje que recibes, por qué ocurre y cómo resolverlo.
App no activa
Mensaje: App not active, contact your admin (403).
Causa: tu app todavía no está activa. Una app solo se activa cuando su dominio se ha validado con un registro DNS.
Solución: en el Dashboard, abre la app, copia el valor de verificación y añádelo como registro TXT en tu dominio. Después pulsa validar. Los cambios de DNS pueden tardar unos minutos en propagarse. Consulta Valida tu dominio.
Autenticación bloqueada
Mensaje: Authentication blocked: tenant billing grace period ended. (403).
Causa: tu cuenta de empresa tiene un pago pendiente y el periodo de gracia ha terminado. Se bloquean los logins de todas sus apps.
Solución: regulariza la facturación desde el Dashboard. Los logins vuelven a funcionar en cuanto la cuenta está al día.
redirect_uri no válido
Mensaje: Invalid redirect_uri (400), de /api/auth/authorize o /api/auth/token.
Causa: el redirectUri que envías no cumple las reglas.
Solución: comprueba que:
- Usa
https. El dominio de tu app tiene que estar validado, así que en desarrollo usa tu dominio de desarrollo con un túnel, nolocalhost(una app por entorno). - Tiene exactamente el host del dominio de tu app, con el puerto incluido.
- No lleva usuario, contraseña ni
#fragmento, y tiene menos de 2048 caracteres. - Es el mismo en
/api/auth/authorizey en/api/auth/token.
Código no válido
Mensaje: Invalid code (400), de /api/auth/token.
Causa: el código ha caducado, ya se canjeó o se emitió para otro redirectUri.
Solución: canjea el código en cuanto tu callback lo reciba: dura 60 segundos y solo vale una vez. No lo canjees dos veces, por ejemplo al recargar la página o con una petición duplicada. Envía el mismo redirectUri que usaste para obtenerlo.
No se abre la ventana de login
Mensaje: Login popup blocked o Login window closed en la consola del navegador.
Causa: el navegador bloqueó la ventana emergente, o tu página perdió el contacto con ella.
Solución:
- Abre el login directamente desde el clic del usuario. Si tu código espera algo antes de abrirlo, el navegador bloquea la ventana.
- Sirve la página desde el dominio validado de tu app.
- Si tu sitio envía
Cross-Origin-Opener-Policy: same-origin, cámbialo asame-origin-allow-popups. Si no, tu página no puede recibir el resultado de la ventana.
Las rutas del backend no responden
Mensaje: [Block-Auth] … en la consola del navegador, tras el login o al cargar la página.
Causa: el widget llama a /code, /me y /logout bajo /auth/blockauth (o tu authEndpoint), y una de ellas falta, no es accesible o la responde tu frontend en lugar de tu backend.
Solución: sigue el mensaje. Indica la ruta y qué cambiar:
answered 404: añade esa ruta a tu backend (Rutas del backend).did not reach your backend: sirve las rutas desde el mismo origen que tu página, o permite el origen de tu página en el CORS de tu backend con credenciales. Las rutas deben responder sin redirecciones.without JSON: ha respondido tu servidor de frontend en lugar de tu backend. Redirige/auth/blockautha tu backend en tu servidor de desarrollo (ejemplos para Vite y Angular) y en producción.could not redeem the code: revisa los logs de tu backend y elapiKey, el hash delapiSecrety elredirectUrique envía a/api/auth/token.
Content Security Policy
Mensaje: errores como Refused to connect to … because it violates the Content Security Policy en la consola.
Causa: tu sitio envía una CSP que no permite las conexiones del SDK.
Solución: añade los orígenes del widget a tu CSP:
Content-Security-Policy
connect-src 'self' https://wss.block-auth.io;
img-src 'self' https://dashboard.block-auth.io;
style-src 'self' 'unsafe-inline';
Para qué sirve cada uno está en Pruébalo y pasa a producción.
No llegan webhooks
Causa: la URL se ignora o tu endpoint tarda demasiado.
Solución: comprueba que la URL del Dashboard usa https, está en el dominio de tu app y no es /signout/callback. Responde en menos de 5 segundos y sin redirigir. Cada evento se envía una sola vez. Consulta Webhooks.
Otros errores de la API
| Mensaje | Causa | Solución |
|---|---|---|
App not found | apiKey incorrecta, o apiSecret sin hashear. | Envía el SHA-256 del apiSecret, no el secret. |
Unauthorized, valid token required (401) | Falta el token de acceso o ha caducado, en un endpoint de datos. | Pide otro con /api/refresh o /api/signin. |
Too many requests (429) | Demasiados intentos fallidos de credenciales desde tu IP. | Corrige las credenciales y espera los segundos de Retry-After. |
User not signed in APP yet (403) | La sesión del usuario en tu app ha terminado. | Pide al usuario que vuelva a iniciar sesión. |
Si aun así no lo resuelves, contacta con el soporte de Block-Auth indicando el mensaje de error exacto.

