Passer au contenu principal

Vue d’ensemble

Les avertissements du rapport NFC signalent chaque condition observée par Didit lors de la lecture et de la validation de la puce. Ils figurent dans le tableau warnings[] de chaque élément de nfc_verifications[] (voir le rapport NFC), avec feature défini sur "NFC". Chaque entrée suit la structure partagée de l’objet d’avertissement : feature, risk, additional_data, log_type, short_description, long_description, node_id. Chaque avertissement comporte trois niveaux :
  1. Le code risk — un identifiant stable que vous pouvez utiliser pour effectuer des correspondances dans votre code (les codes répertoriés ci-dessous).
  2. Le log_type — l’une des valeurs information, warning ou error. Il découle de l’action que votre workflow configure pour ce risque : Aucune action → information, Examen → warning, Refuser → error.
  3. L’impact sur la décision — la même action configurée détermine également le status du rapport NFC : une action d’examen le fait passer à In Review, une action de refus à Declined.
Quatre risques NFC sont configurables de cette manière (SKIPPED_NFC_VALIDATION, NFC_CHIP_NOT_VERIFIED, NFC_TRUST_ANCHOR_MISSING, NFC_AND_OCR_DATA_NOT_SAME), ainsi que les cinq risques liés à la Japan My Number Card, chacun disposant de son propre paramètre. Les deux risques de certificat (DSC_CERTIFICATE_REVOKED, DSC_CERTIFICATE_EXPIRED) sont uniquement informatifs : ils portent toujours la valeur log_type: "information" et ne modifient jamais le statut NFC à eux seuls. L’ensemble complet des codes de risque générés par le module NFC est présenté ci-dessous. Aucun autre code de risque NFC n’existe.

Avertissements générés

SKIPPED_NFC_VALIDATION est mutuellement exclusif avec NFC_CHIP_NOT_VERIFIED et NFC_TRUST_ANCHOR_MISSING : les avertissements de vérification de puce ne sont évalués que lorsque la lecture de la puce n’a pas été ignorée. Les deux avertissements de vérification de puce sont également mutuellement exclusifs.

Chaînes de description exactes

L’API renvoie ces chaînes short_description et long_description exactes pour chaque risque :

Motifs d’omission

Les avertissements SKIPPED_NFC_VALIDATION comportent additional_data.skip_reason, l’un des sept codes stables indiquant précisément pourquoi le NFC n’a pas été exécuté (sur les sessions enregistrées avant l’introduction des motifs d’omission, additional_data peut être null — traitez ce champ comme facultatif lors du traitement des décisions historiques). La même taxonomie apparaît au niveau de la session sous le champ nfc_skip_reason dans le payload de décision — y compris pour les sessions où le NFC ne pouvait pas du tout être exécuté (document sans puce, intégration web) et pour lesquelles aucun rapport ou avertissement NFC n’existe donc.
Un rapport NFC et son avertissement SKIPPED_NFC_VALIDATION n’existent que lorsque le client a atteint l’étape NFC et l’a explicitement ignorée (généralement USER_SKIPPED, ou DEVICE_WITHOUT_NFC lorsque le lecteur s’est avéré indisponible au moment de la numérisation). Lorsque l’étape NFC a été contournée avant même de pouvoir être proposée — document sans puce, certificat manquant, aucune fonctionnalité NFC signalée, clé MRZ illisible, JPKI indisponible — aucun rapport ni avertissement n’est créé et le motif n’apparaît que dans le champ nfc_skip_reason au niveau de la session, sans affecter le statut de la session.

Configuration

Trois paramètres de workflow contrôlent le routage des avertissements NFC. Chacun peut être défini sur Aucune action, Examen, ou Refuser :
  1. Action d’omission NFC (skip_nfc_action) — s’applique à SKIPPED_NFC_VALIDATION. L’omission n’est proposée aux utilisateurs que lorsque allow_nfc_skip est activé.
  2. Action de puce non vérifiée (unverified_chip_action) — s’applique à la fois à NFC_CHIP_NOT_VERIFIED et à NFC_TRUST_ANCHOR_MISSING, de sorte que le comportement du statut de session reste le même tandis que le code de risque explique pourquoi la vérification a échoué.
  3. Action d’incohérence des données (inconsistent_data_action) — s’applique à NFC_AND_OCR_DATA_NOT_SAME. Il s’agit du même paramètre d’incohérence des données que celui utilisé par la vérification d’identité.
Les deux risques DSC_CERTIFICATE_* n’ont pas de paramètre d’action — ils sont toujours à titre informatif. Les risques liés à la Japan My Number Card comportent cinq paramètres supplémentaires, répertoriés dans la section suivante.

Japan My Number Card (JPKI)

Une Japan My Number Card est lue via JPKI au lieu de l’ICAO 9303 (chip_protocol: "jpki"), de sorte que les risques ICAO ci-dessus ne se déclenchent jamais pour celle-ci. Sa lecture génère plutôt ces cinq risques, chacun ayant son propre paramètre sur le nœud NFC : Une lecture de My Number Card ignorée génère SKIPPED_NFC_VALIDATION et suit skip_nfc_action, comme pour toute puce. Consultez Japan My Number Card (JPKI) pour savoir comment fonctionne la lecture.
La lecture de la My Number Card via JPKI n’est pas encore activée en production. Tant qu’elle ne l’est pas, une My Number Card ignore l’étape NFC avec le motif d’omission JPKI_UNAVAILABLE et aucun de ces risques n’est généré.

Exemples

In Review — la puce n’a pas pu être vérifiée

Ici, l’action pour puce non vérifiée est configurée sur Review, donc NFC_CHIP_NOT_VERIFIED porte log_type: "warning" et le statut du rapport NFC est In Review. L’entrée pour DSC expirée est purement informative.

Declined — incohérence puce / OCR

Ici, l’action pour incohérence des données est configurée sur Decline, donc l’avertissement porte log_type: "error" et le statut du rapport NFC est Declined. Notez que ocr_mrz est un tableau de lignes MRZ tandis que nfc_mrz est la chaîne MRZ unique et concaténée de la puce.

In Review : My Number Card sans réponse de révocation

Ici, jpki_revocation_unchecked_action conserve sa valeur par défaut, Review, donc l’avertissement porte log_type: "warning" et le statut du rapport NFC est In Review. La carte elle-même a été authentifiée : jpki.chain_valid et jpki.signature_valid sont tous deux à true.

Types d’avertissement

Une gravité est attribuée à chaque risque selon la configuration de votre application. Les trois niveaux de gravité sont :

Voir aussi

Dernière modification le 7 novembre 2026