Saltar al contenido principal
Un mensaje de contraseña de un solo uso (OTP) es un texto que contiene un código corto y temporal para verificar la identidad de un usuario. El usuario introduce el código en tu aplicación o sitio web para demostrar que tiene acceso al número de teléfono que proporcionó. Los mensajes OTP ofrecen:
  • Protección de la cuenta: evitar el acceso no autorizado reduce los costos de soporte, las pérdidas por fraude y el daño a la reputación
  • Validación del número de teléfono: un OTP que se entrega y se introduce correctamente confirma que el número es real, está activo y está en manos de la persona que lo envió
  • Prevención de fraude en la puerta de entrada: los OTP en la creación de cuentas disuaden los registros falsos, las cuentas de bots y el abuso
  • Base regulatoria y de cumplimiento: para ciertas industrias (finanzas, salud), se requiere autenticación multifactor. El OTP por SMS es el método más accesible porque funciona en todos los teléfonos sin necesidad de instalar ninguna aplicación
Disparadores comunes:
  • Creación de cuenta: confirmar el número de teléfono de un nuevo usuario durante el registro
  • Inicio de sesión / autenticación de dos factores: agregar una segunda capa de verificación más allá de una contraseña
  • Restablecimiento de contraseña: confirmar la identidad antes de permitir un cambio de credenciales
  • Confirmación de transacción: verificar una acción de alto valor como una transferencia de dinero o un cambio de dirección

Requisitos de consentimiento

El consentimiento para los mensajes OTP sigue el mismo estándar que los mensajes transaccionales. Que un usuario introduzca su número de teléfono en un formulario que incluya un texto de divulgación es un opt-in suficiente. La divulgación debe aparecer directamente en el campo del número de teléfono o cerca de él, no en una página separada ni enterrada en los términos de servicio.

Texto de divulgación requerido

Requisitos del texto de divulgación y las reglas completas de cumplimiento para el opt-in de OTP.

Cómo enviar mensajes OTP

Hay dos formas de enviar mensajes OTP con OneSignal:
MétodoIdeal paraLo que gestionas
OneSignal Verify (Recomendado)Equipos que quieren una solución gestionada: la generación de códigos, la entrega y la validación se hacen por tiSolo la configuración
Crear el tuyo propioEquipos que necesitan lógica de verificación personalizada o que ya tienen un sistema de generación de códigosGeneración de códigos, almacenamiento, expiración, limitación de tasa y validación

OneSignal Verify

Verify solo está disponible para clientes de OneSignal SMS (no para la integración de Twilio).
1

Crear un servicio de verificación

Establece un nombre descriptivo (el nombre de tu marca), la longitud del código y la frecuencia con la que se regenera un código.
2

Enviar un código de verificación

Proporciona el número de teléfono del usuario y el canal (sms). Opcionalmente, especifica un código personalizado o anula la longitud del código.Por defecto, el mensaje enviado al usuario final dice: “Your [brand name] verification code is: XXXXXX.”
3

Comprobar el código de verificación

Proporciona el número de teléfono del usuario y el código que introdujo. La API devuelve si el código es válido.

Consideraciones adicionales

  • Expiración: Los códigos expiran después de 10 minutos por defecto. Contacta a soporte para personalizarlo.
  • Reintentos: Gestiona los intentos de verificación fallidos e implementa la lógica de reintento en tu aplicación.
  • Seguridad: Sigue las mejores prácticas para manejar datos sensibles como números de teléfono y códigos de verificación.

Crear tu propia autenticación con código

También puedes gestionar la lógica de verificación tú mismo: generar códigos, controlar la expiración y validar los intentos en tu propio backend. Con este enfoque, envías mensajes OTP a través de la API Create Message de OneSignal como un SMS estándar activado por API.
1

Generar un código en tu backend

Normalmente de 4 a 8 dígitos con una ventana de expiración de 5 a 10 minutos.
2

Enviarlo a través de la API de OneSignal

Llama al endpoint Create Message con el número de teléfono del destinatario, tu remitente de OTP y un cuerpo de mensaje que contenga el código (por ejemplo, “Your [brand name] verification code is 847291. It expires in 10 minutes.”).
3

Validar el código

Cuando el usuario envíe el código en tu aplicación, compáralo con lo que almacenaste. Invalida el código después de una comprobación exitosa o después de la expiración, lo que ocurra primero.

Tus responsabilidades

  • Generar y almacenar los códigos de forma segura
  • Aplicar la expiración: los códigos no deben ser válidos indefinidamente
  • Limitación de tasa: limita cuántos códigos puede solicitar un solo número de teléfono en una ventana determinada para prevenir el fraude de SMS pumping
  • Límites de intentos: bloquea después de un número determinado de entradas fallidas (por ejemplo, de 3 a 5 intentos) para prevenir ataques de fuerza bruta
  • Lógica de reintento: gestionar los casos en los que el SMS no se entrega

Mejor práctica de remitente dedicado

Aunque puedes enviar mensajes OTP desde cualquier remitente, es una mejor práctica usar un remitente dedicado aprobado para el caso de uso de autenticación. Si tus mensajes OTP comparten un remitente con mensajes promocionales o transaccionales, un solo opt-out con STOP significa que el usuario ya no puede recibir códigos de verificación, lo que efectivamente lo deja bloqueado fuera de su propia cuenta. Un remitente OTP dedicado mantiene los opt-outs acotados para que una baja de marketing nunca bloquee un código de seguridad.

Validación de audiencia

Una lista de suscriptores limpia es esencial para la entregabilidad de los OTP. Los números inválidos o desconectados significan que los códigos de verificación no llegan al usuario, lo que puede bloquear la creación de cuentas, dejar a los usuarios fuera de los restablecimientos de contraseña y erosionar la confianza en tu flujo de autenticación. Valida los números de teléfono con Lookup en el punto de recopilación, recopila únicamente números de las regiones en las que tienes un recurso de remitente aprobado y almacena todos los números en formato E.164 (por ejemplo, +14155551234).

Validación de audiencia

Detalles completos sobre Lookup, restricciones por región, verificación de propiedad y formato E.164.

Preguntas frecuentes

¿Cuál es la diferencia entre OneSignal Verify y crear mi propio OTP?

OneSignal Verify gestiona la generación de códigos, la entrega y la validación por ti. Tú solo gestionas la configuración. Crear el tuyo propio te da más control sobre la lógica de verificación, pero eres responsable de la generación de códigos, el almacenamiento, la expiración, la limitación de tasa y la gestión de reintentos. OneSignal Verify solo está disponible para clientes de OneSignal SMS (no para la integración de Twilio).

¿Cuánto duran los códigos de verificación con OneSignal Verify?

Los códigos expiran después de 10 minutos por defecto. Contacta al soporte de OneSignal para personalizar la ventana de expiración.

¿Por qué necesito un remitente dedicado para los OTP?

Si un usuario envía STOP por mensaje de texto a un remitente que gestiona tanto OTP como otros tipos de mensajes, queda excluido de todos los mensajes de ese remitente, incluidos los códigos de verificación. Esto puede dejarlo bloqueado fuera de su cuenta. Un remitente OTP dedicado mantiene los opt-outs limpiamente acotados.

¿Qué sucede si un OTP no se entrega?

Con OneSignal Verify, contacta a soporte si observas fallos de entrega generalizados. Si estás creando el tuyo propio, implementa la lógica de reintento en tu backend y monitorea los códigos de error en Audience Activity. Consulta Informes de mensajes SMS para solucionar problemas relacionados con los códigos de error.

¿Puedo usar mensajes OTP para la verificación al crear una cuenta?

Sí. Este es uno de los casos de uso más comunes: enviar un código durante el registro para confirmar que el usuario es el propietario del número de teléfono que proporcionó. Lookup también puede ayudar en esta etapa a validar el número antes de enviarlo.

Páginas relacionadas

Opt-in y recopilación de SMS

Métodos de recopilación, texto de divulgación requerido y validación de audiencia para todos los tipos de programa.

Mensajería transaccional

Casos de uso transaccionales y puntos de recopilación junto con los programas de OTP.

Informes de mensajes SMS

Métricas de entrega y códigos de error de SMS para solucionar fallos de OTP.

API Create Message

Referencia de la API para activar envíos de OTP y transaccionales desde tu backend.