ValiDok Vérification d'identité · KYC automatisée
🧪 Environnement : SANDBOX_VALIDOK

ValiDok · Sandbox KYC

Interface unifiée pour piloter les 12 scénarios KYC, suivre les vérifications d'identité en temps réel et copier des snippets curl / fetch / Guzzle prêts à l'emploi. Aucune donnée de production n'est touchée.

🎬 Scénarios disponibles (12)

Cliquez sur une carte pour programmer le prochain appel API. Chaque scénario est consommé 1 seule fois puis retour au nominal (success).

Aucun scénario programmé
✓
success

Succès (scénario nominal)

✕
insufficient_funds

Solde insuffisant

✕
validation_failure

Échec de validation

⏱️
timeout_after_8s

Délai dépassé (8s)

✕
permission_denied

Permission refusée

✕
remote_500

Erreur serveur 500 côté partenaire

🔐
force_2fa_always

2FA obligatoire sur toutes opérations

🔐
force_2fa_never

2FA toujours ignorée (skipped=true)

🔐
otp_always_wrong

Code OTP systématiquement invalide

💸
refund

Remboursement automatique après capture

💸
dispute

Litige initié

✕
reject_key

Toute clé API = 401 pendant cette session

📍 Scénario programmé actuellement

~
Prochain appel API consommera
Scénario nominal (success)
— Aucun override —

📊 Statistiques 24 dernières heures

Total req 24h
🔢
—
Vérifications OK
✅
—
Refus KYC / Erreurs
⚠️
—
Latence P95 (ms)
⏱️
—

📋 50 dernières vérifications

Date Method URI HTTP Latence Auth Key
🔇 Aucune vérification à afficher. Appelez un endpoint API ValiDok pour commencer.

🧑‍💻 Snippets prêts à copier

💡 Remplacez fvs_b2d3b32b7b78631c9959 par votre clé sandbox réelle (préfixe fvs_). Le header X-Foulgor-Sandbox-Session isole vos vérifications.

🔑 Gestion des Clés API · Sandbox ValiDok

Clés 100% isolées du LIVE · Préfixe fvs_ · Scopées par Session ID. Le api_secret n'est affiché qu'une seule fois à la création.

Nom Préfixe Key Env Permissions Statut Expire Créée Actions
🚀 Aucune clé sandbox pour cette session. Cliquez sur "Générer une clé sandbox" pour commencer.

🛡️ Isolation forte : chaque Session ID voit uniquement ses propres clés. Les clés SANDBOX_VALIDOK ne peuvent JAMAIS appeler les endpoints LIVE (préfixe fpk_).

📦 SDK Officiels · Téléchargement & Mode d'emploi

Bibliothèques client prêtes pour la production. Chaque SDK intègre nativement la gestion des headers X-Foulgor-Sandbox-Session et la rotation des scénarios.

📚 CDN : cdn.foulgor.com/sdks/validok/
🧭

Mode d'emploi · Intégration en 3 étapes

  1. Téléchargez le SDK correspondant à votre stack (Composer / NPM / Pip) ou utilisez le lien direct du CDN.
  2. Initialisez le client avec votre clé sandbox fvs_... et activez le mode sandbox: true + votre session_id.
  3. Programmez un scénario via client.sandbox.nextScenario("validation_failure") puis appelez l'endpoint — la simulation ne s'applique qu'une fois.

🛠️ Maintenance & nettoyage

🔄

Réinitialiser TOUTE la session sandbox

Supprime TOUTES les tables prefix sandbox_validok_* pour votre session ID. Action irréversible.

🗑️

Nettoyer données anciennes > 24h

Purge les vérifications créées il y a plus de 24h. Bon pour la santé de la base.

📚 Endpoints JSON disponibles

Méthode Route Nom Description
GET /sandbox/_api-keys ↗️ Lister les clés sandbox Toutes les clés Sandbox ValiDok, scoped par session.
POST /sandbox/_api-keys Créer une clé sandbox Génération key+secret (display 1 time).
POST /sandbox/_api-keys/{id}/regenerate-secret Régénérer le SECRET d'une clé Révocation immédiate de l'ancien secret.
POST /sandbox/_api-keys/{id}/revoke Révoquer une clé Interdiction définitive d'utiliser cette clé.
GET /sandbox/_scenarios ↗️ Liste des scénarios 12 scénarios + scénario courant programmé.
POST /sandbox/_scenarios/next/{name} Programmer scénario suivant Force le résultat du prochain appel KYC (one-shot).
POST /sandbox/_scenarios/reset Reset des scénarios + données scoped Supprime toutes les données sandbox_validok_* pour cette session.
POST /sandbox/_scenarios/cleanup/older-than/{hours} Nettoyage des anciennes données Purge sandbox_validok_* si antérieures à N heures.
GET /sandbox/_dashboard/overview ↗️ Stats + 50 derniers logs 24h : total / granted / errors / p95 latence + table requêtes.

🚀 Comment tester en 4 étapes

  1. 1

    Récupérez votre clé sandbox

    Générez une clé API sandbox KYC (préfixe fvs_) depuis votre tableau de bord ou utilisez fvs_b2d3b32b7b78631c9959 comme placeholder.

  2. 2

    Choisissez un scénario

    Cliquez sur une carte ci-dessus pour programmer le prochain retour KYC. Ex : ✕ Échec validation, ⏱️ Délai 8s, 🔐 2FA obligatoire.

  3. 3

    Appelez un endpoint

    Utilisez le snippet curl / fetch / Guzzle de la Section 5 en remplaçant la clé. Ex : POST /api/verify.

  4. 4

    Observez le résultat

    Votre vérification apparaitra en Section 4 sous 15s max, et les stats Section 3 se mettent à jour en temps réel.

Warning: Cannot modify header information - headers already sent by (output started at /home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/http-foundation/Response.php:387) (500 Internal Server Error)

Symfony Exception

ErrorException

HTTP 500 Internal Server Error

Warning: Cannot modify header information - headers already sent by (output started at /home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/http-foundation/Response.php:387)

Exception

ErrorException

Show exception properties
ErrorException {#585
  #severity: E_WARNING
}
  1. {
  2. // headers have already been sent by the developer
  3. if (headers_sent()) {
  4. if (!\in_array(\PHP_SAPI, ['cli', 'phpdbg', 'embed'], true)) {
  5. $statusCode ??= $this->statusCode;
  6. header(\sprintf('HTTP/%s %s %s', $this->version, $statusCode, $this->statusText), true, $statusCode);
  7. }
  8. return $this;
  9. }
  1. if ($pop) {
  2. $this->requestStack->pop();
  3. }
  4. }
  5. $response->sendHeaders();
  6. $response->sendContent();
  7. $this->terminate($request, $response);
  8. }
  1. if ($hasRun) {
  2. throw $e;
  3. }
  4. $hasRun = true;
  5. $kernel->terminateWithException($e, $request);
  6. };
  7. }
  8. } elseif ($event instanceof ConsoleEvent && $app = $event->getCommand()->getApplication()) {
  9. $output = $event->getOutput();
  10. if ($output instanceof ConsoleOutputInterface) {
in /home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/error-handler/ErrorHandler.php :: {closure:Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure():71} (line 517)
  1. $this->exceptionHandler = null;
  2. }
  3. try {
  4. if (null !== $exceptionHandler) {
  5. $exceptionHandler($exception);
  6. return;
  7. }
  8. $handlerException ??= $exception;
  9. } catch (\Throwable $handlerException) {
ErrorHandler->handleException()

Stack Trace

ErrorException
ErrorException:
Warning: Cannot modify header information - headers already sent by (output started at /home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/http-foundation/Response.php:387)

  at /home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/http-foundation/Response.php:322
  at Symfony\Component\HttpFoundation\Response->sendHeaders()
     (/home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/http-kernel/HttpKernel.php:141)
  at Symfony\Component\HttpKernel\HttpKernel->terminateWithException()
     (/home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/http-kernel/EventListener/DebugHandlersListener.php:77)
  at Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::{closure:Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure():71}()
     (/home/u540977899/domains/foulgor.com/public_html/validok/vendor/symfony/error-handler/ErrorHandler.php:517)
  at Symfony\Component\ErrorHandler\ErrorHandler->handleException()