Passer au contenu principal
Ce guide explique comment intégrer le flux de vérification web de Didit dans un composant WebView mobile natif. Ce n’est pas la même chose que les SDK natifs iOS, Android, React Native ou Flutter : c’est une solution de repli pour les plateformes qui ne peuvent pas utiliser de SDK natif.

Privilégiez toujours les SDK natifs

Des SDK natifs sont disponibles pour iOS, Android, React Native et Flutter. Ils offrent des performances nettement meilleures, une gestion de la caméra, une lecture NFC des passeports et des cartes d’identité, une intégration biométrique et une expérience utilisateur supérieure. Utilisez WebView uniquement si aucun SDK natif n’est disponible pour votre plateforme.

SDK iOS

SDK Swift natif pour iOS 13+

SDK Android

SDK Kotlin natif pour Android 6.0+

SDK React Native

API TypeScript multiplateforme. Compatible avec Expo.

SDK Flutter

API Dart multiplateforme. Package pub.dev.

Quand utiliser WebView

Utilisez l’intégration WebView uniquement lorsque :
  • Vous développez sur une plateforme sans SDK natif (par exemple Xamarin, Cordova ou d’autres frameworks de niche)
  • Vous avez besoin d’un prototype rapide ou d’une preuve de concept avant d’intégrer le SDK natif
  • Vous migrez depuis le web et souhaitez une passerelle temporaire vers une intégration native

Fonctionnement

1

Créer une session

Votre backend appelle l’API de création de session et reçoit une url hébergée.
2

Ouvrir dans WebView

Votre application charge la url dans un composant WebView.
3

L'utilisateur termine la vérification

L’utilisateur suit le flux de vérification dans la WebView.
4

Intercepter le rappel

Une fois la vérification terminée, WebView accède à votre URL de rappel. Votre application intercepte cette navigation et en extrait le résultat.
5

Récupérer les résultats complets via webhook

Votre backend reçoit les données de décision complètes via le webhook.

Créer une session

Avant d’ouvrir le flux de vérification, créez une session depuis votre backend :
Réponse (201, l’url intègre le session_token de 12 caractères, et non le session_id) :
Chargez le champ url dans WebView, sans jamais le construire manuellement à partir de session_token.

React Native

Installez le package WebView :

Implémentation

Démo React Native

Exemple de vérification Expo + WebView

Flutter

Ajoutez les packages requis à pubspec.yaml :

Implémentation

Démo Flutter

Exemple de vérification Flutter WebView

Configuration essentielle

Agent utilisateur (obligatoire)

Vous devez définir un agent utilisateur mobile générique pour que WebView fonctionne correctement :
Cela garantit un accès correct à la caméra, un affichage correct de l’interface et une lecture multimédia optimale.

Paramètres multimédias (obligatoires)


Gestion du rappel

Après la vérification, WebView redirige vers votre URL de rappel avec des paramètres de requête :
Pour une meilleure expérience utilisateur, utilisez un schéma d’URL personnalisé (par exemple myapp://verification-complete) comme rappel et gérez-le comme un lien profond dans votre application.

Dépannage

  1. Vérifiez que mediaPlaybackRequiresUserGesture est false
  2. Vérifiez que les autorisations de la caméra sont accordées au niveau du système d’exploitation
  3. Vérifiez que la chaîne de l’agent utilisateur est correctement définie
  1. Vérifiez que l’URL de la session est valide et n’a pas expiré
  2. Vérifiez la connexion Internet
  3. Vérifiez que JavaScript est activé dans les paramètres de WebView
  1. Vérifiez que votre URL de rappel correspond à celle que vous avez définie lors de la création de la session
  2. Vérifiez que le délégué ou l’écouteur de navigation est correctement configuré
  3. Essayez de définir callback_method sur "both" lors de la création de la session

Dernière modification le 7 novembre 2026