Le registre des contrôles, et comment ils comptent.
196 contrôles au registre 1.12.1, comptage du 28/10/2026 : le barème du score, les garde-fous contre les faux positifs, la couverture mesurée, le registre famille par famille et les 41 codes de constat publics.
Un barème fixe.
Chaque contrôle rend un statut et porte une sévérité ; le score les additionne. À document égal, résultat égal.
| Constat | Effet sur le score |
|---|---|
| Anomalie critique | score porté à 90 au moins |
| Anomalie de sévérité haute | +30 |
| Anomalie moyenne | +12 |
| Anomalie faible | +4 |
| Point à vérifier | la moitié de l’anomalie |
| Contrôle réussi, sauté ou sans objet | 0 |
Des garde-fous contre les faux positifs.
Des signaux faibles plafonnés
Des signaux faibles seuls ne font jamais sortir du niveau « Aucune anomalie détectée ».
Les producteurs courants reconnus
Une impression en PDF, une application de numérisation, un compresseur ne sont pas traités comme une retouche.
L’indulgence sur les photos
Sur une photo ou un scan, la géométrie approchée des lignes est jugée avec indulgence, sauf si un autre indice la corrobore sur la même zone.
Les écarts de calcul relus
Quand un calcul échoue, un relecteur cherche un montant imprimé qui explique l’écart au centime ; il ne crée ni n’aggrave jamais un constat.
La vraisemblance ne décide pas
Les quatre questions de vraisemblance (logo, mise en page, prix, mentions) ne rendent au plus qu’un point à vérifier.
Ne rien avoir vérifié n’est pas n’avoir rien trouvé.
Kachet mesure la part des contrôles importants réellement menés : sous 70 %, le résultat porte la mention « Analyse partielle » ; sous 60 %, le niveau est relevé à « Points à vérifier » au moins. Un contrôle d’image qui ne peut rien mesurer sur un fichier produit par logiciel se déclare sauté, jamais réussi. Un type non reconnu sans anomalie rend « Analyse impossible », jamais un faux « tout va bien ».
Le registre, famille par famille.
Enregistré177 contrôles sur chaque document, 19 entre les documents d’un dossier (registre 1.12.1, comptage du 28/10/2026), chacun écrit en code, testé et rattaché à un code de constat public. Le nombre de contrôles concernés par type se lit dans la documentation de l’API.
| Famille | Contrôles | Ce qu’elle examine |
|---|---|---|
| Règles métier par type | 47 | paie, avis d’impôt, domicile, factures, notes de frais, RIB, identité, permis, attestation de droits |
| 2D-Doc | 25 | présence, signature, certificat, référence et émetteur signés, 15 champs signés comparés |
| Structure PDF | 22 | révisions, dates, éditeur, producteur, texte caché, objets |
| Document | 12 | type, lisibilité, pages, spécimen, couverture, déjà soumis |
| Typographie | 11 | police, corps, ligne de base, couleur, espacement, champs sensibles |
| Image | 11 | EXIF, compression, bruit, copier-coller, netteté, capture |
| MRZ | 11 | format, clés, 7 champs comparés, expiration |
| Formats et clés | 11 | IBAN, BIC, SIRET, TVA, NIR, numéro fiscal, dates, code postal |
| Lecture et vraisemblance | 8 | logo, mise en page, prix, mentions, instructions cachées, contrôles visuels indisponibles |
| Référentiels publics | 7 | Sirene, établissement, banque de l’IBAN, BAN |
| Concordance des lectures | 6 | titulaire, adresse, date, montant, naissance, numéro |
| Identité déclarée | 6 | nom, prénom, naissance, adresse, hébergeant |
| Cohérence du dossier | 19 | identité, adresse, revenus, emploi, fraîcheur, réemploi |
Dans un dossier, des règles prudentes, sans double peine.
Une référence fiable avant tout constat
Une donnée d’identité est jugée contre une source signée (2D-Doc, MRZ) ou contre la valeur sur laquelle au moins deux documents concordent ; un écart entre deux simples lectures reste un point à vérifier.
Des contre-épreuves écrites
Nom d’usage sur la paie et nom de naissance sur la carte, avis de l’an dernier à l’ancienne adresse, treizième mois en décembre, salaire versé sur un second compte : ces cas légitimes restent sans constat.
Aucun écart compté deux fois
L’identité déclarée est comparée à chaque document, pas une seconde fois au niveau du dossier.
Complétude et fraîcheur réglables
Bulletins et justificatif de moins de 1 à 12 mois (3 par défaut), avis parmi les 1 à 3 derniers (le dernier par défaut) ; une pièce d’identité expirée est signalée.
Un niveau de dossier expliqué
Le dossier reçoit le plus haut niveau de ses documents, augmenté des constats de cohérence ; un document illisible le relève à « Points à vérifier » au moins.
Les 41 codes de constat publics.
Un code décrit ce qui ne va pas sur le document, jamais la technique qui l’a vu. Les codes sont stables et publiés : vous automatisez dessus, et vous affichez les libellés tels quels.
| Groupe | Code | Libellé |
|---|---|---|
| Qualité et type | document.unreadable | Document illisible |
| document.type_unsupported | Type non reconnu | |
| document.type_unexpected | Type différent de l’attendu | |
| document.type_unconfirmed | Type attendu non confirmé | |
| document.category_not_accepted | Pièce non admise pour la catégorie demandée | |
| document.composition_unusual | Composition inhabituelle | |
| document.previously_submitted | Document déjà soumis | |
| document.resubmitted | Document déjà soumis par ce compte | |
| document.specimen_mark | Mention de spécimen | |
| document.coverage_partial | Analyse partielle | |
| document.outdated | Document ancien ou expiré | |
| Structure du fichier | file.modified | Fichier modifié après sa production |
| file.origin_unusual | Origine du fichier inhabituelle | |
| file.hidden_content | Contenu caché ou ajouté | |
| document.instructions_detected | Instructions adressées à l’analyse | |
| Mise en page et texte | text.altered | Texte possiblement modifié |
| text.sensitive_field_altered | Information déterminante possiblement modifiée | |
| layout.unusual | Présentation inhabituelle | |
| Image | image.region_altered | Zone possiblement retouchée |
| file.screenshot | Capture d’écran | |
| Contenu et calculs | amounts.inconsistent | Calculs incohérents |
| amounts.unusual | Montants ou taux inhabituels | |
| dates.inconsistent | Dates incohérentes | |
| content.values_inconsistent | Informations contradictoires | |
| identifier.invalid | Identifiant invalide | |
| Identité | subject.name_mismatch | Nom différent de l’identité déclarée |
| subject.birth_date_mismatch | Date de naissance différente | |
| subject.address_mismatch | Adresse différente | |
| identity.data_inconsistent | Données d’identité incohérentes | |
| Émetteur et référentiels | issuer.unknown | Émetteur non retrouvé |
| issuer.closed | Émetteur inactif à la date du document | |
| issuer.details_mismatch | Coordonnées de l’émetteur discordantes | |
| address.not_found | Adresse introuvable | |
| 2D-Doc | twoddoc.missing | 2D-Doc absent ou illisible |
| twoddoc.invalid | Signature du 2D-Doc non valide | |
| twoddoc.data_mismatch | Données signées discordantes | |
| MRZ | mrz.invalid | MRZ non conforme |
| mrz.data_mismatch | MRZ discordante | |
| Dossier | case.identity_mismatch | Identité incohérente dans le dossier |
| case.address_mismatch | Adresses incohérentes dans le dossier | |
| case.income_inconsistent | Revenus incohérents dans le dossier |
Registre 1.12.1, octobre 2026. Dix faits vérifiés positifs complètent ces codes : 2D-Doc signé valide, données signées concordantes, MRZ conforme, zone visible concordante avec la MRZ, émetteur en activité, raison sociale concordante, adresse de l’émetteur concordante, bulletin recalculé, calculs justes, identifiants valides.
Prix publics, sans rendez-vous.
Compte ouvert sur demande [Q1], [QUOTA] analyses réelles gratuites sur vos propres dossiers, puis [PRIX] € HT par document, dégressif, sans engagement.