Saltar para o conteúdo principal
Estas versões referem-se aos SDKs de verificação de identidade. Os módulos e as camadas de encapsulamento nativos de autenticação têm uma versão separada: consulte os Guias de início rápido de autenticação.
Integre a verificação Didit nativamente nas suas aplicações móveis com os nossos SDKs oficiais. Os SDKs nativos oferecem uma experiência de utilizador fluida, melhor desempenho e acesso total às capacidades do dispositivo, em comparação com as integrações baseadas em WebView.

Abordagem recomendada: Para proporcionar a melhor experiência de utilizador, use os nossos SDKs nativos em vez da integração por WebView. Os SDKs nativos tratam de toda a complexidade das permissões da câmara, da leitura NFC e da prova de vida, prontos a utilizar.


Disponibilidade de SDKs

O consentimento biométrico requer o SDK nativo 4.10.0 ou posterior. Para pessoas abrangidas pela legislação do Illinois, do Texas ou do Colorado, a Didit pode pedir um consentimento biométrico explícito antes da primeira captura facial. O fluxo alojado (SDK Web, WebView, navegador) e os SDK nativos para iOS e Android 4.10.0 ou posterior apresentam este passo; o React Native e o Flutter apresentam-no numa versão que fixa o SDK nativo 4.10.0 ou posterior. Um SDK nativo anterior à 4.10.0, ou um que não indique a sua versão, não o consegue fazer: as suas sessões decorrem como antes, e a decisão indica biometric_consent.status: "pending" com reason: "BIOMETRIC_CONSENT_UNSUPPORTED_SDK". Atualize a versão se verificar pessoas nesses estados.

Novidades na 4.13.2

No iOS, um pedido de fotografia feito a uma câmara que abre mas não entrega imagens já não fecha inesperadamente a aplicação: cada pedido verifica primeiro se existe uma sessão de câmara em execução com uma ligação de vídeo ativa, e o ecrã apresenta, em vez disso, o erro da câmara ou a opção de ignorar. No Android, na selfie da consulta de identificação, um pedido de fotografia feito a uma câmara que não entrega imagens termina no erro da câmara do ecrã ao fim de 5 segundos, em vez de esperar indefinidamente. No ecrã de boas-vindas, enquanto a lista de passos continua abaixo do seu gradiente inferior, surge um botão redondo Deslocar para baixo centrado horizontalmente em relação à lista (também em idiomas escritos da direita para a esquerda), tal como no fluxo Web; um toque desloca a lista para baixo, e o botão fica oculto no fim da lista e enquanto um painel estiver aberto. A versão 4.13.1 para Android foi uma versão intermédia com apenas o botão Deslocar para baixo; a 4.13.2 estende-o ao iOS, ao React Native e ao Flutter. O React Native 4.13.2 corrige também um erro de arranque nas compilações de versão para Android reduzidas com R8 e proguard-android-optimize.txt: o pacote passa a incluir as suas próprias regras do R8. O Flutter 4.13.2 compila também com o Android Gradle Plugin 9 e com o Kotlin integrado.

Novidades na 4.13.0

No passo do telefone, todos os números +1 (EUA e Canadá) mostram, por baixo de Enviar código, uma breve nota sobre o operador (“Podem aplicar-se tarifas padrão de mensagens e dados”) com ligações para os Termos de SMS e para a Política de Privacidade, no idioma da pessoa. A elipse de selfie passa a caber acima dos seus controlos em ecrãs de pouca altura, e desaparecem o botão verde em forma de cápsula «Concluído», o Percebi depois de uma fotografia de documento e o ecrã Selfie tirada: uma fotografia capturada segue diretamente para Em processamento. Quando a captura de documento é apenas a opção alternativa e uma carteira de identidade digital surge em primeiro lugar, o ecrã de abertura da carteira oferece apenas a carteira, e uma nova tentativa na carteira mantém a verificação aberta sem uma ligação para o documento. É desenhada uma bandeira para cada código de país que a Didit pode enviar, e nunca a bandeira errada. Um cenário de sandbox ativado numa sessão que já tinha começado passa a mostrar o motivo, em vez de um erro genérico. No Android, a carteira Credential Manager indica “Verificar com identidade digital”, porque a Google Wallet ou qualquer outra carteira Android que tenha um ID compatível pode responder a este pedido. O iOS não oferece este método.

Novidades na 4.12.2

O ecrã de boas-vindas centra o logótipo acima do título alinhado à esquerda, e o iOS apresenta o logótipo do cliente com 72 pt de altura, tal como o Android e a Web. No passo das pessoas-chave KYB, Adicionar representante abre com uma função de representante selecionada e guarda a pessoa em representantes, mesmo quando o fluxo de trabalho desativa algumas funções. Nos questionários, “Protegido por” fica fixo por baixo do botão em ecrãs pequenos e com texto de grande tamanho, o seletor de país de uma pergunta sobre morada tem como título a morada, e uma lista pendente aberta fica com os mesmos cantos que os campos.

Novidades na 4.12.1

Num iPhone cujo armazenamento está cheio, as capturas de documento e de selfie mantêm agora o vídeo: o SDK para iOS grava-as em memória e nunca carrega uma gravação sem fotogramas de vídeo. Uma resposta do servidor que chega atrasada em relação a uma resposta anterior já não reabre o passo que acabou de ser respondido (o passo de NFC, de selfie ou de documento), no iOS e no Android.

Novidades na 4.12.0

Logótipos de carteiras de identidade digital para todas as carteiras que o fluxo Web apresenta (Mobile-ID, ConnectID, Finnish Trust Network, OneID, Bank iD, MojeID, FranceConnect, Auðkenni, o cartão de identificação estónio e a GOV.UK Wallet), sobre o mesmo suporte branco ou preto do fluxo Web. As dicas de captura indicam o que fazer quando a captura automática não está a funcionar, a mensagem de boas-vindas mantém fixa a frase legal com tamanhos de texto grandes, e um arranque de sessão recusado deixa de oferecer uma nova tentativa que não pode funcionar. As câmaras de documento e de selfie têm um botão Trocar câmara ao lado do botão do obturador, com Carregar movido para Dicas, e nada é capturado automaticamente enquanto um painel estiver aberto sobre a câmara. No Android, o painel Selecionar câmara designa as câmaras “Câmara frontal” e “Câmara traseira” em todos os idiomas.

Novidades na 4.11.0

A versão 4.11.0 inclui também tudo o que estava previsto para a 4.10.0, que nunca foi publicada, por isso atualize diretamente a partir da 4.9.1. O fluxo tem uma estrutura redesenhada, com uma nova barra superior, progresso apresentado em palavras e um ecrã de boas-vindas reconstruído. A captura automática de documentos e de selfies está agora em todas as variantes, com os detetores leves da própria Didit, pelo que as variantes Core e AutoDetection capturam da mesma forma. A variante AutoDetection e o artefacto didit-sdk-autodetection para Android estão obsoletos e são idênticos ao Core, e o artefacto didit-sdk-autodetection-play para Android já não é publicado. Novos passos: Verificação bancária, Localização (com ativação mediante adesão, através das variantes iOS Core-Location, NFC-Location e All-Location), assinatura eletrónica e consentimento biométrico.

O que há de novo na 4.9.1

Os seletores de país dos documentos e do comprovativo de morada passam a abrir no país detetado a partir do endereço IP do utilizador, em iOS e Android, mesmo quando essa consulta termina depois de o ecrã aparecer. Um país definido na sessão ou escolhido pelo utilizador nunca é substituído. No Android, o cabeçalho de secção e os campos de um questionário são apresentados no idioma do SDK, e a leitura NFC do passaporte deixa de falhar na variante completa. Os textos de verificação em russo e quirguiz foram melhorados nas duas plataformas.

O que há de novo na 4.9.0

Todos os SDKs móveis nativos e multiplataforma passam a oferecer um seletor de idioma opcional no ecrã de boas-vindas da verificação. Defina showLanguageSelector como true para mostrar o mesmo seletor compacto e pesquisável usado no fluxo de verificação web. O seletor fica oculto por predefinição, pelo que as integrações existentes mantêm o comportamento atual até o ativarem.

Alternativa: se um SDK nativo ainda não estiver disponível para a sua plataforma, pode usar a Integração WebView como alternativa.


Como funciona uma sessão de verificação

Todos os SDKs nativos utilizam a mesma sessão de verificação da Didit. O fluxo é o seguinte:
  1. O teu backend chama POST /v3/session/ com workflow_id e qualquer contexto opcional (vendor_data, contact_details, expected_details, metadata, callback).
  2. A Didit devolve um session_id, um session_token de curta duração e um url alojado.
  3. A app móvel recebe o session_token do backend e transmite-o ao SDK (startVerification(token: …)).
  4. O SDK nativo abre a interface de verificação, o utilizador conclui os passos e o SDK devolve um resultado com o status final da sessão (Approved, Declined, In Review, etc.).
  5. O teu backend recebe a decisão completa através de um webhook (webhook_type: "status.updated") e guarda-a.
O resultado do SDK indica o resultado do fluxo de verificação (status). A decisão completa (campos do documento, pontuações de correspondência facial, correspondências AML, dados NFC, avisos) é enviada para o teu servidor através de webhook e também pode ser obtida através do endpoint Obter a decisão da sessão. Nunca confies apenas no resultado do lado do cliente para decisões de autorização.
Todos os SDKs nativos suportam também o modo UniLink (apenas com o ID do fluxo de verificação, sem backend). Utilize o UniLink para protótipos rápidos e o método com token de sessão para produção.

SDK para iOS

Quando utilizar: aplicações nativas em Swift / SwiftUI / UIKit para iOS 13+. Um SDK para iOS leve e controlado pelo servidor, para verificação de identidade com configuração mínima.

Repositório no GitHub

Consulte o código-fonte e os exemplos no GitHub
Funcionalidades principais:
  • Suporte a SwiftUI e UIKit
  • Leitura de passaporte e cartão de identidade por NFC (iOS 15+; as variantes sem NFC Core e AutoDetection removem o NFC e o OpenSSL, e são implementadas no iOS 13+)
  • 54 idiomas suportados
  • Tema da interface personalizável
  • Integração com token de sessão ou ID do fluxo de verificação
Início rápido:
→ Documentação completa do SDK para iOS

SDK para Android

Quando utilizar: aplicações nativas em Kotlin / Jetpack Compose / Java para Android 6.0 (API 23) ou superior. Um SDK para Android leve e controlado pelo servidor, para verificação de identidade com configuração mínima.

Repositório no GitHub

Consulte o código-fonte e os exemplos no GitHub
Funcionalidades principais:
  • Suporte a Kotlin e Jetpack Compose
  • Leitura de passaporte e cartão de identidade por NFC (o artefacto me.didit:didit-sdk-core, ativado opcionalmente, remove as dependências de NFC)
  • Deteção automática de documentos e rostos com ML na API 24+ (com recurso à captura manual na API 23)
  • 54 idiomas suportados
  • Tema da interface personalizável
  • Integração com token de sessão ou ID do fluxo de verificação
Início rápido:
→ Documentação completa do SDK para Android

SDK para React Native

Quando utilizar: aplicações multiplataforma em React Native ou Expo que precisam de uma única API em TypeScript para iOS e Android (RN 0.76+, New Architecture). Um SDK multiplataforma para React Native que envolve os SDKs nativos de iOS e Android com uma API unificada em TypeScript.

Repositório no GitHub

Consulte o código-fonte e os exemplos no GitHub
Funcionalidades principais:
  • Uma única API em TypeScript para iOS e Android
  • Suporte a Expo com plugin de configuração sem configuração adicional (é necessária uma compilação de desenvolvimento, o Expo Go não é suportado)
  • Suporte à CLI do React Native
  • Leitura de passaporte e cartão de identidade por NFC (pode ser desativada com DIDIT_SDK_IOS_NFC_ENABLED=false / diditSdkAndroidNfcEnabled=false)
  • 54 idiomas suportados (herdados dos SDKs nativos)
  • Integração com token de sessão ou ID do fluxo de verificação
Início rápido:
→ Documentação completa do SDK para React Native

SDK para Flutter

Quando utilizar: aplicações multiplataforma em Flutter que precisam de uma única API em Dart para iOS e Android (Flutter 3.3+, Dart 3.11+). Um SDK multiplataforma para Flutter que envolve os SDKs nativos de iOS e Android com uma API unificada em Dart.

Pacote no pub.dev

Consulte o pacote no pub.dev
Funcionalidades principais:
  • Uma única API em Dart para iOS e Android
  • Integração com os SDKs nativos através de canais de plataforma
  • Leitura de passaporte e cartão de identidade por NFC (pode ser desativada com DIDIT_SDK_IOS_NFC_ENABLED=false / diditSdkAndroidNfcEnabled=false)
  • 54 idiomas suportados (herdados dos SDKs nativos)
  • Integração com token de sessão ou ID do fluxo de verificação
Início rápido:
→ Documentação completa do SDK para Flutter

SDK para Web (JavaScript)

Quando utilizar: aplicações para navegador e frameworks web (React, Vue, Angular, Next.js, Nuxt, Svelte, JavaScript puro). O SDK para Web abre o fluxo de verificação alojado num modal ou num iframe incorporado. Para apps móveis, prefira os SDKs nativos acima. Um SDK em JavaScript para aplicações web, com suporte a React, Vue, Angular, Next.js, Nuxt, Svelte e JavaScript puro.

Pacote no npm

Consulte o pacote no npm
Funcionalidades principais:
  • Gestão programática de sessões e callbacks de eventos
  • Suporte a React, Vue, Angular, Next.js, Nuxt, Svelte e JavaScript puro
  • Suporte completo a TypeScript
  • Modos modal e incorporado
  • Gestão de estado para interfaces personalizadas
Início rápido:
→ Documentação completa do SDK em JavaScript | Todos os SDKs para Web

Escolher uma integração

Os SDKs nativos são a melhor opção quando precisa de leitura de passaportes eletrónicos por NFC, da captura pela câmara com a menor latência e de uma experiência dentro da aplicação indistinguível dos restantes ecrãs nativos. Use a Integração WebView como alternativa quando não puder publicar uma atualização do SDK nativo (por exemplo, aplicações existentes que não pode recompilar, ou plataformas sem SDK nativo da Didit).
Última modificação em 7 de novembro de 2026