> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# NFC सत्यापन चेतावनियाँ और त्रुटि कोड

> Didit NFC सत्यापन की सभी चेतावनियाँ: छोड़ी या अप्रमाणित चिप रीड, OCR/चिप मिसमैच, समाप्त प्रमाणपत्र, साथ में कारण, गंभीरता और समाधान।

## अवलोकन

NFC रिपोर्ट पर चेतावनियाँ चिप को पढ़ते और मान्य करते समय Didit द्वारा देखी गई प्रत्येक स्थिति को फ़्लैग करती हैं। वे `nfc_verifications[]` के प्रत्येक आइटम पर `warnings[]` सरणी में आती हैं ([NFC रिपोर्ट](https://docs.didit.me/hi/core-technology/nfc-verification/report-nfc-verification.md) देखें), जिसमें `feature` `"NFC"` पर सेट होता है। प्रत्येक प्रविष्टि साझा [चेतावनी ऑब्जेक्ट](https://docs.didit.me/hi/reference/data-models.md#चेतावनी-ऑब्जेक्ट) की संरचना का अनुसरण करती है: `feature`, `risk`, `additional_data`, `log_type`, `short_description`, `long_description`, `node_id`।

प्रत्येक चेतावनी के तीन स्तर होते हैं:

1. **`risk` कोड** — एक स्थिर पहचानकर्ता जिसका आप अपने कोड में मिलान कर सकते हैं (नीचे सूचीबद्ध कोड)।
2. **`log_type`** — `information`, `warning`, या `error` में से एक। यह उस कार्रवाई से प्राप्त होता है जिसे आपका वर्कफ़्लो उस जोखिम के लिए कॉन्फ़िगर करता है: **कोई कार्रवाई नहीं** → `information`, **समीक्षा** → `warning`, **अस्वीकार** → `error`।
3. **निर्णय प्रभाव** — वही कॉन्फ़िगर की गई कार्रवाई NFC रिपोर्ट के `status` को भी संचालित करती है: एक समीक्षा कार्रवाई इसे `In Review` में ले जाती है, एक अस्वीकार कार्रवाई इसे `Declined` में ले जाती है।

चार NFC जोखिम इस तरह से कॉन्फ़िगर करने योग्य हैं (`SKIPPED_NFC_VALIDATION`, `NFC_CHIP_NOT_VERIFIED`, `NFC_TRUST_ANCHOR_MISSING`, `NFC_AND_OCR_DATA_NOT_SAME`), साथ ही पाँच [Japan My Number Card](#japan-my-number-card-jpki) जोखिम, प्रत्येक की अपनी सेटिंग के साथ। दो प्रमाणपत्र जोखिम (`DSC_CERTIFICATE_REVOKED`, `DSC_CERTIFICATE_EXPIRED`) **केवल सूचनात्मक** हैं: वे हमेशा `log_type: "information"` रखते हैं और कभी भी अपने आप NFC स्थिति को नहीं बदलते हैं।

NFC मॉड्यूल द्वारा उत्पन्न जोखिम कोड का पूरा सेट नीचे दिया गया है। कोई अन्य NFC जोखिम कोड मौजूद नहीं हैं।

## उत्पन्न चेतावनियाँ

| `risk` | कारण | गंभीरता (`log_type`) | क्या स्थिति प्रभावित होती है? | समाधान |
| - | - | - | - | - |
| `SKIPPED_NFC_VALIDATION` | चिप रीड छोड़ दिया गया था — वर्कफ़्लो छोड़ने की अनुमति देता है (`allow_nfc_skip`) और उपयोगकर्ता ने स्किप पर टैप किया, या क्लाइंट ने छोड़ दिया क्योंकि वह NFC नहीं पढ़ सका। सटीक कारण `additional_data.skip_reason` में दर्ज किया जाता है (देखें [छोड़ने के कारण](#स्किप-के-कारण)) और यह चेतावनी के `long_description` को निर्धारित करता है। | **NFC छोड़ने की कार्रवाई** सेटिंग (`skip_nfc_action`) का पालन करता है: information / warning / error। | कॉन्फ़िगर करने योग्य — No action, Review, या Decline। | यदि आपकी नीति में NFC आवश्यक है, तो स्किप कार्रवाई को Decline पर सेट करें (या पूरी तरह से स्किप करने की अनुमति न दें) और उपयोगकर्ता को NFC-सक्षम डिवाइस से पुनः प्रयास करने का निर्देश दें। अन्यथा केवल-OCR सत्यापन पर फ़ालबैक करने के लिए इसे No action पर छोड़ दें। |
| `NFC_CHIP_NOT_VERIFIED` | चिप पढ़ी गई थी लेकिन स्पष्ट रूप से पहचाने गए अनुपलब्ध ट्रस्ट एंकर के अलावा किसी अन्य कारण से क्रिप्टोग्राफ़िक सत्यापन विफल हो गया। एक Data Group हैश, SOD हस्ताक्षर, या कोई अन्य पैसिव-ऑथेंटिकेशन जांच सत्यापित नहीं हुई। | **असत्यापित चिप कार्रवाई** सेटिंग (`unverified_chip_action`) का पालन करता है। | कॉन्फ़िगर करने योग्य — No action, Review, या Decline। | इसे संभावित रूप से अमान्य या परिवर्तित चिप मानें। कौन सी जांच विफल हुई, यह देखने के लिए `authenticity` और `certificate_summary.validation` का निरीक्षण करें। |
| `NFC_TRUST_ANCHOR_MISSING` | चिप का Document Signer Certificate (DSC) किसी Country Signing Certification Authority (CSCA) जेनरेशन से संबंधित है जो Didit के ट्रस्ट स्टोर में उपलब्ध नहीं है (`certificate_summary.validation.csca_missing` `true` है)। इसलिए Didit SOD की चेन ऑफ़ ट्रस्ट स्थापित नहीं कर सकता है। | **असत्यापित चिप कार्रवाई** सेटिंग (`unverified_chip_action`) का पालन करता है। | कॉन्फ़िगर करने योग्य — No action, Review, या Decline। | यह एक ट्रस्ट-स्टोर कवरेज गैप है, इस बात का प्रमाण नहीं कि चिप में बदलाव किया गया था। अपने फ़ालबैक जांचों के माध्यम से दस्तावेज़ की समीक्षा करें और जारीकर्ता देश के विवरण के साथ Didit सहायता टीम से संपर्क करें ताकि अनुपलब्ध CSCA की जांच की जा सके। |
| `NFC_AND_OCR_DATA_NOT_SAME` | चिप से पढ़ा गया MRZ दस्तावेज़ के दृश्यमान भाग से OCR किए गए MRZ से मेल नहीं खाता है (सामान्यीकरण के बाद तुलना की जाती है, `<` फ़िलर की उपेक्षा करते हुए)। छेड़छाड़ का मजबूत संकेत। | **डेटा असंगति कार्रवाई** सेटिंग (`inconsistent_data_action`) का पालन करता है — वही सेटिंग जो पहचान सत्यापन डेटा-संगतता जांचों को नियंत्रित करती है। | कॉन्फ़िगर करने योग्य — No action, Review, या Decline। | जब तक अन्यथा सिद्ध न हो, इसे छेड़छाड़ मानें; Decline आम तौर पर इस्तेमाल की जाने वाली सेटिंग है। `additional_data` payload में मैन्युअल तुलना के लिए OCR MRZ लाइनें (`ocr_mrz`, array) और चिप MRZ (`nfc_mrz`, एकल स्ट्रिंग) शामिल हैं। |
| `DSC_CERTIFICATE_REVOKED` | इस चिप पर हस्ताक्षर करने वाला Document Signer Certificate जारीकर्ता देश की Certificate Revocation List (CRL) में मौजूद है। | हमेशा `information`। | नहीं — कभी भी अपने आप NFC स्थिति को नहीं बदलता है। | मजबूत संकेत कि साइनिंग कुंजी से समझौता किया गया हो सकता है; यदि आवश्यक हो तो अपने स्वयं के लॉजिक के माध्यम से इन सत्रों को मैन्युअल समीक्षा के लिए रूट करें। ध्यान दें कि चिप आमतौर पर `NFC_CHIP_NOT_VERIFIED` भी ट्रिगर करेगी, जो कॉन्फ़िगर करने योग्य है। |
| `DSC_CERTIFICATE_EXPIRED` | DSC की वैधता अवधि बीत चुकी है (`certificate_summary.validation.dsc_expired` `true` है)। | हमेशा `information`। | नहीं — कभी भी अपने आप NFC स्थिति को नहीं बदलता है। | पुराने दस्तावेज़ों के साथ सामान्य। रिवोकेशन की तरह, एक समय-सीमा समाप्त DSC भी पूर्ण SOD सत्यापन में विफल रहता है, इसलिए `NFC_CHIP_NOT_VERIFIED` इसके साथ ट्रिगर होता है और आपकी कॉन्फ़िगर की गई कार्रवाई को लागू करता है। |
| `JPKI_CERTIFICATE_INVALID` | Japan My Number Card: कार्ड से पढ़ा गया प्रमाणपत्र अपने प्रकार के JPKI सर्टिफ़िकेशन अथॉरिटी से चेन नहीं बनाता है, अपनी वैधता अवधि से बाहर है, या उस प्रकार का My Number Card प्रमाणपत्र नहीं है। `additional_data.certificate_types` उन प्रमाणपत्रों को सूचीबद्ध करता है जो विफल रहे; `jpki.certificates[].failure` बताता है कि ऐसा क्यों हुआ। | `jpki_certificate_invalid_action` का पालन करता है (डिफ़ॉल्ट रूप से Decline)। | कॉन्फ़िगर करने योग्य: No action, Review, या Decline। | इसे अमान्य या परिवर्तित कार्ड मानें। समय-सीमा समाप्त कार्ड प्रमाणपत्र भी यहीं आता है: धारक अपनी नगर पालिका में इसका नवीनीकरण कराता है। |
| `JPKI_SIGNATURE_INVALID` | Japan My Number Card: वन-टाइम चैलेंज पर कार्ड का हस्ताक्षर उसके प्रमाणपत्र के विरुद्ध सत्यापित नहीं होता है, इसलिए कार्ड पर व्यक्ति का कब्ज़ा और उसे PIN ज्ञात होना सिद्ध नहीं होता है। यह तब भी उत्पन्न होता है जब NFC चरण बिना किसी कार्ड को पढ़े बंद हो गया (`additional_data.certificate_types` तब खाली होता है)। | `jpki_signature_invalid_action` का पालन करता है (डिफ़ॉल्ट रूप से Decline)। | कॉन्फ़िगर करने योग्य: No action, Review, या Decline। | कार्ड रीड को प्रमाण के रूप में स्वीकार न करें। व्यक्ति से भौतिक कार्ड के साथ पुनः प्रयास करने को कहें। |
| `JPKI_CERTIFICATE_REVOKED` | Japan My Number Card: रिवोकेशन जांच किसी प्रमाणपत्र को रिवोक किए जाने की रिपोर्ट करती है, उदाहरण के लिए कार्ड के खो जाने की सूचना दी गई थी या धारक का पंजीकरण बदल गया था (`jpki.revocation_status` `revoked` है)। | `jpki_certificate_revoked_action` का पालन करता है (डिफ़ॉल्ट रूप से Decline)। | कॉन्फ़िगर करने योग्य: No action, Review, या Decline। | कार्ड को स्वीकार न करें। |
| `JPKI_REVOCATION_UNCHECKED` | Japan My Number Card: प्रमाणपत्रों और हस्ताक्षर का सत्यापन हो गया था, लेकिन कोई रिवोकेशन उत्तर उपलब्ध नहीं था (`jpki.revocation_status` `unchecked` है), इसलिए रद्द किए गए कार्ड की संभावना को नकारा नहीं जा सकता। जब चेन या हस्ताक्षर पहले ही विफल हो चुके हों तब यह उत्पन्न नहीं होता है। | `jpki_revocation_unchecked_action` का पालन करता है (डिफ़ॉल्ट रूप से Review)। | कॉन्फ़िगर करने योग्य: No action, Review, या Decline। | तय करें कि बिना रिवोकेशन उत्तर वाले सत्यापित कार्ड का आपके लिए कितना महत्व है, और उसी अनुसार कार्रवाई सेट करें। |
| `JPKI_AND_OCR_DATA_NOT_SAME` | Japan My Number Card: हस्ताक्षर प्रमाणपत्र में नाम, जन्म तिथि, लिंग या पता उसी कार्ड के फ़ोटो से पढ़े गए डेटा से भिन्न है। `additional_data.fields` उन एट्रिब्यूट्स के नाम बताता है जो भिन्न हैं, लेकिन उनके मान नहीं बताता। | `jpki_inconsistent_data_action` का पालन करता है (डिफ़ॉल्ट रूप से Review)। | कॉन्फ़िगर करने योग्य: No action, Review, या Decline। | निर्णय लेने से पहले `jpki.attributes` की तुलना पहचान सत्यापन डेटा से करें। असामान्य वर्ण वाला नाम भिन्न हो सकता है क्योंकि प्रमाणपत्र में प्रतिस्थापन वर्ण (`jpki.attributes.name_substitute_characters`) होता है। |

> [!NOTE]
>
> `SKIPPED_NFC_VALIDATION`, `NFC_CHIP_NOT_VERIFIED` और `NFC_TRUST_ANCHOR_MISSING` के साथ परस्पर अनन्य है: चिप-सत्यापन चेतावनियों का मूल्यांकन केवल तभी किया जाता है जब चिप रीड को छोड़ा नहीं गया था। दोनों चिप-सत्यापन चेतावनियाँ भी परस्पर अनन्य हैं।

## सटीक विवरण स्ट्रिंग्स

API प्रत्येक जोखिम के लिए ये सटीक `short_description` और `long_description` स्ट्रिंग्स लौटाता है:

| `risk` | `short_description` | `long_description` |
| - | - | - |
| `SKIPPED_NFC_VALIDATION` | Skipped NFC Validation | कारण-विशिष्ट — [छोड़ने के कारण](#स्किप-के-कारण) देखें। स्किप कारणों के उपलब्ध होने से पहले रिकॉर्ड किए गए लीगेसी सत्रों पर "The Near Field Communication (NFC) chip validation process was not completed, potentially due to technical issues or lack of NFC support." पर फ़ॉलबैक करता है। |
| `NFC_CHIP_NOT_VERIFIED` | NFC chip not verified | स्पष्ट रूप से पहचाने गए अनुपलब्ध ट्रस्ट एंकर के अलावा किसी अन्य कारण से नियर फ़ील्ड कम्युनिकेशन (NFC) चिप पैसिव प्रमाणीकरण में विफल रही। चिप डेटा या हस्ताक्षर अमान्य या परिवर्तित हो सकते हैं। |
| `NFC_TRUST_ANCHOR_MISSING` | NFC trust anchor unavailable | नियर फ़ील्ड कम्युनिकेशन (NFC) चिप को सत्यापित नहीं किया जा सका क्योंकि जारीकर्ता देश का कंट्री साइनिंग सर्टिफिकेशन अथॉरिटी (CSCA) ट्रस्ट एंकर उपलब्ध नहीं है। यह ट्रस्ट-स्टोर कवरेज गैप है, इस बात का प्रमाण नहीं कि चिप में बदलाव किया गया था। |
| `NFC_AND_OCR_DATA_NOT_SAME` | NFC and OCR data not same | नियर फ़ील्ड कम्युनिकेशन (NFC) चिप डेटा और OCR डेटा मेल नहीं खाते, जो संभावित दस्तावेज़ छेड़छाड़ या डेटा विसंगति का संकेत देते हैं। |
| `DSC_CERTIFICATE_REVOKED` | Document Signer Certificate revoked | ePassport चिप डेटा पर हस्ताक्षर करने के लिए उपयोग किया जाने वाला दस्तावेज़ हस्ताक्षरकर्ता प्रमाणपत्र (DSC) जारीकर्ता देश की प्रमाणपत्र निरस्तीकरण सूची (CRL) द्वारा निरस्त कर दिया गया है, जो यह दर्शाता है कि हस्ताक्षर कुंजी से छेड़छाड़ की गई हो सकती है। |
| `DSC_CERTIFICATE_EXPIRED` | Document Signer Certificate expired | ePassport चिप डेटा पर हस्ताक्षर करने के लिए उपयोग किए जाने वाले दस्तावेज़ हस्ताक्षरकर्ता प्रमाणपत्र (DSC) की समय-सीमा समाप्त हो गई है, जिसका अर्थ है कि प्रमाणपत्र की वैधता अवधि बीत चुकी है। |
| `JPKI_CERTIFICATE_INVALID` | My Number Card certificate not valid | My Number Card चिप से पढ़ा गया प्रमाणपत्र मान्य नहीं है: यह जापानी पब्लिक की इंफ्रास्ट्रक्चर (JPKI) प्रमाणन प्राधिकरण तक प्रमाणपत्र-श्रृंखला नहीं बनाता है, यह अपनी वैधता अवधि से बाहर है, या यह अनुरोधित प्रकार का My Number Card प्रमाणपत्र नहीं है। |
| `JPKI_SIGNATURE_INVALID` | My Number Card signature not valid | My Number Card द्वारा वन-टाइम सत्यापन चुनौती पर किया गया हस्ताक्षर कार्ड के प्रमाणपत्र के विरुद्ध सत्यापित नहीं होता है, इसलिए कार्ड के कब्जे और उसके PIN के ज्ञान का प्रमाण नहीं मिलता है। |
| `JPKI_CERTIFICATE_REVOKED` | My Number Card certificate revoked | निरस्तीकरण जांच रिपोर्ट करती है कि My Number Card से पढ़ा गया प्रमाणपत्र निरस्त कर दिया गया है, उदाहरण के लिए क्योंकि कार्ड के खो जाने की सूचना दी गई थी या धारक का पंजीकरण बदल गया था। |
| `JPKI_REVOCATION_UNCHECKED` | My Number Card revocation status not checked | My Number Card के प्रमाणपत्र और हस्ताक्षर को सत्यापित किया गया था, लेकिन इसकी निरस्तीकरण स्थिति की जांच नहीं की जा सकी, इसलिए निरस्त किए गए कार्ड की संभावना से इंकार नहीं किया जा सकता है। |
| `JPKI_AND_OCR_DATA_NOT_SAME` | My Number Card chip and OCR data not same | My Number Card के हस्ताक्षर प्रमाणपत्र में नाम, जन्म तिथि, लिंग या पता कार्ड की छवि (OCR) से पढ़े गए डेटा से मेल नहीं खाता है, जो संभावित प्रतिस्थापन या डेटा विसंगति का संकेत देता है। |

## स्किप के कारण

`SKIPPED_NFC_VALIDATION` चेतावनियों में `additional_data.skip_reason` शामिल होता है, जो सात स्थिर कोडों में से एक होता है और यह स्पष्ट रूप से बताता है कि NFC क्यों नहीं चला (स्किप कारण उपलब्ध होने से पहले रिकॉर्ड किए गए सत्रों पर, `additional_data` `null` हो सकता है — ऐतिहासिक निर्णयों को प्रोसेस करते समय फ़ील्ड को वैकल्पिक मानें)। यही टैक्सोनॉमी सत्र स्तर पर निर्णय payload पर `nfc_skip_reason` के रूप में दिखाई देती है — उन सत्रों के लिए भी जहाँ NFC कभी चल ही नहीं सकता था (बिना चिप वाला दस्तावेज़, वेब इंटीग्रेशन) और इसलिए कोई NFC रिपोर्ट या चेतावनी मौजूद नहीं है।

| `skip_reason` | अर्थ | `long_description` |
| - | - | - |
| `USER_SKIPPED` | एक संगत डिवाइस पर NFC की पेशकश की गई थी और उपयोगकर्ता ने स्किप करना चुना। | NFC चिप पढ़ने के चरण की पेशकश एक संगत डिवाइस पर की गई थी, लेकिन उपयोगकर्ता ने इसे स्किप करना चुना (वर्कफ़्लो कॉन्फ़िगरेशन द्वारा स्किप करने की अनुमति है)। |
| `DOCUMENT_WITHOUT_CHIP` | दस्तावेज़ डिज़ाइन में कोई पठनीय NFC चिप नहीं है (यह ICAO 9303 इलेक्ट्रॉनिक दस्तावेज़ नहीं है)। | NFC सत्यापन नहीं किया जा सका क्योंकि इस दस्तावेज़ में कोई पठनीय NFC चिप नहीं है: यह एक ICAO 9303 इलेक्ट्रॉनिक दस्तावेज़ नहीं है। |
| `CHIP_CERTIFICATE_UNAVAILABLE` | चिप मौजूद है, लेकिन कोई भी जारीकर्ता देश का हस्ताक्षर प्रमाणपत्र (CSCA) दस्तावेज़ की जारी करने की अवधि को कवर नहीं करता है, इसलिए हस्ताक्षर सत्यापित नहीं किया जा सकता है। | NFC सत्यापन नहीं किया जा सका क्योंकि इस दस्तावेज़ की जारी करने की अवधि को कवर करने वाला जारीकर्ता देश का हस्ताक्षर प्रमाणपत्र (CSCA) उपलब्ध नहीं है, इसलिए चिप का हस्ताक्षर सत्यापित नहीं किया जा सकता है। |
| `DEVICE_WITHOUT_NFC` | एक नेटिव SDK ने रिपोर्ट किया कि फ़ोन में कोई NFC रीडर उपलब्ध नहीं है। | NFC सत्यापन नहीं किया जा सका क्योंकि उपयोगकर्ता के डिवाइस ने रिपोर्ट किया कि उसमें कोई NFC रीडर उपलब्ध नहीं है। |
| `INTEGRATION_WITHOUT_NFC_ACCESS` | सत्यापन बिना नेटिव SDK के चला (उदाहरण के लिए एक वेब ब्राउज़र में), जिसकी फ़ोन के NFC रीडर तक कोई पहुँच नहीं है। | NFC सत्यापन नहीं किया जा सका क्योंकि सत्यापन किसी नेटिव मोबाइल SDK के माध्यम से नहीं चला, इसलिए फ़ोन के NFC रीडर तक कोई पहुँच नहीं थी (वेब ब्राउज़र NFC चिप्स नहीं पढ़ सकते)। |
| `MRZ_KEY_UNAVAILABLE` | दस्तावेज़ के MRZ से चिप एक्सेस कुंजी (BAC/PACE सीड) प्राप्त नहीं की जा सकी। | NFC सत्यापन नहीं किया जा सका क्योंकि दस्तावेज़ के मशीन-पठनीय क्षेत्र (MRZ) से चिप एक्सेस कुंजी प्राप्त नहीं की जा सकी। |
| `JPKI_UNAVAILABLE` | दस्तावेज़ एक Japan My Number Card है, जिसकी चिप JPKI के माध्यम से पढ़ी जाती है, और इस सत्यापन के लिए JPKI उपलब्ध नहीं था: यह सक्षम नहीं है, या ऐप का नेटिव SDK रिलीज़ My Number Cards को नहीं पढ़ सकता है। ब्राउज़र में सत्यापित किए गए My Number Card को `INTEGRATION_WITHOUT_NFC_ACCESS` मिलता है, और बिना NFC वाले फ़ोन पर किसी अन्य चिप की तरह ही `DEVICE_WITHOUT_NFC` मिलता है। | NFC सत्यापन नहीं किया जा सका क्योंकि यह My Number Card JPKI के माध्यम से पढ़ा जाता है, जो इस सत्यापन के लिए उपलब्ध नहीं था: यह सक्षम नहीं है, या ऐप का SDK My Number Cards को नहीं पढ़ सकता है। |

> [!NOTE]
>
> एक NFC रिपोर्ट और उसकी `SKIPPED_NFC_VALIDATION` चेतावनी केवल तभी मौजूद होती है जब क्लाइंट NFC चरण तक पहुँचता है और स्पष्ट रूप से इसे छोड़ देता है (आमतौर पर `USER_SKIPPED`, या स्कैन के समय रीडर के अनुपलब्ध होने पर `DEVICE_WITHOUT_NFC`)। जब NFC चरण को पेश किए जाने से पहले ही बायपास कर दिया जाता है — बिना चिप वाला दस्तावेज़, अनुपलब्ध प्रमाणपत्र, कोई NFC क्षमता रिपोर्ट नहीं की गई, अपठनीय MRZ कुंजी, JPKI अनुपलब्ध — तो कोई रिपोर्ट या चेतावनी नहीं बनाई जाती है और कारण केवल सत्र-स्तरीय `nfc_skip_reason` फ़ील्ड में दिखाई देता है, बिना सत्र स्थिति को प्रभावित किए।

## कॉन्फ़िगरेशन

तीन वर्कफ़्लो सेटिंग्स यह नियंत्रित करती हैं कि NFC चेतावनियाँ कैसे रूट होती हैं। प्रत्येक को **कोई कार्रवाई नहीं**, **समीक्षा**, या **अस्वीकार करें** पर सेट किया जा सकता है:

1. **NFC स्किप कार्रवाई** (`skip_nfc_action`) — `SKIPPED_NFC_VALIDATION` पर लागू होता है। उपयोगकर्ताओं को केवल तभी स्किप करने का विकल्प दिया जाता है जब `allow_nfc_skip` सक्षम हो।
2. **असत्यापित चिप कार्रवाई** (`unverified_chip_action`) — `NFC_CHIP_NOT_VERIFIED` और `NFC_TRUST_ANCHOR_MISSING` दोनों पर लागू होता है, ताकि सत्र स्थिति का व्यवहार समान रहे जबकि जोखिम कोड यह स्पष्ट करता है कि सत्यापन क्यों विफल हुआ।
3. **डेटा असंगति कार्रवाई** (`inconsistent_data_action`) — `NFC_AND_OCR_DATA_NOT_SAME` पर लागू होता है। यह वही डेटा असंगतता सेटिंग है जिसका उपयोग पहचान सत्यापन में किया जाता है।

दोनों `DSC_CERTIFICATE_*` जोखिमों में कोई कार्रवाई सेटिंग नहीं होती है — वे हमेशा केवल सूचनात्मक होते हैं। Japan My Number Card जोखिमों में पाँच अतिरिक्त सेटिंग्स होती हैं, जो अगले अनुभाग में सूचीबद्ध हैं।

## Japan My Number Card (JPKI)

एक Japan My Number Card को ICAO 9303 के बजाय JPKI (`chip_protocol: "jpki"`) के माध्यम से पढ़ा जाता है, इसलिए उपरोक्त ICAO जोखिम इसके लिए कभी ट्रिगर नहीं होते हैं। इसे पढ़ने पर इसके बजाय ये पाँच जोखिम उत्पन्न होते हैं, जिनमें से प्रत्येक की NFC नोड पर अपनी सेटिंग होती है:

| सेटिंग | जोखिम | डिफ़ॉल्ट |
| - | - | - |
| `jpki_certificate_invalid_action` | `JPKI_CERTIFICATE_INVALID` | अस्वीकार करें |
| `jpki_signature_invalid_action` | `JPKI_SIGNATURE_INVALID` | अस्वीकार करें |
| `jpki_certificate_revoked_action` | `JPKI_CERTIFICATE_REVOKED` | अस्वीकार करें |
| `jpki_revocation_unchecked_action` | `JPKI_REVOCATION_UNCHECKED` | समीक्षा |
| `jpki_inconsistent_data_action` | `JPKI_AND_OCR_DATA_NOT_SAME` | समीक्षा |

My Number Card की स्किप की गई रीडिंग किसी भी चिप की तरह `SKIPPED_NFC_VALIDATION` उत्पन्न करती है और `skip_nfc_action` का पालन करती है। रीड कैसे काम करता है, इसके लिए [Japan My Number Card (JPKI)](https://docs.didit.me/hi/core-technology/nfc-verification/overview.md#japan-my-number-card-jpki) देखें।

> [!WARNING]
>
> JPKI के माध्यम से My Number Card रीडिंग अभी प्रोडक्शन में सक्षम नहीं है। जब तक यह सक्षम नहीं हो जाती, My Number Card स्किप कारण `JPKI_UNAVAILABLE` के साथ NFC चरण को छोड़ देता है और इनमें से कोई भी जोखिम उत्पन्न नहीं होता है।

## उदाहरण

### In Review — चिप सत्यापित नहीं की जा सकी

```json theme={null}
{
  "warnings": [
  {
    "feature": "NFC",
    "risk": "NFC_CHIP_NOT_VERIFIED",
    "additional_data": null,
    "log_type": "warning",
    "short_description": "NFC chip not verified",
    "long_description": "The Near Field Communication (NFC) chip failed passive authentication for a reason other than an explicitly identified missing trust anchor. The chip data or signature could be invalid or altered.",
    "node_id": "nfc_primary"
  },
  {
    "feature": "NFC",
    "risk": "DSC_CERTIFICATE_EXPIRED",
    "additional_data": null,
    "log_type": "information",
    "short_description": "Document Signer Certificate expired",
    "long_description": "The Document Signer Certificate (DSC) used to sign the ePassport chip data has expired, meaning the certificate's validity period has passed.",
    "node_id": "nfc_primary"
  }
]
}
```

यहाँ असत्यापित-चिप कार्रवाई Review पर सेट है, इसलिए `NFC_CHIP_NOT_VERIFIED` में `log_type: "warning"` होता है और NFC रिपोर्ट की स्थिति `In Review` होती है। समय-सीमा समाप्त DSC प्रविष्टि पूरी तरह से सूचनात्मक है।

### Declined — चिप / OCR बेमेल

```json theme={null}
{
  "warnings": [
  {
    "feature": "NFC",
    "risk": "NFC_AND_OCR_DATA_NOT_SAME",
    "additional_data": {
      "ocr_mrz": ["P<ESPDOE<<JOHN<<<<<<<<<<<<<<<<<<<<<<<<<<<<<", "AAB000123ESP9005154M3001017<<<<<<<<<<<<<<04"],
      "nfc_mrz": "P<ESPDOE<<JOHN<<<<<<<<<<<<<<<<<<<<<<<<<<<<<AAB000254ESP9005154M3001017<<<<<<<<<<<<<<06"
    },
    "log_type": "error",
    "short_description": "NFC and OCR data not same",
    "long_description": "The Near Field Communication (NFC) chip data and the OCR data don't match, indicating potential document tampering or data inconsistency.",
    "node_id": "nfc_primary"
  }
]
}
```

यहाँ डेटा-असंगतता कार्रवाई Decline पर सेट है, इसलिए चेतावनी में `log_type: "error"` होता है और NFC रिपोर्ट की स्थिति `Declined` होती है। ध्यान दें कि `ocr_mrz` MRZ पंक्तियों की एक ऐरे है जबकि `nfc_mrz` चिप की एकल संयोजित MRZ स्ट्रिंग है।

### In Review: निरसन के उत्तर के बिना My Number Card

```json theme={null}
{
  "warnings": [
  {
    "feature": "NFC",
    "risk": "JPKI_REVOCATION_UNCHECKED",
    "additional_data": null,
    "log_type": "warning",
    "short_description": "My Number Card revocation status not checked",
    "long_description": "The certificate and signature of the My Number Card were verified, but its revocation status could not be checked, so a revoked card cannot be ruled out.",
    "node_id": "nfc_primary"
  }
]
}
```

यहाँ `jpki_revocation_unchecked_action` अपना डिफ़ॉल्ट, Review, बनाए रखता है, इसलिए चेतावनी में `log_type: "warning"` होता है और NFC रिपोर्ट की स्थिति `In Review` होती है। कार्ड स्वयं सिद्ध हो चुका था: `jpki.chain_valid` और `jpki.signature_valid` दोनों `true` हैं।

## चेतावनी के प्रकार

आपके एप्लिकेशन के कॉन्फ़िगरेशन के आधार पर प्रत्येक जोखिम को एक गंभीरता सौंपी जाती है। तीन गंभीरता स्तर हैं:

## संबंधित

* [NFC रिपोर्ट](https://docs.didit.me/hi/core-technology/nfc-verification/report-nfc-verification.md) — पूर्ण रिपोर्ट स्कीमा और स्थितियाँ।
* [Webhook](https://docs.didit.me/hi/integration/webhooks.md) — सत्र की स्थिति में बदलाव होने पर `status.updated` ट्रिगर होता है; जब सत्र Approved, Declined, In Review या Abandoned में पहुँचता है, तो निर्णय payload (NFC चेतावनियों सहित) संलग्न किया जाता है।
* [डेटा मॉडल — NFC सत्यापन](https://docs.didit.me/hi/reference/data-models.md#nfc-सत्यापन) — कैनोनिकल फ़ील्ड-दर-फ़ील्ड स्कीमा।
* [डेटा मॉडल — चेतावनी ऑब्जेक्ट](https://docs.didit.me/hi/reference/data-models.md#चेतावनी-ऑब्जेक्ट) — `warnings[]` में प्रत्येक प्रविष्टि का प्रारूप।


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.