Saltar al contenido principal
Ya sea que necesites autenticación de cuenta, registrar nuevos usuarios/contraseñas o confirmar una transacción, a veces solo necesitas enviar una contraseña de un solo uso, magic link o URL de registro a alguien. La verificación de email es un buen ejemplo y una forma de prevenir direcciones de email falsas o inactivas. Seguir esta guía ayudará a asegurar que tus usuarios puedan realmente recibir los emails que envías mientras también aumentas la reputación y entregabilidad de tu remitente.

Requisitos

  • Un servidor para generar y enviar el OTP o código de confirmación.

Enviar custom_data mediante la API

Nuestra API de Create message tiene la propiedad custom_data que puedes usar para pasar datos desde tu servidor al mensaje. Dependiendo de cómo generes el código de confirmación, magic link o URL personalizada, una vez que lo hagas, puedes pasarlo al objeto custom_data al enviar un mensaje a tus usuarios. Por ejemplo:
"custom_data": {
    "user": {
        "first_name": "George"
    },
    "verify": {
        "URL" : "https://yourdomain.com/users/confirm?confirmation_token=OS4EVA",
        "otp" : "OS4EVA"
    }
}

Plantilla de email de verificación

Este ejemplo de plantilla de email demostrará cómo mostrar el nombre del usuario, un código de un solo uso y un botón con un enlace para confirmar su dirección de email.

Ejemplo de email de verificación

Configuración de plantilla de email

Navega a Messages > Templates > New Email Template y usa el Drag & Drop Editor. Crea 1 fila y arrastra los siguientes bloques:
  • Bloque de Title
  • Bloque de Paragraph
  • Bloque de Button

Ejemplo de editor Drag and Drop

Mostrar el nombre del usuario en el email

Esto es opcional, pero puedes hacer el mensaje más personalizado agregando el nombre del usuario. Si no tienes el nombre, puedes omitirlo o establecer un valor predeterminado. Dentro del bloque Title de nuestra plantilla, establece tu texto como desees. Ejemplo:
Hey {{ message.custom_data.user.first_name | default: "there" }},

Mostrar contraseña de un solo uso en email

Este ejemplo muestra tanto la opción de enviar una contraseña de un solo uso como un botón con URL de confirmación. Dependiendo de cómo quieras configurar, establece tu texto dentro del bloque Paragraph como desees. Ejemplo:
To join the squirrel crew, verify your email with the One Time Password:
{{message.custom_data.verify.otp}}

Or use the link below!
Puedes usar más de un bloque Paragraph o Text si quieres hacer la contraseña más grande o distinta del texto. En este ejemplo, la pusimos en negrita:

OTP con estilo en negrita dentro del contenido del email

Agregar una URL personalizada en email

Hay varias formas de configurar la URL de verificación. En este ejemplo pasamos la URL completa con código de confirmación a custom_data. En el bloque Button > Content Properties > Action > Url, establece:
  • {{message.custom_data.verify.URL}}

Configuración de URL personalizada en bloque Button

Actualizar la plantilla de email y enviar el mensaje

Consulta Diseñar emails con Drag and Drop para más detalles sobre cómo personalizar la plantilla. Ejemplo de solicitud JSON de API:
{
    "include_email_tokens": [
        "Email Address"
    ],
    "app_id": "YOUR_APP_ID",
    "template_id": "YOUR_TEMPLATE_ID",
    "custom_data": {
        "user": {
            "first_name": "George"
        },
        "verify": {
            "URL" : "https://yourdomain.com/users/confirm?confirmation_token=OS4EVA",
            "otp" : "OS4EVA"
        }
    }
}
Cuando estés listo, puedes usar el template_id dentro de tus solicitudes de API de Create notification con la propiedad custom_data.

Plantilla de SMS de verificación

Este ejemplo de plantilla de SMS demostrará cómo mostrar un código de un solo uso.

Configuración de plantilla de SMS

El SMS solo debe enviarse con una cantidad limitada de datos para reducir cargos. Navega a Messages > Templates > New SMS Template. Nombra la plantilla algo memorable como OTP Template.

Mostrar OTP en plantilla de SMS

En el campo Message de la plantilla, agrega el siguiente texto:
  • {{message.custom_data.verify.otp}} is your OneSignal verification code.
Recomendamos cambiar “OneSignal” por el nombre de tu aplicación.

Actualizar la plantilla de SMS y enviar el mensaje

Una vez que tengas la plantilla creada, puedes generar tus contraseñas de un solo uso y pasarlas a OneSignal usando el siguiente ejemplo de solicitud JSON de API:
{
    "include_phone_numbers": ["+19999999999"],
    "app_id": "YOUR_APP_ID",
    "template_id": "YOUR_TEMPLATE_ID",
    "custom_data": {
        "verify": {
            "otp" : "OS4EVA"
        }
    }
}
Cuando estés listo, puedes usar el template_id dentro de tus solicitudes de API de Create notification con la propiedad custom_data.

Configurar doble opt-in de email

El doble opt-in es un proceso que requiere que los usuarios confirmen sus suscripciones de email para mejorar la calidad de la lista de emails y cumplir con las regulaciones.

1. Agregar direcciones de email a OneSignal

Cuando agregas direcciones de email a OneSignal, se suscriben automáticamente de forma predeterminada. Sin embargo, para el doble opt-in, abstente de agregar usuarios mediante nuestra API Create user hasta que hagan clic en el enlace de verificación enviado por email.

2. Enviar emails de verificación

OneSignal te permite enviar emails de verificación a los destinatarios usando nuestra API Create notification. El endpoint enviará el email y agregará la dirección a OneSignal como una suscripción de email si aún no existe en la aplicación.

Endpoint de API: Enviar un email de verificación

3. Manejar respuestas de verificación

Dependiendo de la respuesta del destinatario al enlace de verificación, sigue estos pasos: Para no suscriptores
  1. Orienta al destinatario del email con una notificación de datos personalizados mediante nuestra API Create notification.
  2. Si el usuario hace clic en el enlace de verificación, usa el endpoint “Create user” de la API para agregarlos como suscripción.
Para suscriptores existentes
  1. Orienta a los suscriptores existentes por separado con un email de verificación.
  2. Monitorea las respuestas de los destinatarios al enlace de verificación durante un período predefinido.
Si no responden Si hacen clic en el enlace de verificación
  • No hagas nada - ya están suscritos a OneSignal.

En resumen, configurar el doble opt-in con OneSignal implica los siguientes pasos:

Para direcciones de email que actualmente no están en tu audiencia

  1. Envía un email de verificación al destinatario mediante la API.
  2. Si el destinatario hace clic en el enlace de verificación, usa el endpoint de API “create user” para crear la suscripción.

Para direcciones de email ya en OneSignal

  1. Envía un email de verificación a los suscriptores existentes mediante la API.
  2. Monitorea su respuesta al enlace de verificación.
  3. Si no responden dentro de un período especificado, actualiza su suscripción para cancelarla o eliminarla.
  4. Si han hecho clic en el enlace de verificación, no tomes ninguna acción ya que ya están suscritos.
Siguiendo estos pasos, puedes implementar efectivamente la funcionalidad de doble opt-in en tu proceso de suscripción de email mientras aseguras el cumplimiento y mantienes una lista de emails de alta calidad.