Descripción general
Esta guía te acompaña en la solución de problemas de tu configuración del Web SDK de OneSignal. Antes de continuar, revisa la Configuración SDK Web para asegurarte de haber completado todos los pasos. Las razones más comunes por las que el web push parece no funcionar están relacionadas con la configuración de notificaciones de tu navegador y dispositivo:Compatibilidad del navegador
Los usuarios pueden ver solicitudes de permiso web pero no pueden suscribirse a notificaciones push en los modos de navegación de incógnito, privado o invitado.Configuración de notificaciones del dispositivo
La configuración de notificaciones del dispositivo es la causa más común por la que las notificaciones web push no aparecen. Revise los siguientes ajustes, incluidos los modos de concentración (No molestar, Batería baja, etc.), antes de buscar otras causas.- Windows
- macOS
- Android
- iOS
Configuración de notificaciones en Windows 10
Configuración de notificaciones en Windows 10
- Seleccione Inicio > Configuración > Notificaciones y acciones > Obtener notificaciones de aplicaciones y otros remitentes
- Asegúrese de que su sitio y navegador también estén habilitados.

Configuración de notificaciones en Windows 10
- Seleccione Inicio > Configuración > Sistema > Notificaciones

Configuración de notificaciones en Windows 11
- Active Notificaciones
- Desactive No molestar (durante las pruebas, las notificaciones push se mostrarán cuando esto esté desactivado)
- Desplácese hacia abajo hasta Notificaciones de aplicaciones y otros remitentes

Windows 11 Notificaciones de aplicaciones y otros remitentes
- Asegúrese de que sus navegadores estén Activados.

Lista de navegadores en la configuración de notificaciones de Windows 11
Problemas de visualización de prompts
Las siguientes son razones comunes por las que la solicitud de notificación push web puede no mostrarse como se esperaba.Confirme que se haya configurado una solicitud
Verifique la compatibilidad del navegador, los modos de incógnito, navegador privado o navegador de invitado.
Verifique la configuración de notificaciones de su navegador
chrome://settings/content/notifications
Configuración de notificaciones de Chrome
- El usuario ha seleccionado “No permitir que los sitios envíen notificaciones”, lo que impedirá que se muestre la solicitud de permiso nativa. Esto debe mostrar “Los sitios pueden solicitar enviar notificaciones” para permitir que se muestre la solicitud de permiso nativa.
- El usuario ha agregado
https://yoursite.coma la lista “No se permite enviar notificaciones”, lo que impedirá que se muestre la solicitud de permiso nativa. Esto debe eliminarse de la lista para permitir que se muestre la solicitud de permiso nativa.
- Chrome - Esta página explica cómo administrar las notificaciones en Chrome yendo a Configuración > Privacidad y seguridad > Configuración del sitio > Notificaciones, donde puede controlar el comportamiento predeterminado y administrar los permisos de sitios web individuales.
- Firefox - Esta guía cubre las notificaciones push web de Firefox, explicando cómo administrar los permisos de notificación a través de Configuración > Privacidad y seguridad > Notificaciones, y cómo controlar los permisos de sitios específicos a través del icono de información del sitio en la barra de direcciones.
- Safari - Esta guía de Apple explica cómo personalizar las notificaciones de Safari en Mac a través de Safari > Preferencias > Sitios web > Notificaciones, donde puede administrar qué sitios pueden enviar notificaciones y controlar el comportamiento de las notificaciones a través de Preferencias del Sistema.
- Edge - Este artículo detalla cómo administrar las notificaciones de Edge navegando a Configuración > Privacidad, búsqueda y servicios > Permisos del sitio > Notificaciones, o haciendo clic en el icono de información del sitio en la barra de direcciones.
No se cumplen los requisitos de iOS/iPadOS.
Pasos para solucionar problemas
Después de verificar lo anterior, sigue estos pasos para solucionar problemas de tu configuración del Web SDK de OneSignal.Abrir la consola de herramientas de desarrollador del navegador
- Desktop
- Android
- iOS
- Chrome: Haz clic derecho en la página, haz clic en Inspeccionar y haz clic en la pestaña Consola de la ventana emergente que se abre.
- Firefox: Haz clic derecho en la página, haz clic en Inspeccionar elemento y haz clic en la pestaña Consola de la ventana emergente que se abre.
- Safari: Ve a Safari → Preferencias → Avanzado y asegúrate de que Mostrar menú Desarrollar en la barra de menús esté marcado. Luego, en tu página web, haz clic derecho, haz clic en Inspeccionar elemento y haz clic en la pestaña Consola de la ventana emergente que se abre.

Consola de herramientas de desarrollador de escritorio
Habilitar el registro del Web SDK
- Deberías ver
undefinedcomo resultado. - Cierra la pestaña y abre una nueva en la misma página. Solo actualizar no activará todos los eventos de inicialización del SDK.
- Comenzarás a ver los registros del SDK de OneSignal en la Consola.

Consola con registros detallados del SDK
Errores de configuración
Puedes encontrar los siguientes errores después de que OneSignal se inicialice:
Error de inicialización duplicada del SDK
init del Web SDK de OneSignal se está llamando más de una vez, a menudo causado por combinar la configuración del plugin de WordPress o la integración de Shopify con código manual, o por agregar accidentalmente el código init de OneSignal varias veces.
Cómo solucionarlo: Elimina cualquier llamada init duplicada. Si usas el plugin de WordPress o la integración de Shopify, elimina cualquier código manual de OneSignal de tus archivos.

El ejemplo muestra que la URL establecida en el dashboard de OneSignal http://127.0.0.1:5501 no es el origen del sitio actual que estás visitando.
- Protocolo: Debe ser
https://(para pruebas locales, consulta Configuración de localhost) - Dominio:
example.comvswww.example.com - Subdominio:
app.example.comvsexample.com

Ejemplo del error de sitio HTTP no compatible
https://your-label.os.tc, no al origen real de tu sitio. El web push no es compatible con sitios HTTP ni con sitios web que no pueden alojar service workers.
Cómo solucionarlo: Ambas opciones requieren que tus usuarios se vuelvan a suscribir porque están suscritos al subdominio os.tc, no a tu sitio.
- Crea una nueva aplicación de OneSignal y establece el nuevo App ID en tu código de inicialización. Esto te permite seguir enviando push desde la aplicación antigua para notificar a los usuarios. Envía notificaciones informando a los usuarios que el sitio se ha actualizado y que deben volver a suscribirse. Ofrecer un descuento o incentivo ayuda. Establece la “Launch URL” en una página de destino con un prompt de resuscripción (campana, enlace personalizado o slide de categorías). Consulta Prompts de permiso para más detalles.
-
Mantén el mismo App ID usando la API de Actualizar una aplicación para actualizar
chrome_web_originysafari_site_origina tu origen HTTPS. Debido a que los usuarios se suscribieron al subdominioos.tc, su navegador no tiene permisos de push para tu dominio real. Se les mostrará el prompt nuevamente y, si se vuelven a suscribir, tendrán dos suscripciones de web push en el mismo navegador — lo que causa notificaciones duplicadas. Para prevenir duplicados, elimina todos los suscriptores actuales de web push antes de actualizar. Envía primero algunas notificaciones informando a los usuarios que deben volver a suscribirse. Consulta Prompts de permiso para opciones de prompts.
Errores de instalación del service worker
Si se te presenta el prompt de permiso nativo y haces clic en “Permitir”, puedes encontrar los siguientes errores de instalación del service worker:https://your-site.com/’) with script (‘https://your-site.com/...’): A bad HTTP response code (404) was received when fetching the script.https://www.yoursite.com/’) with script (‘https://www.yoursite.com/...’): A bad HTTP response code (403) was received when fetching the script.
Ejemplo de un error de instalación del service worker

Error de tipo MIME en el service worker

Error de redirección en la consola
Encuentra la ruta de tu service worker
OneSignalSDKWorker.js en la raíz de tu sitio a menos que establezcas una ruta personalizada. Consulta Service worker de OneSignal.WordPress: no subas un worker a la raíz del sitio ni establezcas una ruta personalizada. El plugin aloja el archivo en sdk_files. Abre esa URL en el siguiente paso. Consulta Configuración WordPress.Visita el archivo del service worker directamente en tu navegador
- Sitio típico por defecto (raíz):
https://yoursite.com/OneSignalSDKWorker.js - Plugin de WordPress (v3):
https://yoursite.com/wp-content/plugins/onesignal-free-web-push-notifications/sdk_files/OneSignalSDKWorker.js(nombre de carpeta de WordPress.org; las instalaciones por zip pueden diferir) - Ruta personalizada (solo dashboard de Sitio típico o
initde Código personalizado):https://yoursite.com/your-custom-location/OneSignalSDKWorker.js
Verifica que el archivo se cargue
- Deberías ver el siguiente código JavaScript:
JavaScript
- Este archivo debe servirse con un
content-typedeapplication/javascript. - No puede haber redirecciones a este archivo. Los archivos deben estar alojados en el mismo dominio que tu sitio (sin dominios CDN o proxy).
Notificaciones no mostradas
Esta sección asume:- Has revisado la guía Notificaciones no mostradas: Web Push para conocer las razones comunes por las que las notificaciones pueden no estar apareciendo en tu dispositivo.
- Se te mostró el prompt de permiso nativo y hiciste clic en “Permitir”. Consulta Problemas de visualización de prompts arriba si no te suscribiste a través del prompt de permiso nativo.
Obtener tu Subscription ID
- La URL de la página en la que estás si hay alguna confusión.
-
Si el navegador actual soporta notificaciones push.
truesignifica que el navegador soporta notificaciones push.falsesignifica que el navegador no soporta notificaciones push.
-
Si estás suscrito a notificaciones en el navegador.
truesignifica que permitiste permisos push para esta URL.falsesignifica que no permitiste o denegaste permisos push para esta URL.
-
Si estás optado (opted-in) con OneSignal.
truesignifica que tu suscripción está suscrita a notificaciones push en OneSignal.falsesignifica que tu suscripción no está suscrita a notificaciones push en OneSignal. Verifica si el métodooptOut()se está llamando en tu sitio.
-
Tu Subscription ID de OneSignal.
- Guarda esto para el siguiente paso. Este es el ID que usarás para enviarte una notificación push.

Ejemplo de la salida de información del usuario en la consola
Enviarte una notificación
Probar con Chrome
- En una nueva pestaña, abre
chrome://gcm-internals. - Haz clic en el botón “Start Recording” en la parte superior izquierda. Asegúrate de ver “Connection State: CONNECTED”.
- Deja esto abierto y envíate otra notificación push a tu suscripción de web push de Chrome.
- Deberías ver algo en el “Receive Message Log” si lo recibiste.

Registro de internos de GCM
- Si no ves un “Data msg received”, entonces tu navegador Chrome no está recibiendo la notificación en absoluto. Contacta al soporte de OneSignal con los registros de GCM internals.
- Si ves “Data msg received” pero aún no recibiste una notificación, continúa con el siguiente paso.
- Abre una nueva pestaña en
chrome://serviceworker-internals - Busca
Scope: https://your-site.com(reemplazayour-site.comcon el dominio real de tu sitio). - Haz clic en Inspect, o Start -> Inspect. Aparecerá una ventana emergente de Chrome Developer Tools.

Inspeccionando el service worker
- En la ventana emergente de Chrome Developer Tools de nuestro service worker, haz clic en la pestaña Console y ejecuta
OneSignalWorker.log.trace();. Debería devolverundefined. Cualquier mensaje de nuestro service worker debería aparecer ahora en esta ventana emergente.
support@onesignal.comPor favor incluya:- Detalles del problema que está experimentando y pasos para reproducir si están disponibles
- Su ID de aplicación de OneSignal
- El ID externo o ID de suscripción si corresponde
- La URL del mensaje que probó en el panel de OneSignal si corresponde
- Cualquier registro o mensaje de error relevante
Preguntas frecuentes
¿Por qué veo “SDK already initialized”?
El códigoinit del Web SDK de OneSignal se está llamando más de una vez en la página. Esto sucede comúnmente al combinar el plugin de WordPress con código manual, o cuando la etiqueta de inicialización se incluye en múltiples plantillas de página. Elimina las llamadas init duplicadas para resolverlo.
¿Puedo usar web push en sitios HTTP?
No. Web push requiere HTTPS porque los service workers — que gestionan la entrega de push — solo funcionan en orígenes seguros. Si anteriormente usaste la opción “My site is not fully HTTPS”, debes migrar a HTTPS. Consulta Errores de configuración para los pasos de migración.¿Cómo pruebo web push en localhost?
Puedes probar enlocalhost durante el desarrollo. Consulta Configuración de localhost para las instrucciones de configuración. Ten en cuenta que las pruebas en localhost solo funcionan en navegadores basados en Chromium.




