Saltar al contenido principal
Solo usa esta configuración con Código personalizado si necesitas configuración avanzada o control programático. Para la mayoría de usuarios, recomendamos:
Si estás usando un framework JavaScript, sigue estas guías especializadas:

Requisitos

  • Sitio web HTTPS: El push web no funciona en HTTP ni en modos de navegación incógnito/privada.
  • Acceso al servidor: Necesitarás subir un archivo service worker a tu sitio.
  • Origen único: El push web sigue la política de mismo origen. Si tienes múltiples orígenes (dominios/subdominios), necesitarás múltiples aplicaciones OneSignal (una por origen). Para cumplir con esta limitación del navegador, puedes:
    • Redirigir el tráfico a un único origen para las suscripciones.
    • Crear múltiples aplicaciones OneSignal, una por origen.

Configurar tu aplicación y plataforma OneSignal

En el panel de OneSignal:
  • Ve a Settings > Push & In-App > Web.
  • Selecciona el tipo de integración Custom Code.

Configuración del sitio

Agrega los detalles del sitio:
  • Site Name: El nombre de tu sitio y el título de notificación predeterminado.
  • Site URL: El origen exacto de tu sitio, por ejemplo https://yourdomain.com. Evita usar www. si tu sitio no está configurado así. Consulta los Requisitos si tienes múltiples orígenes.
  • Auto Resubscribe: Habilita esto para resuscribir automáticamente a los usuarios que borren sus datos del navegador cuando regresen a tu sitio (sin necesidad de una nueva solicitud de permiso).
  • Default Icon URL: Sube una imagen PNG o JPG cuadrada de 256x256px que aparece en notificaciones y prompts. Si no se configura, se usa un ícono de campana como predeterminado.
OneSignal web push configuration showing site name, URL, and icon settings

Pruebas locales

Para probar en localhost, usa una aplicación OneSignal separada de tu aplicación de producción y agrega allowLocalhostAsSecureOrigin: true a tus opciones de init. Si estás probando localhost en HTTPS con un certificado autofirmado, puede que necesites indicarle a Chrome que ignore certificados inválidos con --allow-insecure-localhost. Firefox y Safari proporcionan mecanismos integrados para agregar excepciones para certificados de seguridad.
  <script src="https://cdn.onesignal.com/sdks/web/v16/OneSignalSDK.page.js" defer></script>
  <script>
    window.OneSignalDeferred = window.OneSignalDeferred || [];
    OneSignalDeferred.push(function(OneSignal) {
      OneSignal.init({
        appId: "YOUR_OS_APP_ID",
        allowLocalhostAsSecureOrigin: true,
      });
    });
  </script>

Certificado Safari web push (opcional)

OneSignal proporciona certificados Safari automáticamente sin costo. Solo habilita esto si tienes certificados Safari Web Push existentes que necesitas usar.
Safari certificate upload option
Si está habilitado, sube tu Safari Web .p12 Push Certificate e ingresa la contraseña. Haz clic en Save para continuar.

Subir archivos service worker

En la siguiente página de configuración de push web, recibirás el archivo service worker OneSignalSDKWorker.js. El SDK web busca este archivo en la raíz de tu sitio de forma predeterminada, por ejemplo https://yourdomain.com/OneSignalSDKWorker.js. Puedes cambiar la ubicación del archivo, el nombre y el alcance en el código.

Service worker de OneSignal

Configuración avanzada del service worker, integración personalizada y migración desde otros proveedores.

Agregar código al sitio

Agrega este código a la sección <head> de tu sitio web. Reemplaza:
  • YOUR_ONESIGNAL_APP_ID con tu App ID real del panel de OneSignal
  • YOUR_SAFARI_WEB_ID con tu Safari Web ID real del panel de OneSignal
HTML
<script src="https://cdn.onesignal.com/sdks/web/v16/OneSignalSDK.page.js" defer></script>
<script>
  window.OneSignalDeferred = window.OneSignalDeferred || [];
  OneSignalDeferred.push(async function(OneSignal) {
    await OneSignal.init({
      appId: "YOUR_ONESIGNAL_APP_ID",
      safari_web_id: "YOUR_SAFARI_WEB_ID",
      notifyButton: {
        enable: true,
      },
    });
  });
</script>

Soporte de push web para iOS

Apple comenzó a soportar notificaciones push web en iPhones y iPads con iOS 16.4+. A diferencia de los dispositivos Android donde el push web simplemente “funciona” si se visita en un navegador compatible, Apple agregó algunos requisitos adicionales como un archivo manifest.json y una acción del usuario para agregar tu sitio a su pantalla de inicio.

Configuración push web para iOS

Agrega el archivo manifest.json requerido y guía a los usuarios para agregar tu sitio a su pantalla de inicio.

Probar la integración del SDK de OneSignal

Esta guía le ayuda a verificar que su integración del SDK de OneSignal funciona correctamente mediante la prueba de notificaciones push y el registro de suscripciones.

Verificar suscripciones de web push

1

Inicie su sitio en un dispositivo de prueba.

  • Use Chrome, Firefox, Edge o Safari durante las pruebas.
  • No use el modo incógnito o navegación privada. Los usuarios no pueden suscribirse a notificaciones push en estos modos.
  • Los avisos deben aparecer según la configuración de sus solicitudes de permiso.
  • Haga clic en Permitir en el aviso nativo para suscribirse a notificaciones push.
Aviso de permiso nativo del navegador preguntando al usuario si permite o bloquea las notificaciones
2

Revise su panel de OneSignal

  • Vaya a Audiencia > Suscripciones.
  • Debería ver una nueva entrada con el estado Suscrito.
Página de Suscripciones del panel OneSignal mostrando una suscripción de web push con estado Suscrito
Ha creado exitosamente una suscripción de web push. Las suscripciones de web push se crean cuando los usuarios se suscriben por primera vez a notificaciones push en su sitio.

Configurar suscripciones de prueba

Las suscripciones de prueba son útiles para probar una notificación push antes de enviar un mensaje.
1

Agregar a Suscripciones de prueba.

En el panel, junto a la suscripción, haga clic en el botón Opciones (tres puntos) y seleccione Agregar a suscripciones de prueba.
Menú de opciones en una suscripción mostrando la opción Agregar a suscripciones de prueba
2

Nombre su suscripción.

Nombre la suscripción para que pueda identificar fácilmente su dispositivo más tarde en la pestaña Suscripciones de prueba.
3

Cree un segmento de usuarios de prueba.

Vaya a Audiencia > Segmentos > Nuevo segmento.
4

Nombre el segmento.

Nombre el segmento Test Users (el nombre es importante porque se usará más adelante).
5

Agregue el filtro Test Users y haga clic en Crear segmento.

Editor de segmentos con el filtro Test Users seleccionado y el segmento nombrado Test Users
Ha creado exitosamente un segmento de usuarios de prueba. Ahora podemos probar el envío de mensajes a este dispositivo individual y grupos de usuarios de prueba.

Enviar push de prueba mediante API

1

Obtenga su clave API de aplicación y ID de aplicación.

En su panel de OneSignal, vaya a Configuración > Claves e IDs.
2

Actualice el código proporcionado.

Reemplace YOUR_APP_API_KEY y YOUR_APP_ID en el código a continuación con sus claves reales. Este código usa el segmento Test Users que creamos anteriormente.
curl -X \
POST --url 'https://api.onesignal.com/notifications' \
 --header 'content-type: application/json; charset=utf-8' \
 --header 'authorization: Key YOUR_APP_API_KEY' \
 --data \
 '{
  "app_id": "YOUR_APP_ID",
  "target_channel": "push",
  "name": "Testing basic setup",
  "headings": {
  	"en": "👋"
  },
  "contents": {
    "en": "Hello world!"
  },
  "included_segments": [
    "Test Users"
  ],
  "chrome_web_image": "https://avatars.githubusercontent.com/u/11823027?s=200&v=4"
}'
3

Ejecute el código.

Ejecute el código en su terminal.
4

Verifique imágenes y entrega confirmada.

Si todos los pasos de configuración se completaron exitosamente, las suscripciones de prueba deberían recibir una notificación.
Solo Chrome admite imágenes. Las imágenes aparecerán pequeñas en la vista de notificación contraída. Expanda la notificación para ver la imagen completa.
Notificación push expandida en Chrome macOS mostrando una imagen personalizada
5

Verifique la entrega confirmada.

En su panel, vaya a Entrega > Mensajes enviados, luego haga clic en el mensaje para ver las estadísticas. Debería ver la estadística confirmado, lo que significa que el dispositivo recibió el push.
Safari no admite Entrega confirmada.

Informes de mensajes de notificaciones push

Vea estadísticas de entrega, clics y conversiones para sus notificaciones push.
Ha enviado exitosamente una notificación mediante la API a un segmento.
Si las notificaciones no llegan, contacte a support@onesignal.com con lo siguiente:
  • La solicitud y respuesta de la API (copie y pegue en un archivo .txt)
  • Su ID de suscripción
  • La URL de su sitio web con el código de OneSignal

Identificación de usuarios

La sección anterior cubrió la creación de suscripciones de web push. Esta sección expande la identificación de usuarios en todas sus suscripciones (incluyendo push, email y SMS) usando el SDK de OneSignal. Cubre IDs externos, etiquetas, suscripciones multicanal, privacidad y seguimiento de eventos para ayudarle a unificar e involucrar usuarios en todas las plataformas.

Asignar ID externo

Use un ID externo para identificar usuarios de manera consistente en dispositivos, direcciones de correo electrónico y números de teléfono usando el identificador de usuario de su backend. Esto asegura que sus mensajes permanezcan unificados en todos los canales y sistemas de terceros (especialmente importante para integraciones). Establezca el ID externo con el método login del SDK cada vez que un usuario sea identificado por su aplicación.
OneSignal genera IDs únicos de solo lectura para suscripciones (ID de suscripción) y usuarios (ID de OneSignal).A medida que los usuarios descargan su aplicación en diferentes dispositivos, se suscriben a su sitio web y/o le proporcionan direcciones de correo electrónico y números de teléfono fuera de su aplicación, se crearán nuevas suscripciones.Se recomienda encarecidamente establecer el ID externo a través del SDK para identificar usuarios en todas sus suscripciones, independientemente de cómo se creen.

Agregar etiquetas de datos

Las etiquetas son pares clave-valor de datos de cadena que puede usar para almacenar propiedades de usuario (como username, role o preferencias) y eventos (como purchase_date, game_level o interacciones de usuario). Las etiquetas alimentan la personalización de mensajes y segmentación avanzadas, permitiendo casos de uso más avanzados. Establezca etiquetas con los métodos addTag y addTags del SDK a medida que ocurren eventos en su aplicación. En este ejemplo, el usuario alcanzó el nivel 6 identificable por la etiqueta llamada current_level establecida en un valor de 6.
Podemos crear un segmento de usuarios que tengan un nivel entre 5 y 10, y usar eso para enviar mensajes dirigidos y personalizados:

Agregar suscripciones de email y/o SMS

El SDK de OneSignal crea suscripciones de web push automáticamente cuando los usuarios aceptan. También puede llegar a los usuarios a través de canales de email y SMS creando las suscripciones correspondientes. Si la dirección de correo electrónico y/o número de teléfono ya existen en la aplicación de OneSignal, el SDK lo agregará al usuario existente, no creará duplicados. Puede ver usuarios unificados a través de Audiencia > Usuarios en el panel o con la API de ver usuario.
Mejores prácticas para comunicación multicanal
  • Obtenga consentimiento explícito antes de agregar suscripciones de email o SMS.
  • Explique los beneficios de cada canal de comunicación a los usuarios.
  • Proporcione preferencias de canal para que los usuarios puedan seleccionar qué canales prefieren.

Privacidad y consentimiento del usuario

Para controlar cuándo OneSignal recopila datos del usuario, use los métodos de control de consentimiento del SDK: Para más información sobre privacidad y seguridad:

Datos recopilados por el SDK

Revise qué datos recopila el SDK de OneSignal de los usuarios.

Manejo de datos personales

Gestione y proteja los datos de usuarios en cumplimiento con las normativas de privacidad.

Escuchar eventos de push, usuario e in-app

Use los listeners del SDK para reaccionar a acciones de usuario y cambios de estado. El SDK proporciona varios listeners de eventos a los que puede conectarse. Consulte nuestra guía de referencia del SDK para más detalles.

Eventos de notificación push

Cambios de estado del usuario


Configuración y capacidades avanzadas

Explore más capacidades para mejorar su integración:

Migrar a OneSignal

Migre desde otro proveedor de push a OneSignal.

Integraciones

Conecte OneSignal con herramientas y plataformas de terceros.

Botones de acción

Agregue botones interactivos a las notificaciones push.

Mensajería multiidioma

Envíe mensajes localizados a los usuarios en su idioma preferido.

Verificación de identidad

Proteja su integración del SDK con verificación de identidad en el servidor.

Resultados personalizados

Rastree eventos de conversión personalizados vinculados a sus mensajes.

Configuración y referencia del Web SDK

Configuración de web push

Habilite todas las funciones clave de web push para su integración.

Referencia del Web SDK

Detalles completos sobre métodos disponibles y opciones de configuración.
¡Felicitaciones! Ha completado exitosamente la guía de configuración del Web SDK.


Preguntas frecuentes

¿Necesito HTTPS para las notificaciones push web?

Sí. Todos los navegadores modernos requieren HTTPS para el soporte de notificaciones push. Si tu sitio usa HTTP, debes migrar a HTTPS antes de configurar el push web.

¿Puedo usar esta configuración con una aplicación de página única (SPA)?

Sí. La configuración Custom Code es el enfoque recomendado para SPAs construidas con frameworks como React, Angular o Vue. Consulta las guías específicas por framework en la parte superior de esta página para Angular, React y Vue.

¿Qué sucede si un usuario borra los datos de su navegador?

La suscripción push del usuario se elimina. Si Auto Resubscribe está habilitado, se resuscribe automáticamente la próxima vez que visite tu sitio.

Páginas relacionadas

Solicitudes de permiso

Configura cuándo y cómo se solicita a los usuarios que se suscriban.

Referencia SDK Web

Referencia de API completa para el SDK Web de OneSignal.