> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Autenticación en React Native: guía rápida

> Integra la autenticación de Didit en React Native: login alojado, validación del callback, sesiones seguras, verificación y monitorización.

> [!WARNING]
>
> La autenticación es una función nueva: **@didit-protocol/auth-react-native** depende de la versión. Aquí no se confirman las coordenadas de distribución, las versiones ni las firmas de las funciones. No instales un paquete supuesto ni uses el SDK de verificación de identidad como SDK de autenticación.

## Prepara la aplicación

1. Confirma que Autenticación está habilitada para tu aplicación de Didit y copia desde la consola su origen de inicio de sesión (`https://<slug>.auth.didit.me`, o `<slug>.sandbox.auth.didit.me` para sandbox).
2. Registra una URL de callback exacta que admitan tu aplicación y el entorno de ejecución. Valida la propiedad de los app links; no des por hecho que se aceptan esquemas de URL personalizados arbitrarios.
3. Mantén separadas la configuración de sandbox y la de producción, incluidos el manejo de callbacks y las credenciales almacenadas.
4. Elige tu asignación estable de personas antes de conectar la verificación o la monitorización.

Configura y prueba los enlaces de callback por separado en iOS y Android. El wrapper de Autenticación es independiente de @didit-protocol/sdk-react-native, que se encarga de la verificación.

## Implementa el flujo alojado

Abre el navegador de autenticación nativo del sistema con la URL `{origin}/sign-in`. Proporciona un `state` aleatorio nuevo, un desafío PKCE S256 y tu `redirect_uri` registrada. Conserva el verificador en tu aplicación solo para ese intento. La [guía de inicio rápido de JavaScript](https://docs.didit.me/es/authentication/quickstarts/javascript.md) muestra el protocolo subyacente; en código nativo, usa la criptografía y el manejo de URL de la plataforma en lugar de los objetos globales del navegador.

Al recibir el callback, verifica el state, la vigencia de la transacción y el destino del callback antes de intercambiar el código de un solo uso en `token/`. Usa el verificador original y la URI de redirección exacta. Cancelar o cerrar el navegador no constituye un inicio de sesión exitoso.

Guarda los tokens de actualización en el almacenamiento protegido nativo de la plataforma; nunca en un archivo de preferencias sin protección, en analítica ni en registros de fallos. Valida la sesión actual con `GET session/` usando el token Bearer del usuario final. Serializa las operaciones de actualización, sustituye ambos tokens a la vez y borra el estado específico del usuario después de cerrar sesión. Consulta [tokens y JWKS](https://docs.didit.me/es/authentication/tokens-and-jwks.md) para ver el contrato de la solicitud y el comportamiento ante la reutilización de tokens de actualización.

## Vista previa del lanzamiento del SDK nativo

Está previsto que los módulos nativos de Autenticación ofrezcan inicio de sesión, acceso a la sesión actual, obtención de tokens, cierre de sesión y autenticación reforzada (step-up), con señales automáticas del dispositivo. Las passkeys nativas y el almacenamiento protegido de tokens forman parte de ese lanzamiento. Las API del wrapper seguirán los contratos de plataforma publicados; no copies argumentos de constructor ni firmas de métodos supuestos a partir de un ejemplo de diseño.

Hasta que se lance el módulo, mantén su adaptador deshabilitado o usa una implementación revisada del protocolo alojado para tu aplicación habilitada. No anuncies una guía de inicio rápido de Autenticación nativa funcional basada únicamente en la instalación del paquete.

## Conecta la verificación y la monitorización

Tu backend deriva `vendor_data` de la persona autenticada. Crea sesiones de verificación o emite tokens de monitorización con alcance limitado para esa persona. Devuelve a tu aplicación solo la credencial de la sesión o el token con alcance limitado; la clave de API se queda en el servidor.

Usa el [SDK de verificación para React Native](https://docs.didit.me/es/integration/native-sdks/react-native-sdk.md) cuando necesites verificación de identidad. Sigue [envío de transacciones desde el SDK](https://docs.didit.me/es/transaction-monitoring/sdk-transaction-submission.md) para obtener compatibilidad con la monitorización en tu plataforma. Trata por separado las decisiones de inicio de sesión, de verificación y de transacciones.

## Verifica la integración

Prueba el regreso a una aplicación iniciada en frío, las transiciones entre segundo y primer plano, la cancelación del navegador, un callback que no coincide, la reutilización del código, la expiración de tokens, la actualización concurrente, MFA, el cierre de sesión y el inicio de sesión como otro usuario. Prueba el registro de passkeys y el inicio de sesión en dispositivos compatibles cuando esa versión esté disponible. Una comprobación solo en el dispositivo se considera no verificada hasta que se ejecute en la plataforma de destino.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.