# Tester en sandbox sans dépenser de crédits

Source: https://help.didit.me/fr/getting-started/sandbox-and-testing
Updated: 2026-10-12

Basculez en Sandbox avec le sélecteur sous le nom de l'application et utilisez une clé API de test - contrôles simulés, sans facturation, résultat au choix.

Passez à **Sandbox** avec le sélecteur sous le nom de l’application, créez une clé API de test et utilisez-la. Les contrôles sont simulés, sans facturation, et vous pouvez choisir le résultat.

Le sandbox de Didit équivaut aux cartes de test d'un fournisseur de paiement : il vous permet de reproduire n'importe quel résultat de vérification à la demande, sans appeler de vrais fournisseurs, sans manipuler de vraies données personnelles, et sans toucher à votre solde.

## Un environnement de test séparé

Sandbox est l’application de test partagée de votre organisation. Ses données, clés, webhooks et listes sont séparés de Live. Une bande en haut de chaque page rappelle cet environnement.

![La page des clés API dans la console Didit, où chaque clé appartient à une application](https://help.didit.me/screenshots/api-keys-light.webp)

*Les clés sont propres à une application, donc une clé sandbox ne peut jamais atteindre des données de production.*

1. **Passer à Sandbox**

   Cliquez sur **Sandbox** sous le nom de l’application. Pour revenir à **Live**, vérifiez la liste concernant le workflow publié, la clé ou le lien Live, le webhook, le paiement et la conservation, puis confirmez ou restez dans Sandbox.

2. **Créer une clé de test**

   Ouvrez **Développeurs → Clés API** et choisissez Sandbox lors de la création. La clé détermine l’environnement ; une clé Live ne crée pas de session Sandbox.

3. **Créer ou copier un workflow**

   Sandbox a ses propres workflows. Créez celui à tester ou copiez-le depuis Live.

4. **Créez des sessions normalement**

   Même point de terminaison, même chemin de code. La seule différence est la clé que vous envoyez.

> **Note:** Si **Sandbox** est grisé, votre organisation n’a pas encore d’application de test. Demandez son activation au support ; il s’agit d’un réglage du compte.

## Ce que sandbox change, et ce qu'il ne change pas

| | Sandbox | Production |
|---|---|---|
| Fournisseurs externes | Tous simulés : aucun tiers n'est jamais appelé | Réels |
| Facturation | Jamais facturé ; la vérification de solde est ignorée | Facturé par fonctionnalité terminée |
| Limite de création de sessions | 500 par 24 heures, par application | Votre solde |
| Charge utile du webhook | `"environment": "sandbox"` | `"environment": "live"` |
| Données extraites et statut | Simulés par le scénario choisi | Dérivés de la capture réelle |
| Médias capturés | **Stockés pour de vrai**, exactement comme une session réelle | Stockés |

> **Warning:** Sandbox stocke les médias qu'il capture (documents, selfie, vidéo de preuve de vie,
> fichiers de justificatif de domicile) exactement comme le ferait une session réelle.
> Le *résultat* est simulé, mais l'envoi est réel : utilisez donc les documents
> d'exemple et les données de test que propose le flux plutôt qu'un vrai document
> d'identité ou de vraies informations personnelles.

Comme les résultats ne dépendent jamais des pixels, une photo délibérément mauvaise ne produira pas un refus en sandbox. C'est le scénario qui décide.

## Choisir le résultat

Passez un slug de scénario comme `sandbox_scenario` à la création de la session, ou laissez la personne qui teste en choisir un : les sessions sandbox dans le flux hébergé affichent un **sélecteur de scénario** dans la carte avant le début de la capture, avec une bande de documents d'exemple sous le composant d'envoi et une bannière permanente « données de test uniquement ».

Les scénarios couvrent les résultats dont vous avez réellement besoin pour construire :

| Vous voulez tester | Scénario |
|---|---|
| Tout est approuvé | `approve` |
| Document expiré | `decline_document_expired` |
| Document illisible | `decline_could_not_recognize_document` |
| Échec de somme de contrôle MRZ | `decline_mrz_validation` |
| En dessous de l'âge minimum | `decline_minimum_age` |
| Correspondance faciale trop faible | `decline_face_match_low_similarity` |
| Attaque de présentation sur la preuve de vie | `decline_liveness_attack` |
| Correspondance sanctions / PEP en AML | `decline_aml_hit` |
| Adresse IP bloquée | `decline_ip_blocklist` |
| Discordance d'adresse sur le justificatif de domicile | `decline_poa_address_mismatch` |
| Échec d'intégrité de la puce NFC | `decline_nfc_chip_not_verified` |
| Aucun résultat en validation de base de données | `decline_database_no_match` |
| Révision manuelle nécessaire (AML) | `review_aml_possible_match` |
| Révision manuelle nécessaire (correspondance faciale limite) | `review_face_match_borderline` |
| Révision manuelle nécessaire (correspondance d'adresse partielle) | `review_poa_partial_match` |
| Discordance de registre en KYB | `decline_kyb_registry_mismatch` |

Les scénarios `review_*` existent pour que vous puissiez exercer tout le parcours de révision manuelle (la file d'attente de révision de la console, le webhook `In Review`, un réviseur approuvant ou demandant une resoumission) sans avoir besoin d'une entrée provoquant un refus.

> **Tip:** Le catalogue en direct des scénarios et des valeurs magiques est servi par l'API
> elle-même sur `GET /v1/sandbox/scenarios/`. Si un slug ici semble un jour obsolète,
> faites confiance au point de terminaison. Référence complète :
> [tests en sandbox](https://docs.didit.me/integration/sandbox-testing).

## Distinguer les deux dans votre propre code

Chaque webhook porte un champ `environment` : `"sandbox"` ou `"live"`. Basez-vous sur ce champ plutôt que d'essayer de déduire l'environnement à partir de la clé, et vous ne confondrez jamais une session de test avec un vrai client.

## Ce que sandbox ne fera pas

- Il ne renverra pas de vraies données de registre pour une vraie entreprise. Le KYB en sandbox utilise des réponses de registre simulées.
- Il n'enverra pas de vrai SMS ni de vrai e-mail. La vérification téléphonique et par e-mail est simulée, donc vous ne pouvez pas utiliser sandbox pour prévisualiser la délivrabilité réelle des messages.
- Il ne consommera pas le crédit mensuel de votre offre, ce qui signifie aussi qu'une exécution en sandbox ne vous dit rien sur le crédit qu'il vous reste.

## Si vous avez besoin de vraies vérifications de test

Certaines choses nécessitent vraiment un appel réel : vérifier qu'un service de base de données d'un pays donné est bien provisionné pour vous, ou confirmer la remise d'un SMS à un opérateur particulier. Cela nécessite une petite recharge sur une application de production plutôt que sandbox. Demandez au support avant de dépenser pour cela, afin qu'il puisse d'abord confirmer que le service est réellement activé sur votre compte.
