US-004 — Verificación de número por enlace
Detalle de la historia¶
Historia¶
Como cliente registrado, quiero verificar un número de teléfono nuevo haciendo clic en un enlace que llegue a mi correo, para evitar que otra persona use mi identidad o mi cuenta sin mi autorización.
Persona de usuario¶
Aplica a todo cliente que haya registrado un número nuevo (sea en el primer registro por WhatsApp o al agregar un número adicional a una cuenta existente).
Contexto de negocio¶
WhatsApp, por sí solo, no garantiza que quien escribe desde un número sea su titular legítimo: alguien con acceso temporal a un teléfono podría contactar a FleteChat, darse de alta con datos de otra persona y pedirle acciones en nombre del titular. La verificación por correo cierra ese vector: quien controla el correo registrado es quien confirma que el número es suyo.
El mecanismo es un enlace único enviado al correo del cliente. Un solo clic marca el número como verificado y el enlace deja de servir. Simple para el cliente, robusto contra reuso.
Diálogo de referencia¶
Confirmación tras el clic¶
Agente (en WhatsApp, tras el clic en el enlace): Su número quedó verificado. Ya puedo ayudarle a completar operaciones sin restricciones.
Cliente pide reenvío del enlace¶
Cliente: No me llegó el correo de verificación.
Agente: Acabo de reenviarlo a maria@ejemplo.com. Le pido revisar también la carpeta de correo no deseado; el enlace llega en un correo con el asunto "Verificación de número — FleteChat".
Criterios de aceptación¶
Envío del enlace¶
- Al registrar un número nuevo (primera alta o número adicional), FleteChat envía un correo al correo registrado del cliente con un enlace de verificación.
- El correo indica con claridad qué número se está verificando, por qué se le envía ese correo y qué hacer si no fue el cliente quien lo solicitó.
- El asunto y el remitente del correo son consistentes con la marca y el estilo de FleteChat.
Validez del enlace¶
- El enlace es de un solo uso: una vez utilizado, no sirve para verificar nuevamente ni para ninguna otra acción.
- El enlace tiene una vigencia limitada (ver premisas); al expirar, el cliente puede pedir un enlace nuevo.
- Si el cliente hace clic en un enlace ya usado o expirado, el sistema informa con lenguaje claro y ofrece reenviar uno nuevo.
Confirmación en el chat¶
- Al hacer clic exitoso, el número queda marcado como verificado. FleteChat notifica al cliente por WhatsApp que la verificación se completó.
- Desde el momento de la verificación, el número puede usarse sin restricciones: cotizar, aprobar cotizaciones, completar embarques.
Reenvío del enlace¶
- El cliente puede pedir desde WhatsApp un reenvío del enlace en cualquier momento, mientras no haya sido verificado.
- FleteChat limita los reenvíos a un número razonable (ver premisas) para evitar abuso, y lo declara al cliente si se alcanza el límite.
Edge cases¶
- Cliente no recibe el correo. FleteChat ofrece reenviarlo, sugiere revisar la carpeta de correo no deseado y, si el cliente insiste en no recibirlo, ofrece handoff para verificar la dirección de correo o revisar rebotes.
- Cliente hace clic dos veces. El primer clic verifica; el segundo muestra un mensaje claro de enlace ya usado.
- Cliente hace clic después de que el enlace expiró. El sistema muestra mensaje de expiración y ofrece un botón o instrucción para solicitar uno nuevo.
- Cliente escribe al mismo tiempo que hace clic. El sistema procesa el clic; FleteChat detecta que el número acaba de verificarse y ajusta su respuesta en consecuencia.
- Cliente hace clic desde un dispositivo distinto al que usa WhatsApp. El sistema no requiere que el clic venga de un dispositivo específico; la verificación es independiente del dispositivo.
Tamaño, prioridad y tipo¶
- Tamaño: S
- Prioridad: P0 — sin verificación, el registro por WhatsApp queda expuesto a suplantación.
- Tipo: feature
Premisas¶
La historia está redactada bajo las siguientes premisas. Si alguna cambia, la historia debe revisarse y ajustarse en consecuencia. Todas deben ser confirmadas por el cliente antes de cerrar la historia.
- PR-027 — Vigencia del enlace. El enlace de verificación es válido por 2 horas desde su emisión (valor configurable desde parámetros globales, ver US-046). Pasado ese plazo, el cliente debe solicitar uno nuevo; el reenvío está permitido sin fricción dentro del tope de PR-028.
- PR-028 — Reenvíos máximos. El cliente puede pedir hasta 5 reenvíos del enlace por cada número a verificar en una ventana de 24 horas. Cada reenvío invalida los enlaces emitidos previamente. Superado el tope, FleteChat ofrece handoff humano. Valor del tope y de la ventana configurables.
- PR-029 — Canal único de verificación. La verificación de un número se hace solo por correo electrónico; no se ofrecen canales alternativos (SMS, llamada) en v1.0.
Refinamiento y Definition of Ready¶
Notas¶
| Fecha | Participantes | Acuerdo / Nota |
|---|---|---|
| 2026-04-17 | Kaeus | Versión inicial. |
| 2026-04-20 | Kaeus | PR-027 reducida de 24h a 2h (configurable). El enlace de verificación es sensible (fija el dueño de un número): una ventana larga ampliaba la exposición frente a interceptación. El reenvío sin fricción dentro del tope de PR-028 compensa la fricción. PR-028 reescrita para incorporar invalidación en cascada y ventana de conteo. Resolución de hallazgo P3-06 de la revisión exhaustiva. |
Checklist¶
- ✅ Historia escrita en formato Como / Quiero / Para
- ✅ Persona de usuario identificada
- ✅ Contexto de negocio documentado
- ✅ Criterios de aceptación observables y pass/fail
- ✅ Edge cases relevantes listados
- ✅ Tamaño y prioridad asignados
- ⬜ Premisas PR-027 a PR-029 confirmadas por el cliente
- ⬜ Reglas de negocio aplicables aprobadas
- ⬜ Requerimientos funcionales aplicables aprobados
- ⬜ Historia aprobada formalmente por el cliente