API v1 — Production

Documentation API Vericheck

API REST pour la vérification KYC, screening PEP et sanctions. Conforme LCB-FT, données hébergées en Union Européenne.

Base URL: https://vericheck.nanocorp.app

Vue d'ensemble

L'API Vericheck permet de vérifier des personnes physiques ou morales contre les listes de sanctions internationales (EU FSF, OFAC SDN, ONU, OFSI) et les bases PEP (Politically Exposed Persons).

Latence

< 100ms

P95 sur requête standard

Entités

734K+

Sanctions + PEP indexés

Mise à jour

Horaire

Sync OpenSanctions auto

Authentification

Toutes les requêtes nécessitent une clé API au format kfmd_live_. Transmettez-la via le header Authorization.

http
Authorization: Bearer kfmd_live_votre_clé_ici

Ne commitez jamais votre clé API dans votre code source. Utilisez des variables d'environnement.

Obtenez votre clé sur la page d'inscription →

POST /v1/check — Vérifier une entité

Lance une vérification en temps réel contre les listes de sanctions et PEP. Retourne un score de confiance et les correspondances trouvées.

Paramètres de la requête

namestringrequis

Nom complet de la personne ou de l'entité à vérifier (1-200 caractères).

entity_typestringrequis

Type d’entité : "person" pour une personne physique, "company" pour une personne morale.

birth_yearinteger

Année de naissance (1800-2026). Améliore la précision pour les personnes.

countrystring

Code ISO 3166-1 alpha-2 du pays (ex: FR, RU, CN). Améliore la précision.

Exemple

bash
curl -X POST https://vericheck.nanocorp.app/v1/check \
  -H "Authorization: Bearer kfmd_live_votre_clé" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Viktor Petrov",
    "entity_type": "person",
    "birth_year": 1971,
    "country": "RU"
  }'

GET /v1/check/:request_id — Récupérer un résultat

Récupère le résultat d'une vérification précédemment effectuée via son identifiant. Utile pour l'audit trail et la récupération asynchrone.

bash
curl https://vericheck.nanocorp.app/v1/check/req_4f8e2a1b... \
  -H "Authorization: Bearer kfmd_live_votre_clé"

Note :Vous ne pouvez accéder qu'aux résultats appartenant à votre organisation. Toute tentative d'accéder à un résultat d'une autre organisation retourne une erreur 404.

Schéma de réponse

Les deux endpoints retournent la même structure JSON :

json
{
  "request_id": "req_4f8e2a1b3c2d1e0f...",
  "checked_at": "2026-04-28T14:22:10.000Z",
  "response_time_ms": 87,
  "match_found": true,
  "confidence": 0.94,
  "results": [
    {
      "name": "Viktor Petrov",
      "entity_type": "Person",
      "datasets": ["eu_fsf", "ua_sfms"],
      "topics": ["sanction", "role.pep"],
      "birth_date": "1971-03-14",
      "nationalities": ["RU"]
    }
  ]
}

Description des champs

request_idstring

Identifiant unique de la requête au format req_<hex>. Conservez-le pour l'audit trail.

checked_atstring

Horodatage ISO 8601 UTC de la vérification.

response_time_msinteger

Temps de traitement en millisecondes.

match_foundboolean

true si au moins une correspondance a été trouvée avec une confiance ≥ 0.55.

confidencefloat

Score de confiance de la meilleure correspondance (0.0 à 1.0). 0 si aucun match.

results[].namestring

Nom de l'entité sanctionnée correspondante.

results[].entity_typestring

Type d'entité : Person, Company, Organization, Vessel, etc.

results[].datasetsstring[]

Sources des données : eu_fsf, us_ofac_sdn, un_sc_sanctions, gb_hmt_sanctions, etc.

results[].topicsstring[]

Tags : "sanction" pour une personne sanctionnée, "role.pep" pour un PEP.

results[].birth_datestring | null

Date de naissance si disponible (format YYYY-MM-DD ou YYYY).

results[].nationalitiesstring[]

Codes ISO 3166-1 alpha-2 des nationalités.

Codes d'erreur

400

Bad Request

Requête malformée ou paramètres invalides. Vérifiez le corps JSON.

401

Unauthorized

Clé API manquante, invalide ou révoquée.

404

Not Found

Ressource introuvable ou non autorisée.

429

Too Many Requests

Quota mensuel atteint. Passez au plan supérieur.

503

Service Unavailable

Base de données sanctions pas encore synchronisée (premier démarrage).

500

Internal Server Error

Erreur interne. Réessayez ou contactez le support.

Limites & quotas

Starter

500 req/mois

Gratuit

Pro

5 000 req/mois

199€/mois

Enterprise

50 000 req/mois

799€/mois

Les quotas se réinitialisent le 1er de chaque mois. En cas de dépassement, l'API retourne une erreur 429. Upgrader votre plan →

Conformité & RGPD

Hébergement des données

Toutes les données sont hébergées sur Neon PostgreSQL en région EU. Aucune donnée ne transite ou n'est stockée hors de l'Union Européenne. Chaque vérification est enregistrée avec son horodatage pour permettre les audits réglementaires.

Conformité LCB-FT

Vericheck est conçu pour répondre aux exigences de la Directive (UE) 2018/843 (5ème directive anti-blanchiment) et de la réglementation LCB-FT française. Les données OpenSanctions sont mises à jour toutes les heures.

Sources de données

Les données proviennent d'OpenSanctions et incluent notamment :

EU FSFOFAC SDNUN Security CouncilUK HMTFrance GELSOFSIBIS ListsDFAT Australia

Pour un contrat DPA (Data Processing Agreement), contactez dpo@vericheck.nanocorp.app.