> ## 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.

# React Native: guia rápido de autenticação

> Configure a autenticação do Didit no React Native: login hospedado, validação de retorno, sessões seguras e links para verificação e monitoramento.

> [!WARNING]
>
> A Autenticação é nova: **@didit-protocol/auth-react-native** depende da versão. As coordenadas de distribuição, as versões e as assinaturas das funções ainda não estão confirmadas aqui. Não instale um pacote suposto nem use o SDK de Verificação de identidade como SDK de Autenticação.

## Prepare a aplicação

1. Confirme que a Autenticação está habilitada na sua aplicação Didit e copie a origem de login dela (`https://<slug>.auth.didit.me`, ou `<slug>.sandbox.auth.didit.me` para sandbox) no painel.
2. Registre uma URL de retorno exata compatível com a sua aplicação e com o runtime. Valide a propriedade dos links de aplicativo; não presuma que esquemas de URL personalizados arbitrários são aceitos.
3. Mantenha separadas as configurações de sandbox e de produção, incluindo o tratamento do retorno e as credenciais armazenadas.
4. Defina um mapeamento estável de pessoas antes de conectar a verificação ou o monitoramento.

Configure e teste os links de retorno separadamente no iOS e no Android. O wrapper de Autenticação é separado do @didit-protocol/sdk-react-native, que cuida da verificação.

## Implemente o fluxo hospedado

Abra o navegador de autenticação nativo do sistema com a URL `{origin}/sign-in`. Forneça um `state` aleatório e novo, um desafio PKCE S256 e o seu `redirect_uri` registrado. Mantenha o verificador no seu app somente para aquela tentativa. O [guia de início rápido em JavaScript](https://docs.didit.me/pt-br/authentication/quickstarts/javascript.md) mostra o protocolo subjacente; no código nativo, use a criptografia e o tratamento de URLs da plataforma em vez de globais do navegador.

No retorno, verifique o state, o tempo de vida da transação e o destino do callback antes de trocar o código de uso único no endpoint `token/`. Use o verificador original e a URI de redirecionamento exata. Cancelar ou fechar o navegador não é um login bem-sucedido.

Armazene os refresh tokens no armazenamento protegido nativo da plataforma; nunca em um arquivo de preferências comum, em analytics ou em logs de falhas. Valide a sessão atual usando `GET session/` com o Bearer token do usuário final. Faça a atualização de forma serial, substitua os dois tokens ao mesmo tempo e limpe o estado específico do usuário após o logout. Consulte [tokens e JWKS](https://docs.didit.me/pt-br/authentication/tokens-and-jwks.md) para ver o contrato da requisição e o comportamento de reutilização do refresh token.

## Prévia do lançamento do SDK nativo

Os módulos nativos de Autenticação estão previstos para oferecer login, acesso à sessão atual, obtenção de tokens, logout e step-up, com sinais automáticos do dispositivo. Passkeys nativas e armazenamento protegido de tokens fazem parte desse lançamento. As APIs do wrapper seguirão os contratos publicados de cada plataforma; não copie argumentos de construtor nem assinaturas de métodos presumidos a partir de um exemplo de design.

Até o módulo ser lançado, mantenha o adaptador dele desativado ou use uma implementação revisada do protocolo hospedado para a sua aplicação habilitada. Não divulgue um guia de início rápido de Autenticação nativa como funcional com base apenas na instalação do pacote.

## Conecte a verificação e o monitoramento

O seu backend gera `vendor_data` com base na pessoa autenticada. Ele cria sessões de verificação ou emite tokens de monitoramento com escopo para essa pessoa. Retorne ao seu app somente a credencial da sessão ou o token com escopo; a chave de API permanece no servidor.

Use o [SDK de verificação para React Native](https://docs.didit.me/pt-br/integration/native-sdks/react-native-sdk.md) quando precisar de verificação de identidade. Siga o [envio de transações pelo SDK](https://docs.didit.me/pt-br/transaction-monitoring/sdk-transaction-submission.md) para ter suporte a monitoramento na sua plataforma. Trate separadamente as decisões de login, de verificação e de transação.

## Verifique a integração

Teste o retorno a um app fechado (cold start), as transições entre segundo e primeiro plano, o cancelamento no navegador, um callback incompatível, a reutilização do código, a expiração do token, renovações simultâneas, MFA, logout e o login como outro usuário. Teste o cadastro de passkeys e o login em dispositivos compatíveis assim que esse lançamento estiver disponível. Uma verificação exclusiva do dispositivo continua não verificada até ser executada na plataforma de destino.


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