---
title: "Contrato de autenticación de Driver App | Documentación de Ordering.co"
description: "Mantén los límites entre ramas de inicio de sesión configuradas, comprobaciones del rol Driver y estado local de sesión."
canonical: https://docs.ordering.co/es/docs/developers/driver-app/authentication-contract/
---

# Contrato de autenticación de Driver App

La autenticación de Driver App combina ramas de credenciales configuradas, autenticación del servidor, control del rol Driver y persistencia de sesión local. Trata esas decisiones por separado: una respuesta correcta a las credenciales no constituye automáticamente una sesión Driver válida, y restaurar el estado local de sesión no equivale a autorización reciente del servidor.

El servicio de autenticación y proveedor configurados determinan si una solicitud de inicio de sesión tiene éxito. La app aún debe aplicar el rol Driver y autorizar cada solicitud posterior a la API.

## Disponibilidad

La pantalla Login habilita la presentación de contraseña para correo electrónico y teléfono celular, y pasa el rol Driver como rol permitido en el inicio de sesión estándar. La configuración del proyecto también puede exponer OTP, código de dispositivo, proveedores específicos, CAPTCHA u otras ramas alternativas. Las ramas alternativas no repiten todas el mismo control de rol Driver y no deben considerarse equivalentes sin una validación específica.

La navegación sin sesión registra Home, Login y Forgot. No registra el alta de Driver ni asigna rutas a enlaces profundos entrantes.

## Requisitos previos

- Compilación configurada de Driver App y flujo de cuenta Driver compatible.
- Configuración de autenticación actual para la rama prevista.
- Aplicación explícita del rol Driver en todas las ramas que puedan crear estado local de sesión.
- Gestión segura de credenciales, valores OTP, resultados de proveedores, tokens, identidad de notificaciones y datos de cuenta guardados localmente.
- Autorización independiente del servidor en cada solicitud posterior a la autenticación.

## Límites de responsabilidad

| Límite                       | Responsabilidad                                                                                                        | Límite                                                                  |
| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| Interfaz Login               | Mostrar controles configurados de credenciales/OTP/proveedor y estados locales de validación/carga/error.              | La visibilidad no demuestra la disponibilidad del proveedor o servidor. |
| Controlador de autenticación | Construir el formato seleccionado de credenciales, llamar al endpoint correspondiente e interpretar la respuesta.      | Las ramas pueden diferir en controles de rol y limpieza.                |
| Control del rol Driver       | Admitir solo el rol Driver en la ruta estándar de sesión local.                                                        | Las ramas alternativas pueden aplicar controles distintos.              |
| Limpieza tras rechazo de rol | Solicitar cierre de sesión del servidor para una sesión devuelta de otra función antes de mostrar un error de permiso. | El cierre/limpieza puede fallar o resolverse parcialmente.              |
| Proveedor de sesión          | Guardar/quitar token local, usuario y estado opcional del dispositivo; exponer autenticación/carga.                    | El almacenamiento local no valida ni revoca en el servidor.             |
| Navegación Root              | Elegir la rama con/sin sesión según el estado local de sesión/disponibilidad.                                          | Navegar no autoriza una tarea.                                          |
| API                          | Autenticar credenciales y autorizar cada lectura/mutación posterior.                                                   | Comprueba el comportamiento de la API en el entorno de la app.          |
| OTP/CAPTCHA/proveedor        | Controlar generación, verificación, desafíos y resultados externos.                                                    | Completar con el proveedor no demuestra el rol Driver.                  |

## Entradas y resultados

| Entrada/rama                              | Resultado del cliente                                                                               | Comprobación requerida                             | Límite de fallo/parcial                                                                            |
| ----------------------------------------- | --------------------------------------------------------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| Correo/celular + contraseña               | Respuesta de autenticación estándar                                                                 | Rol Driver antes del inicio de sesión local        | Error, función incorrecta, fallo de limpieza o falta de sesión                                     |
| OTP                                       | Resultado de credencial de un solo uso generada/verificada                                          | Repetir la política del rol Driver y de sesión     | Algunas rutas de verificación pueden fijar la sesión local sin el control de rol estándar          |
| Código de dispositivo                     | Credencial de código de dispositivo y persistencia local opcional                                   | Rol Driver, propiedad del dispositivo y revocación | La interfaz expone capacidades distintas a las del controlador                                     |
| Inicio de sesión específico del proveedor | Resultado del proveedor/servidor                                                                    | Rol Driver e identidad del proveedor               | No se han demostrado disponibilidad ni paridad del control de rol                                  |
| CAPTCHA                                   | Valor del desafío añadido antes de la solicitud seleccionada                                        | Validez del desafío y resultado del proveedor      | Una configuración ausente/incompleta puede bloquear o alterar otra rama                            |
| Identidad de notificación                 | Token/datos opcionales de la aplicación incluidos durante la autenticación                          | Propiedad y privacidad de notificación             | Iniciar sesión correctamente no demuestra registro/entrega push                                    |
| Restauración de sesión local              | Token/usuario/dispositivo guardados devueltos a proveedores                                         | Volver a autorizar cada solicitud de API           | Un estado obsoleto/deshabilitado/de función incorrecta puede persistir hasta controles posteriores |
| Flujo Forgot                              | El formulario local puede mostrar un estado de enlace enviado antes de que se resuelva la solicitud | Observar por separado el éxito/error final         | La transición de interfaz no demuestra entrega ni finalización del restablecimiento                |

## Seguridad y privacidad

- Nunca registres ni expongas credenciales, OTP, valores CAPTCHA, tokens, ID de proveedores, identidad de notificaciones, registros de cuentas ni códigos de dispositivo.
- Aplica el control de rol Driver antes de que cada rama escriba el estado local de sesión.
- Trata por separado el cierre tras rechazo de rol, limpieza del proveedor, revocación de token y limpieza local.
- No compartas tokens ni uses el estado guardado como confirmación de autorización actual.
- Borra el estado de la cuenta anterior y de solicitudes tardías antes de admitir otra cuenta.

## Límites y estados de fallo

| Estado                                       | Significado                                                                        | Respuesta de mantenimiento                                               |
| -------------------------------------------- | ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
| Rama configurada oculta                      | La interfaz/configuración no la admite.                                            | No expongas una capacidad que solo existe en el controlador.             |
| Error de autenticación                       | El contrato del servidor/proveedor elegido devolvió o produjo un fallo.            | Mantén la sesión cerrada y muestra un error saneado.                     |
| Función incorrecta                           | La rama estándar rechazó la cuenta devuelta.                                       | Exige la limpieza completa del servidor/cliente; no navegues con sesión. |
| La rama alternativa parece correcta          | OTP/proveedor devolvió una cuenta/sesión.                                          | Verifica la paridad del rol Driver antes de iniciar sesión localmente.   |
| Sesión local restaurada                      | Hay datos guardados disponibles.                                                   | Vuelve a autorizar cada lectura/acción; no la llames sesión reciente.    |
| Usuario local deshabilitado/ausente          | La comprobación de coherencia de sesión puede solicitar el cierre de sesión local. | El estado y limpieza del servidor son independientes.                    |
| Estado de enlace de restablecimiento enviado | La interfaz local de recuperación avanzó.                                          | Espera la solicitud/resultado real; no afirmes que llegó el correo.      |

## Diagnóstico

| Síntoma                                                              | Inspeccionar                                                                         | Diagnóstico seguro                                                                     |
| -------------------------------------------------------------------- | ------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------- |
| Falta la opción de inicio de sesión prevista                         | Configuración actual y exposición en la interfaz                                     | No invoques una rama que solo tenga el controlador.                                    |
| Parece aceptarse una cuenta que no es Driver                         | Aplicación del rol por rama y escritura de sesión local                              | Detén el trabajo autenticado y sigue el procedimiento seguro de limpieza/escalación.   |
| Aparece un error de función incorrecta, pero el estado no está claro | Resultados por separado del cierre de sesión del servidor, sesión local y navegación | No reutilices tokens devueltos ni fuerces la navegación.                               |
| La App se abre con sesión a partir de datos guardados                | Hidratación de sesión y autorización en cada solicitud                               | Considera provisional el estado guardado hasta que las solicitudes actuales autoricen. |
| La recuperación dice que se envió un enlace demasiado pronto         | Transición local frente a resolución de la solicitud                                 | Espera el éxito/error final; no repitas ni afirmes que se entregó.                     |

Vuelve a revisar este contrato cuando cambien una rama de inicio de sesión, control de rol, CAPTCHA/proveedor, identidad de notificación, almacenamiento de sesión, limpieza tras rechazo de rol, estado de recuperación o selección de autenticación Root.

**Guías relacionadas:** [Abrir Driver App e iniciar sesión](https://docs.ordering.co/es/docs/products/driver-app/get-started/open-driver-app/) · [Iniciar sesión como conductor](https://docs.ordering.co/es/docs/products/driver-app/get-started/sign-in/) · [Opciones de inicio de sesión](https://docs.ordering.co/es/docs/products/driver-app/get-started/sign-in-options/) · [Restablecer una contraseña](https://docs.ordering.co/es/docs/products/driver-app/get-started/reset-password/) · [Inicio autenticado](https://docs.ordering.co/es/docs/developers/driver-app/authenticated-bootstrap/)
