Démarrage rapide
Vérifier l’identité d’une personne se fait en quatre temps : ouvrir un dossier, envoyer la personne sur le parcours hébergé, recevoir la décision et la lire. Tout se fait depuis votre serveur.
| Adresse | |
|---|---|
| API | https://api.tano.africa |
| Contrat OpenAPI | https://api.tano.africa/v1/openapi.json |
| Parcours hébergé | https://verify.tano.africa (le lien vous est rendu par l’API) |
| Console | https://console.tano.africa |
Avant de commencer
Section intitulée « Avant de commencer »Dans la console :
-
Un parcours (menu Parcours) : les étapes à franchir (pièce, visage, revue…) et les pays et pièces acceptés. Son nom (
flow_name, par exempleidentite_ci) est ce que vous passerez à l’API. Il doit être activé. -
Une clé de bac à sable (menu Clés d’API) :
tano_sandbox_…. Elle n’est affichée qu’une fois : rangez-la dans les secrets de votre serveur. Voir Bac à sable et clés. -
Un webhook (facultatif, recommandé) : l’adresse de votre serveur qui recevra la décision.
1. Signer les requêtes de création
Section intitulée « 1. Signer les requêtes de création »Les lectures ne demandent que la clé. Les créations (dossier, session, webhook) demandent en plus un horodatage, une signature et une clé d’idempotence :
| En-tête | Valeur |
|---|---|
Authorization |
Bearer <clé> |
Idempotency-Key |
un identifiant unique par intention (UUID) |
X-Tano-Timestamp |
l’heure en secondes Unix |
X-Tano-Signature |
v2= + hex(HMAC-SHA256(secret, horodatage.MÉTHODE.cible.corps)) |
Le détail, avec des exemples en Python et en Node.js : Signer les requêtes.
2. Ouvrir un dossier
Section intitulée « 2. Ouvrir un dossier »POST /v1/casesContent-Type: application/json
{"flow_name": "identite_ci", "country": "CI", "external_ref": "client-4821"}Réponse 201 :
{"id": "case_…", "status": "created", "flow_name": "identite_ci", "country": "CI", "expires_at": "…"}external_ref est votre référence : elle vous permet de retrouver le dossier de votre côté.
3. Envoyer la personne sur le parcours
Section intitulée « 3. Envoyer la personne sur le parcours »POST /v1/sessionsContent-Type: application/json
{"case_id": "case_…", "locale": "fr"}Réponse 201 : {"id": "…", "case_id": "case_…", "url": "https://verify.tano.africa/#…", "expires_at": "…"}.
Le lien n’est rendu qu’une fois et vaut au plus une heure. Envoyez-le à la personne par SMS, par courriel ou par redirection depuis votre application. Voir Envoyer la personne sur le parcours.
4. Recevoir et lire la décision
Section intitulée « 4. Recevoir et lire la décision »Par webhook (recommandé) : déclarez votre adresse une fois.
POST /v1/webhook-endpointsContent-Type: application/json
{"url": "https://votre-serveur.example/tano", "events": ["case.decided"]}La réponse porte un secret de webhook, affiché une fois. Chaque livraison est signée : voir Recevoir les webhooks.
Par lecture : GET /v1/cases/{id} rend l’état du dossier (created, collecting,
processing, review, puis decided, abandoned ou expired). Voir
Dossiers et décisions.
Et ensuite
Section intitulée « Et ensuite »- Essayer un parcours avec un script prêt à l’emploi.
- Passer en production : la liste de ce qu’il faut vérifier.
© 2026 Qalebasse · Tano, plateforme de confiance numériquetano.africaDemander un accès[email protected]