Iniciar sesión
Customer App puede mostrar un formulario de inicio de sesión vacío con uno o varios métodos condicionales. Esta referencia explica los estados y responsables relacionados con ese formulario. No te pide ingresar, enviar, copiar, guardar ni compartir credenciales, valores de un solo uso, datos de proveedores ni detalles de una cuenta.
Que se envíe el formulario, se complete un desafío, el proveedor informe que tuvo éxito o Ordering.co acepte una solicitud no demuestra que se hayan actualizado la unión de datos de invitado, el almacenamiento local de la sesión, la identidad del proveedor, la navegación ni las pantallas posteriores de la cuenta.
Los métodos de inicio de sesión son condicionales
| Método o pantalla | Qué puede mostrarse | Límite importante |
|---|---|---|
| Formulario de credenciales | Correo electrónico o teléfono y contraseña, si está habilitado | La validación y el envío local no demuestran que se haya autenticado ni creado una sesión. |
| Inicio de sesión del dispositivo | Un método del dispositivo, si está habilitado para la experiencia actual | La aceptación del dispositivo, la autenticación de Ordering.co, la identidad de cuenta y el almacenamiento local de la sesión son aspectos distintos. |
| Inicio de sesión de un solo uso | Opciones de envío por correo o teléfono, cuenta regresiva local, campo, comprobación y reenvío, si está habilitado | La generación, la entrega del proveedor, el temporizador local, la comprobación, la emisión de sesión y la protección contra repetición son procesos independientes. |
| Inicio de sesión social | Uno o varios botones de proveedores cuando la plataforma o configuración lo permita | La autorización del proveedor no verifica la identidad en Ordering.co, no vincula una cuenta, no une datos de invitado ni confirma una sesión. |
| Desafío reCAPTCHA | Un desafío antes o después de un error de autenticación, si está configurado | El servidor debe verificar que se haya completado el desafío en la solicitud actual; no es una autenticación. |
| Identidad del proveedor de soporte | Un intento de registro sujeto al consentimiento, después del inicio de sesión de la cuenta | Es posterior a la autenticación y no demuestra que se haya registrado correctamente el proveedor ni la sesión. |
Que falte un método no demuestra que la cuenta, el proveedor o la capacidad no existan. La configuración, la plataforma, el proyecto, la sesión y el estado actual de la cuenta pueden cambiar las opciones del formulario vacío.
Enviar y actualizar el estado son pasos distintos
| Estado | Interpretación segura |
|---|---|
| Formulario vacío | No ha comenzado ninguna solicitud de autenticación. |
| Error de validación local | El estado actual del formulario se rechazó localmente; no implica una conclusión del servidor o proveedor. |
| Se solicitó el envío | Es posible que haya comenzado una solicitud de autenticación. Evita duplicar el trabajo hasta conocer el resultado. |
| Desafío obligatorio o pendiente | La autenticación no se ha completado. La configuración del desafío y la validación del servidor siguen siendo procesos separados. |
| El proveedor devolvió la autorización | Ordering.co todavía debe verificar la afirmación o el perfil y resolver la identidad de la cuenta. |
| Ordering.co aceptó la solicitud | Se devolvió un resultado del servidor sobre la cuenta o sesión; el almacenamiento local y las tareas posteriores aún pueden fallar. |
| Unión de datos de invitado pendiente | Es posible que los datos previos de invitado se estén transfiriendo a la cuenta; la integridad y la idempotencia son independientes. |
| Almacenamiento local de sesión pendiente | Las credenciales y los datos de cuenta pueden escribirse en más de un paso; es posible que queden almacenados parcialmente. |
| Trabajo posterior con proveedor o eventos | La identidad de soporte, la instalación de notificaciones, los eventos o el reinicio aún pueden estar pendientes o fallar. |
| Cambió la navegación | Se hizo visible un destino; no demuestra que todas las fases anteriores hayan terminado. |
| Resultado desconocido | Se perdió la respuesta, se reinició la aplicación o cambió la cuenta, el proyecto o la sesión antes de conciliar el estado. |
Estados de credenciales, dispositivo y acceso de un solo uso
Los métodos de credenciales, dispositivo y acceso de un solo uso emplean datos y rutas del servidor diferentes. No infieras que el éxito o el fallo de un método se aplique a otro.
Para el inicio de sesión de un solo uso, mantén separados estos estados:
- solicitud de envío;
- aceptación o entrega del proveedor;
- cuenta regresiva local y disponibilidad del reenvío;
- ingreso local y comprobación automática;
- autenticación de Ordering.co y emisión de sesión; y
- almacenamiento local de sesión y navegación.
La cuenta regresiva visible no es el vencimiento autorizado por el servidor. Reenviar no demuestra que se haya renovado o invalidado un valor anterior. Esta guía no promete intentos restantes, vencimiento exacto, bloqueo, protección contra repetición, uso único ni entrega.
Proveedores sociales, reCAPTCHA y de soporte
La autorización social, reCAPTCHA y el registro en el sistema de soporte son relaciones independientes con proveedores:
- un proveedor social entrega una afirmación o perfil que Ordering.co debe verificar y vincular según una política explícita de identidad;
- reCAPTCHA entrega el resultado de un desafío que el servidor debe validar para la misma solicitud de autenticación actual; y
- el registro de soporte puede ocurrir solo después del consentimiento y de autenticarse correctamente, y debe borrarse al cerrar sesión o cambiar la cuenta o el proyecto.
Que la interfaz del proveedor informe éxito, cancelación o error no confirma una sesión de Customer App. No uses pantallas de proveedores, identidades alternativas ni datos copiados de desafíos para solucionar problemas de documentación.
Unión de datos de invitado, almacenamiento de sesión y navegación
El inicio de sesión puede transferir al contexto de la cuenta los datos previos de invitado. La resolución de cuenta en el servidor, la unión de datos de invitado, la emisión de sesión, el almacenamiento local de credenciales y cuenta, la asociación de la instalación de notificaciones, el registro del proveedor, los eventos, el reinicio y el destino siguiente pueden actualizarse de manera independiente.
La siguiente pantalla visible puede depender del estado de la dirección, el cambio de proyecto, completar el perfil, verificar la cuenta, el tutorial y el flujo que solicitó el inicio de sesión. Una respuesta de inicio de sesión aceptada no garantiza un destino específico.
Sesión única, cierre de sesión y revocación
Una cuenta puede usar una estrategia de sesión que cambie la relación entre un inicio de sesión nuevo y las sesiones existentes. No hay una garantía pública de que el nuevo inicio revoque todas las sesiones anteriores, de que un conflicto de sesión única se resuelva de manera atómica ni de que el estado del proveedor, dispositivo o socket siga la revocación del servidor.
Iniciar sesión, cerrar sesión, revocar una sesión, revocar todas las sesiones, cerrar la sesión del proveedor y limpiar el almacenamiento local son operaciones distintas. Una pantalla con sesión iniciada o cerrada no demuestra que todas las sesiones del servidor y proveedores tengan el mismo estado.
Errores, límites de frecuencia y resultados desconocidos
| Resultado observable | Interpretación segura |
|---|---|
| El método o formulario no está disponible | La capacidad o configuración actual no está resuelta o disponible; no infieras que la cuenta exista o no exista. |
| Error de autenticación | La solicitud no se aceptó como se presentó; no infieras qué credencial, cuenta, proveedor o desafío lo causó. |
| Aparece un desafío después de un error | La autenticación sigue pendiente; el desafío no es un reintento exitoso. |
| El valor de un solo uso aparece como incorrecto | No implica intentos restantes, vencimiento, bloqueo ni existencia de cuenta. |
| Aparece un límite o período de espera | Sigue solo el estado visible actual; no se han demostrado el intervalo exacto del servidor ni la disponibilidad de otros métodos. |
| Aparece un estado de sesión única o permisos | La autoridad de sesión no está resuelta; el mensaje por sí solo no demuestra revocación ni rol. |
| Se aceptó la respuesta, pero no aparece el destino | El almacenamiento local, la unión de datos de invitado, las tareas del proveedor, el reinicio o la navegación pueden haber quedado incompletos. |
| Se reinicia la aplicación o desaparece la respuesta | Mantén sin resolver el estado de autenticación y sesión; no vuelvas a enviar automáticamente. |
Solucionar problemas de forma segura
Falta un método
Usa únicamente los métodos que aparecen actualmente en el formulario vacío. No cambies la configuración del proyecto o proveedor ni uses una ruta privada para forzar otro método.
El envío sigue ocupado o devuelve un error
No vuelvas a enviar automáticamente ni cambies de método para comprobar la cuenta. Mantén el resultado sin resolver hasta que el formulario actual esté listo.
El valor de un solo uso nunca llega o aparece como incorrecto
No infieras que la cuenta exista, ni su vencimiento, los intentos o un bloqueo. No compartas el destinatario ni el valor en notas de soporte.
El proveedor se cierra o vuelve a Iniciar sesión
Considera sin resolver el estado del proveedor y de Ordering.co. No repitas la autorización del proveedor ni pruebes otra identidad solo para forzar un resultado.
El desafío se repite
La solicitud de autenticación no está resuelta. No copies los datos del desafío ni infieras que el paso anterior de credenciales o proveedor tuvo éxito.
Parece que se aceptó el inicio de sesión, pero se abre un destino equivocado
La navegación y las pantallas posteriores de cuenta, dirección y verificación son independientes. No cambies el perfil ni el estado del proyecto para comprobar la sesión.
La aplicación se reinicia o vuelve al formulario vacío
No infieras que el inicio de sesión falló ni que cerrar sesión tuvo éxito. Antes de otra acción de autenticación, vuelve a establecer el estado actual de la sesión.
Aparecen datos de un invitado, cuenta o proyecto anterior
Detente y evita usar, copiar o unir los datos obsoletos. Debe descartarse la generación anterior.
Accesibilidad y privacidad
Las pestañas de métodos, los campos, la visibilidad de contraseña, los controles de dispositivo y redes sociales, el desafío, la cuenta regresiva/entrada/reenvío/comprobación del acceso de un solo uso, los estados ocupado/error/límite/desconocido, Cancelar, recuperación y Atrás necesitan nombres, roles, estados, anuncios, orden del foco y retorno predecible. El texto grande, el teclado, las áreas seguras, los lectores de pantalla y el control Atrás de iOS/Android no deben ocultar el estado actual ni una salida segura disponible.
No expongas credenciales, valores de un solo uso, datos del destinatario o la cuenta, afirmaciones del proveedor, valores de sesión, identidad del dispositivo, datos de invitado ni datos del desafío en capturas, registros, diagnósticos, notas de soporte o fixtures. Estos son requisitos de accesibilidad, autenticación y privacidad; no establecen que esas áreas tengan soporte actualmente.
Qué puede afectar el inicio de sesión
Los métodos disponibles y sus resultados pueden variar según los métodos de credenciales/dispositivo/acceso de un solo uso; las condiciones de cada método; los proveedores sociales; la configuración de reCAPTCHA y su validación en el servidor; la gestión de errores, límites de frecuencia y sesiones únicas; la vinculación de cuentas; la unión de datos de invitado; la emisión o revocación de sesiones; el almacenamiento local; la instalación de notificaciones; el registro de soporte sujeto a consentimiento; los eventos de inicio/cierre de sesión; el reinicio del proyecto; la navegación posterior al inicio de sesión; la accesibilidad; o los cambios en la aplicación, sus componentes o servicios relacionados.
Guías relacionadas: Iniciar el recorrido del cliente · Crear una cuenta o continuar como invitado · Verificar la cuenta · Descripción general del perfil y la cuenta · Configuración de la cuenta · Privacidad y consentimiento