Vue d’ensemble
Iframe UniLink (sans backend requis)
La façon la plus rapide de commencer : copiez-collez simplement votre URL UniLink.De quoi vous avez besoin
- Un workflow Didit (créé dans la Console Didit)
- Votre URL UniLink (cliquez sur Copy Link sur votre workflow)
Implémentation
⚠️ Obligatoire : l’attribut allow est indispensable pour accéder à la caméra pendant la détection du vivant.
Avantages principaux
- Configuration en moins d’une minute : aucun backend, aucune clé API
- Zéro configuration : URL de rappel définie dans les paramètres du workflow
- Idéal pour les MVP : démarrez immédiatement
Iframe de session API (avec backend)
Pour les intégrations avancées qui nécessitent une personnalisation par session.Quand l’utiliser
- Transmettre des
vendor_dataoumetadatapersonnalisés par session - Définir des URL de rappel différentes par session
- Suivre les sessions côté serveur avant le début de la vérification
- Associer les sessions à vos identifiants utilisateur
Implémentation
Étape 1 : créer une session (backend) La réponse de création de session contient un champ nomméurl : utilisez-le comme src de l’iframe.
Écouter les événements (postMessage)
La page de vérification envoie des événements à la fenêtre parente. Chaque message respecte cette enveloppe :event.data.data.sessionId, et non event.data.sessionId :
didit:ready ({ sessionId }), didit:started, didit:step_started / didit:step_completed / didit:step_changed ({ step, ... }), didit:status_updated ({ status }), didit:completed ({ sessionId, status }), didit:cancelled, didit:error ({ error, step? }), didit:close_request, et didit:layout ({ contentHeight, colorScheme, dir }, voir ci-dessous). La référence des événements du SDK JavaScript répertorie les événements de vérification disponibles sous forme de callbacks typés. À partir de la version 0.5.0, le SDK gère en interne les messages de mise en page au lieu de les transmettre à onEvent.
Dimensionner l’iframe avec didit:layout
La page de vérification indique l’espace dont elle a besoin grâce à un message didit:layout. Elle en envoie un au chargement, puis un autre à chaque changement de hauteur de contenu, de thème ou de direction du texte :
Pour recevoir
didit:layout dans votre propre iframe, ajoutez sdk_presentation=embedded à son URL de vérification. À partir de la version 0.5.0, le SDK JavaScript définit la présentation à votre place. Sans paramètre de présentation, la page utilise sa mise en page autonome et n’envoie aucun message de mise en page.colorScheme et dir pour adapter les contrôles placés autour de l’iframe au thème et à la direction du texte de la page.
Si la connexion de l’utilisateur est interrompue, la page affiche un écran « Aucune connexion Internet » qui se ferme automatiquement dès que la connexion revient. Si l’utilisateur choisit Exit Verification sur cet écran, la page envoie didit:error avec error: "network_error", puis didit:cancelled : fermez l’iframe à la réception de didit:cancelled.
Implémentation en modale
Pour une expérience modale soignée qui se superpose à votre page :HTML/CSS/JS
Composant React
Un composant React réutilisable pour la vérification en modale :Utilisation
Composant Vue
Configuration
Autorisations requises
Utilisez cette liste complète d’autorisations pour la capture, la géolocalisation, la copie et la compatibilité des médias :
L’attribut
allow délègue des autorisations ; il ne remplace ni le choix de l’utilisateur ni un en-tête Permissions-Policy plus strict sur votre page hôte.
Taille de l’iframe
Le parcours de vérification s’adapte à la taille de son iframe. Dimensionnez l’iframe selon la fenêtre dans laquelle elle est affichée :
Pour la plage intermédiaire, commencez à 500px par 700px jusqu’à l’arrivée du premier message
didit:layout, avec le même plafond de hauteur. L’exemple du message didit:layout applique les trois tailles, y compris celles pour ordinateur et téléphone, avant l’arrivée de tout message.
Content Security Policy (CSP)
Si vous utilisez CSP, ajoutez Didit à votre directiveframe-src :
Vérification multi-appareils
L’iframe InContext prend automatiquement en charge la vérification multi-appareils :- L’utilisateur démarre la vérification sur ordinateur
- Si la caméra est indisponible, un code QR s’affiche
- L’utilisateur scanne le code QR avec son mobile
- L’utilisateur termine la vérification sur son mobile
- L’iframe sur ordinateur se met automatiquement à jour avec le résultat
Dépannage
La caméra ne fonctionne pas
- Vérifiez que l’iframe inclut la liste complète des autorisations
- Vérifiez que votre site est servi en HTTPS
- Vérifiez que l’utilisateur a accordé l’autorisation caméra à votre domaine
- Essayez la méthode Redirect si l’accès à la caméra dans l’iframe échoue
L’iframe ne se charge pas
- Vérifiez les problèmes liés à la Content Security Policy (CSP)
- Ajoutez
https://verify.didit.meà votre directiveframe-src - Consultez la console du navigateur pour repérer les erreurs
postMessage non reçu
- Vérifiez que vous écoutez la bonne origine (
https://verify.didit.me, ou votre domaine en marque blanche) - Vérifiez que l’écouteur d’événements est ajouté avant l’ouverture de l’iframe
- Vérifiez le nom et la forme de l’événement : les types sont préfixés (
didit:completed, et nonverification_complete) et le payload est imbriqué sousevent.data.data
Exemple de dépôt
Dépôt GitHub
Consultez le code source et les exemples sur GitHub