> ## 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.

# पहचान सत्यापन रिपोर्ट: फ़ील्ड और गुणवत्ता स्कोर

> Didit की पहचान सत्यापन रिपोर्ट जानें: स्थिति, निकाले गए दस्तावेज़ फ़ील्ड, इमेज गुणवत्ता स्कोर और रिस्पॉन्स में डेटा विवरण।

## अवलोकन

**पहचान सत्यापन रिपोर्ट** सरकार द्वारा जारी पहचान दस्तावेज़ से Didit द्वारा निकाले गए और मान्य किए गए सभी विवरणों को कैप्चर करती है — पासपोर्ट, पहचान पत्र, ड्राइविंग लाइसेंस और निवास परमिट। यह OCR किए गए जीवनी-संबंधी और दस्तावेज़ फ़ील्ड, कैप्चर किए गए मीडिया के हस्ताक्षरित URLs, पार्स और जियोलोकेट किए गए पते का डेटा, प्रत्येक पक्ष की इमेज गुणवत्ता के स्कोर, MRZ सामग्री, बहु-लिपि (लैटिन / गैर-लैटिन) विवरण और क्रॉस-सत्र दस्तावेज़ मिलानों को एक साथ बंडल करती है।

यह रिपोर्ट तब जनरेट होती है जब उपयोगकर्ता किसी वर्कफ़्लो में दस्तावेज़-कैप्चर चरण पूरा करता है (या स्टैंडअलोन OCR endpoint पर अनुरोध भेजता है)। Didit दस्तावेज़ के प्रकार की पहचान करता है, OCR चलाता है, MRZ / बारकोड / QR कोड को मान्य करता है, पते को पार्स करता है, छेड़छाड़ (स्क्रीन कैप्चर, प्रिंटेड कॉपी, पोर्ट्रेट हेरफेर) की जांच करता है, और आपके एप्लिकेशन में कैप्चर किए गए प्रत्येक अन्य दस्तावेज़ से इस दस्तावेज़ की तुलना करता है।

प्रत्येक रिपोर्ट की अपनी `status` होती है — जो समग्र सत्र स्थिति से स्वतंत्र होती है — जो यह दर्शाती है कि केवल ID चरण कैसे हल हुआ:

* **स्वीकृत** — दस्तावेज़ पहचान लिया गया, सभी आवश्यक फ़ील्ड निकाल लिए गए, अस्वीकृति पर भेजी जाने वाली कोई चेतावनी ट्रिगर नहीं हुई।
* **समीक्षाधीन** — एक या अधिक चेतावनियाँ ट्रिगर हुईं और आपका वर्कफ़्लो उन्हें समीक्षा के लिए भेजता है।
* **अस्वीकृत** — एक स्वचालित अस्वीकृति शर्त ट्रिगर हुई (असमर्थित दस्तावेज़, समय-सीमा समाप्त दस्तावेज़, पोर्ट्रेट गायब, ब्लॉकलिस्ट में मिलना, अनुकूली-आयु विफलता) या एक ऐसी चेतावनी ट्रिगर हुई जिसकी कॉन्फ़िगर की गई कार्रवाई अस्वीकृत करना है (न्यूनतम/अधिकतम आयु डिफ़ॉल्ट रूप से अस्वीकृत होती है)।
* **समय-सीमा समाप्त** — दस्तावेज़ की `expiration_date` सत्यापन के **बाद** समाप्त हो गई। Didit की सतत समाप्ति निगरानी रिपोर्ट को `Approved` से `Expired` में बदल देती है, एक `DOCUMENT_EXPIRED` चेतावनी जोड़ती है, और स्वीकृत सत्र को `Kyc Expired` सत्र स्थिति में ले जाती है।
* **पूरा नहीं हुआ** — उपयोगकर्ता ने कैप्चर चरण कभी पूरा नहीं किया।

## यह API रिस्पॉन्स में कहाँ दिखाई देता है

ID रिपोर्ट `id_verifications[]` ऐरे के अंदर आती है — **हमेशा एक JSON ऐरे**, कभी भी एकल `id_verification` ऑब्जेक्ट नहीं। जब कोई वर्कफ़्लो एक से अधिक दस्तावेज़ चरण चलाता है (उदाहरण के लिए एक प्राथमिक ID और साथ ही एक स्टेप-अप) तो कई प्रविष्टियां दिखाई देती हैं।

* **सत्र निर्णय API** — `GET /v3/session/{sessionId}/decision/` शीर्ष स्तर पर `id_verifications[]` लौटाता है। [सत्र निर्णय प्राप्त करें](https://docs.didit.me/hi/sessions-api/retrieve-session.md) देखें।
* **Webhooks** — चरण द्वारा डेटा जनरेट होने के बाद `session.status.updated` payload में वही `id_verifications[]` ऐरे शामिल होता है। [Webhooks](https://docs.didit.me/hi/integration/webhooks.md) देखें।
* **स्टैंडअलोन OCR API** — सीधे दस्तावेज़ सबमिशन पर समान फ़ील्ड वाला एक एकल `id_verification` ऑब्जेक्ट मिलता है। [स्टैंडअलोन OCR API](https://docs.didit.me/hi/standalone-apis/id-verification.md) देखें।

> [!NOTE]
>
> `response.id_verifications[0]` को पढ़ें और ऐरे पर पुनरावृति करें। एकल `id_verification` संरचना केवल स्टैंडअलोन OCR API पर मौजूद होती है — यह v3 निर्णय endpoint पर मौजूद नहीं होती है।

## स्कीमा

मानक फ़ील्ड-दर-फ़ील्ड स्कीमा [डेटा मॉडल](https://docs.didit.me/hi/reference/data-models.md#पहचान-सत्यापन) संदर्भ पेज पर उपलब्ध है। नीचे दिए गए फ़ील्ड सीधे `IDVerificationV3Serializer` से आते हैं, जो `IDVerificationV2Serializer` का विस्तार करता है और `node_id`, क्रॉस-सत्र `matches[]` ऐरे और Silent Capture `document_selfie_face_matches[]` ऐरे को जोड़ता है।

### शीर्ष-स्तरीय फ़ील्ड

| फ़ील्ड | प्रकार | विवरण |
| - | - | - |
| `status` | `"Approved" \| "Declined" \| "In Review" \| "Expired" \| "Not Finished"` | ID-चरण स्थिति। |
| `node_id` | string \| null | वर्कफ़्लो ग्राफ़ नोड जिसने यह रिपोर्ट जनरेट की। |
| `document_type` | `"Passport" \| "Identity Card" \| "Driver's License" \| "Residence Permit" \| "Health Insurance Card" \| "Tax Card" \| "Social Security Card" \| "Work Permit" \| "Visa" \| "Public Service Card" \| "Birth Certificate" \| "Firearm License" \| "Other" \| null` | पहचाना गया शीर्ष-स्तरीय दस्तावेज़ परिवार (मानव-पठनीय)। |
| `document_subtype` | string \| null | Didit की दस्तावेज़ रजिस्ट्री से दस्तावेज़ सबटाइप कोड, जिसे वर्कफ़्लो की दस्तावेज़ सेटिंग्स द्वारा स्वीकार किए जाने वाले कोड के अनुसार फ़िल्टर किया जाता है। क्षेत्र-विशिष्ट दस्तावेज़ों में क्षेत्र शामिल होता है, उदाहरण के लिए `QUEENSLAND_DRIVER_LICENSE_GENERIC`। कोड की पूरी सूची के लिए [दस्तावेज़ सबटाइप](https://docs.didit.me/hi/core-technology/id-verification/document-subtypes-id-verification.md) देखें, जिसमें यह भी शामिल है कि अमेरिकी कमर्शियल ड्राइविंग लाइसेंस (CDL) को मानक लाइसेंस से कैसे अलग किया जाए। |
| `document_number` | string | OCR किया गया दस्तावेज़ नंबर। ऐसे ड्राइविंग लाइसेंसों पर जिन पर लाइसेंस नंबर और कार्ड नंबर दोनों प्रिंट होते हैं, तालिका के नीचे दिया गया नोट देखें। |
| `personal_number` | string | OCR किया गया व्यक्तिगत / राष्ट्रीय पहचान संख्या, जब यह दस्तावेज़ नंबर से अलग हो। |
| `portrait_image`, `front_image`, `front_video`, `back_image`, `back_video`, `full_front_image`, `full_back_image` | string (signed URL) | कैप्चर किया गया मीडिया। URL हस्ताक्षरित और समय-सीमित होते हैं — इन्हें तुरंत डाउनलोड करें, URL को कभी भी स्थायी रूप से सहेज कर न रखें। |
| `front_image_camera_front`, `back_image_camera_front` | string (signed URL) \| null | दस्तावेज़ कैप्चर के दौरान उपयोगकर्ता के फ्रंट-फ़ेसिंग कैमरे द्वारा कैप्चर किए गए फ़्रेम। क्रॉस-कैमरा चेहरा जांच के लिए उपयोग किया जाता है और आपकी [चेहरा ब्लॉकलिस्ट](https://docs.didit.me/hi/console/blocklist-users.md#चेहरा-ब्लॉकलिस्ट) से तुलना की जाती है; प्रत्येक को [चेहरा ब्लॉकलिस्ट में जोड़ा](https://docs.didit.me/hi/management-api/lists/create-entry.md#दस्तावेज़-कैप्चर-सेल्फ़ी-से-चेहरे) भी जा सकता है। |
| `front_image_camera_front_face_match_score`, `back_image_camera_front_face_match_score` | float (0–100) \| null | फ्रंट-कैमरा फ़्रेम और दस्तावेज़ पोर्ट्रेट के बीच समानता स्कोर। |
| `document_selfie_face_matches` | array \| null | पिछले सत्रों या चेहरा ब्लॉकलिस्ट प्रविष्टियाँ जिनका चेहरा दस्तावेज़ कैप्चर के दौरान ली गई सेल्फ़ी से मेल खाता है ([Silent Capture चेहरा खोज](https://docs.didit.me/hi/core-technology/face-search/overview.md#दस्तावेज़-कैप्चर-के-दौरान-ली-गई-सेल्फ़ी))। `liveness_checks[].matches` जैसा ही प्रविष्टि प्रारूप; `match_image_url` एक पूर्व-हस्ताक्षरित URL है जिसकी समय-सीमा समाप्त हो जाती है। पुराने सत्रों के लिए या जब खोज नहीं चली हो तो `null`, और जब यह चली और कुछ नहीं मिला तो `[]`। |
| `front_image_quality_score`, `back_image_quality_score` | object \| null | प्रति साइड गुणवत्ता मूल्यांकन (छवि गुणवत्ता स्कोर देखें)। |
| `document_liveness` | object \| null | प्रति धोखाधड़ी प्रकार दस्तावेज़-लाइवनेस स्कोर, उन थ्रेशोल्ड के साथ जिनके आधार पर उनका मूल्यांकन किया गया था (दस्तावेज़ लाइवनेस स्कोर देखें)। केवल V3। |
| `date_of_birth`, `expiration_date`, `date_of_issue` | string (YYYY-MM-DD) | दस्तावेज़ की तिथियाँ। |
| `age` | number | `date_of_birth` से परिकलित धारक की आयु (वर्षों में)। |
| `issuing_state` | string (ISO 3166-1 alpha-3) | जारीकर्ता देश कोड। |
| `issuing_state_name` | string | स्थानीयकृत देश का नाम। |
| `first_name`, `last_name`, `full_name` | string | `preferred_characters` द्वारा चुनी गई लिपि में धारक का नाम (नीचे देखें)। |
| `gender` | `"M" \| "F" \| "U"` | लिंग, जब दस्तावेज़ पर मौजूद हो (`U` = अज्ञात)। |
| `address`, `formatted_address` | string | रॉ और जियोकोडेड/फ़ॉर्मेट की गई पता स्ट्रिंग। |
| `place_of_birth` | string | OCR किया गया जन्म स्थान। |
| `marital_status` | `"SINGLE" \| "MARRIED" \| "DIVORCED" \| "WIDOWED" \| "UNKNOWN"` | वैवाहिक स्थिति, जब दस्तावेज़ पर मौजूद हो। |
| `nationality` | string (ISO 3166-1 alpha-3) | धारक की राष्ट्रीयता, जब जारीकर्ता देश से भिन्न हो। |
| `extra_fields` | object | दस्तावेज़-विशिष्ट अतिरिक्त विवरण (DL श्रेणियां, रक्त समूह, वैकल्पिक-लिपि नाम, `tax_number`, …)। |
| `mrz` | object \| null | पार्स की गई MRZ कुंजी/मान फ़ील्ड। |
| `parsed_address` | object \| null | संरचित, जियोकोडेड पता (`street_1`, `street_2`, `city`, `region`, `country`, `postal_code`, `address_type`, `formatted_address`, `document_location`, `raw_results`, `is_best_match`)। |
| `extra_files[]` | array of signed URLs | इस दस्तावेज़ से जुड़ी अतिरिक्त छवियां। |
| `matches[]` | array | क्रॉस-सत्र दस्तावेज़ मिलान (क्रॉस-सत्र मिलान देखें)। |
| `warnings[]` | array | मॉड्यूल-स्तरीय चेतावनियाँ — [पहचान सत्यापन चेतावनियाँ](https://docs.didit.me/hi/core-technology/id-verification/warnings-id-verification.md) देखें। |

> [!NOTE]
>
> **`issuing_state` हमेशा देश-स्तरीय होता है, कभी उप-राष्ट्रीय नहीं।** प्रत्येक
> दस्तावेज़ प्रकार के लिए, जिसमें किसी राज्य या प्रांत द्वारा जारी किए गए ड्राइविंग लाइसेंस
> भी शामिल हैं (ऑस्ट्रेलिया, संयुक्त राज्य अमेरिका, कनाडा), `issuing_state` और
> `issuing_state_name` राज्य के बजाय **देश** (उदाहरण के लिए `AUS` /
> `Australia`) की रिपोर्ट करते हैं। उप-राष्ट्रीय मान, जब दस्तावेज़ में
> मौजूद हो, `parsed_address.region` में अलग से उपलब्ध होता है (कुछ दस्तावेज़ प्रकारों पर
> `extra_fields.state` पर फ़ॉलबैक करते हुए)। **Business
> Console** सत्र अवलोकन, क्षेत्र मौजूद होने पर, इसे **जारीकर्ता राज्य** के नीचे एक **Region** पंक्ति
> के रूप में दिखाता है।

> [!NOTE]
>
> **ड्राइविंग लाइसेंस जिनमें दो नंबर होते हैं (ऑस्ट्रेलिया)।** ऑस्ट्रेलियाई लाइसेंसों
> पर लाइसेंस नंबर (जो धारक की ड्राइविंग पात्रता की पहचान करता है और कार्ड बदले जाने पर भी
> वही रहता है) और कार्ड नंबर (जो भौतिक कार्ड की पहचान करता है और हर बार फिर से जारी किए जाने पर
> बदल जाता है) दोनों प्रिंट होते हैं। इन लाइसेंसों के लिए Didit हमेशा नंबरों को
> एक ही तरह से मैप करता है:
>
> * `personal_number` — **लाइसेंस नंबर**
> * `document_number` — **कार्ड नंबर**
>
> यह हर ऑस्ट्रेलियाई राज्य और क्षेत्र (NSW, VIC, QLD, WA, SA,
> TAS, ACT, NT) पर लागू होता है। कुछ वेरिएंट्स पर कार्ड नंबर केवल पीछे की तरफ प्रिंट होता है,
> इसलिए इसे केवल तभी पढ़ा जाता है जब लाइसेंस का पिछला भाग कैप्चर किया जाता है। जब कोई कार्ड
> नंबर नहीं पढ़ा जा सकता है, तो लाइसेंस नंबर को `document_number` और `personal_number` **दोनों** के
> रूप में रिपोर्ट किया जाता है, ताकि सत्यापन समाप्त होने के बाद `document_number` में हमेशा एक
> पहचानकर्ता मौजूद रहे। दोनों ही स्थितियों में `personal_number` लाइसेंस नंबर ही होता है। अन्य दस्तावेज़ प्रकारों पर
> `document_number` प्राथमिक OCR किया गया नंबर बना रहता है और यह स्वयं धारक-स्तरीय पहचानकर्ता हो सकता है।

> [!NOTE]
>
> **अर्जेंटीना का CUIL फ़ील्ड `extra_fields.tax_number` होता है, `personal_number` कभी नहीं।**
> अर्जेंटीना के दस्तावेज़ CUIL — 11-अंकों का पहचानकर्ता जिस पर AFIP, ANSES और
> क्रेडिट ब्यूरो आधारित हैं — प्रत्येक दस्तावेज़ पर अलग स्थान पर प्रिंट करते हैं, और
> DNI इसके बगल में एक दूसरा 11-अंकों का नंबर प्रिंट करता है:
>
> * **ड्राइविंग लाइसेंस** पर, CUIL वही होता है जो `personal_number` में आता है;
> * **DNI** पर, `personal_number` में *número de trámite* आता है, जो
>   कार्ड एप्लिकेशन की पहचान करता है और धारक का पहचानकर्ता नहीं है।
>   DNI का CUIL उसके अपने प्रिंटेड फ़ील्ड से पढ़ा जाता है।
>
> इसलिए `personal_number` अर्जेंटीना के लिए एक विश्वसनीय CUIL **नहीं** है: DNI पर यह
> एक 11-अंकों का नंबर होता है जो किसी भी रजिस्ट्री से बिना कोई चेतावनी दिए कोई परिणाम नहीं लौटाएगा।
> इसके बजाय `extra_fields.tax_number` पढ़ें। Didit इसे केवल तभी रिपोर्ट करता है जब यह मान
> एक वास्तविक CUIL (व्यक्ति उपसर्ग और मॉड्यूलो-11 चेक अंक) के रूप में मान्य होता है, जिसमें
> बिना किसी सेपरेटर के कैनोनिकल अंक (`27111111117`) होते हैं, चाहे धारक ने कोई भी अर्जेंटीना का
> दस्तावेज़ प्रस्तुत किया हो। जब कार्ड का CUIL नहीं पढ़ा जा सका, तो एक ऐसा नंबर भरने के बजाय जो
> CUIL नहीं है, यह कुंजी अनुपस्थित रहती है — उन उपयोगकर्ताओं को कवर करने के लिए दूसरे दस्तावेज़
> के रूप में ड्राइविंग लाइसेंस कैप्चर करें, या प्रश्नावलियों के उत्तर या सत्र के `metadata` के माध्यम से CUIL एकत्र करें।

### इमेज गुणवत्ता स्कोर

`front_image_quality_score` और `back_image_quality_score` प्रत्येक निम्नलिखित लौटाते हैं:

| फ़ील्ड | प्रकार | यह क्या मापता है |
| - | - | - |
| `focus_score` | number 0–100 | शार्पनेस — शीर्ष-10% स्थानीय लैप्लेसियन वेरिएंस, एकसमान बैकग्राउंड के लिए भी विश्वसनीय। भार 45%। |
| `brightness_score` | number 0–100 | अत्यधिक डार्क या ओवरएक्सपोज़्ड छवियों पर पेनल्टी लगाता है। भार 30%। |
| `brightness_issue` | `"ok" \| "too_dark" \| "too_bright"` | ब्राइटनेस समस्या की दिशा, जब `brightness_score` कम हो। |
| `resolution_score` | number 0–100 | कैप्चर की कुल पिक्सेल गणना पर आधारित। भार 25%। |
| `is_document_fully_visible` | boolean \| null | `true` जब दस्तावेज़ के चारों कोने दिखाई दे रहे हों, `false` जब कोई कोना कटा हो, `null` जब कोनों की पहचान उपलब्ध न हो। |
| `overall_score` | number 0–100 | भारित समग्र (फ़ोकस 45%, ब्राइटनेस 30%, रिज़ॉल्यूशन 25%)। |

> [!TIP]
>
> त्वरित उपयुक्तता जांच के रूप में `overall_score` का उपयोग करें — **70** से अधिक के स्कोर आम तौर पर विश्वसनीय सत्यापन के लिए पर्याप्त रूप से अच्छे कैप्चर का संकेत देते हैं।

### दस्तावेज़ लाइवनेस स्कोर

`document_liveness` रिपोर्ट करता है कि [दस्तावेज़-लाइवनेस जांच](https://docs.didit.me/hi/core-technology/id-verification/warnings-id-verification.md#दस्तावेज़-लाइवनेस-छेड़छाड़) ने क्या मापा, **चाहे उसने कोई चेतावनी जारी की हो या नहीं**। चेतावनी केवल तभी मौजूद होती है जब कोई स्कोर वर्कफ़्लो के थ्रेशोल्ड में से किसी एक से नीचे गिर जाता है, इसलिए इस फ़ील्ड से पहले स्वीकृत दस्तावेज़ में कोई लाइवनेस साक्ष्य नहीं होता था - यह फ़ील्ड वह तरीका है जिससे आप पास हुए सत्र का ऑडिट करते हैं। जब जांच नहीं चली (उदाहरण के लिए एक गैर-दस्तावेज़ विधि, या सत्र लॉग में दर्ज मॉडल आउटेज) तो यह `null` होता है।

यह प्रति धोखाधड़ी प्रकार एक ऑब्जेक्ट रखता है - `portrait_replace`, `printed_copy` और `screen_replay` - प्रत्येक में:

| फ़ील्ड | प्रकार | अर्थ |
| - | - | - |
| `score` | number 0–100 \| null | इस धोखाधड़ी प्रकार के लिए दस्तावेज़ के वास्तविक होने की संभावना (अधिक = वास्तविक होने की अधिक संभावना)। यह दोनों पक्षों में से **न्यूनतम मान** है, और निर्णय में इसी मान का उपयोग किया गया था। `null` जब किसी भी पक्ष ने प्रयोग करने योग्य स्कोर नहीं दिया - उदाहरण के लिए उस पक्ष पर पोर्ट्रेट स्कोर छोड़ दिया जाता है जहां कोई पोर्ट्रेट नहीं मिला। |
| `front`, `back` | number 0–100 \| null | कैप्चर किए गए प्रत्येक पक्ष के लिए समान स्कोर। उस पक्ष के लिए `null` जिसे कैप्चर नहीं किया गया था या जिसका स्कोर छोड़ दिया गया था। |
| `decline_threshold`, `review_threshold` | number \| null | जब पहचान सत्यापन नोड ने इस दस्तावेज़ का मूल्यांकन किया था, तब सहेजे गए थ्रेशोल्ड। बाद के वर्कफ़्लो संपादन इन्हें नहीं बदलते हैं। `null` जब ऐतिहासिक मूल्यांकन साक्ष्य अनुपलब्ध हो। |
| `bucket` | `"approve" \| "review" \| "decline" \| null` | `score` उन थ्रेशोल्ड के मुकाबले कहां आता है: `decline_threshold` से नीचे → `decline`, `review_threshold` से नीचे → `review`, अन्यथा `approve`। `null` जब कोई प्रयोग करने योग्य स्कोर न हो, जांच लागू न की गई हो, या ऐतिहासिक मूल्यांकन साक्ष्य अनुपलब्ध हो। बकेट इस धोखाधड़ी-प्रकार की जांच का वर्णन करता है, समग्र सत्र स्थिति का नहीं। |

```json theme={null}
"document_liveness": {
  "portrait_replace": {
    "score": 96.46,
    "front": 96.46,
    "back": 98.2,
    "decline_threshold": 35,
    "review_threshold": 70,
    "bucket": "approve"
  },
  "printed_copy": {
    "score": 91.2,
    "front": 91.2,
    "back": 93.7,
    "decline_threshold": 35,
    "review_threshold": 77,
    "bucket": "approve"
  },
  "screen_replay": {
    "score": 99.9,
    "front": 99.9,
    "back": 99.5,
    "decline_threshold": 30,
    "review_threshold": 70,
    "bucket": "approve"
  }
}
```

सहेजे गए मूल्यांकन साक्ष्य के बिना पुराने दस्तावेज़ों के लिए, संग्रहीत स्कोर दिखाई देते रहते हैं लेकिन दोनों थ्रेशोल्ड और `bucket` `null` होते हैं। ऐतिहासिक परिणाम को फिर से संगठित करने के लिए वर्तमान वर्कफ़्लो सेटिंग्स का कभी भी उपयोग नहीं किया जाता है। यही बात उस कैप्चर पर भी लागू होती है जिसका दस्तावेज़ मूल्यांकन अभी पूरा नहीं हुआ है।

Business Console सत्र के पहचान सत्यापन अनुभाग के **दस्तावेज़ लाइवनेस** ब्लॉक में वही तीन पंक्तियाँ दिखाता है।

### क्रॉस-सत्र मिलान

`matches[]` आपके एप्लिकेशन में अधिकतम **5** अन्य दस्तावेज़ों को सूचीबद्ध करता है जो इस दस्तावेज़ से मेल खाते हैं — समान **जन्म तिथि**, समान **जारीकर्ता देश**, और अत्यधिक मिलता-जुलता **पूरा नाम**। ब्लॉकलिस्ट किए गए दस्तावेज़ों के लिए अतिरिक्त रूप से दस्तावेज़-नंबर का सटीक मिलान होना आवश्यक है। समान उपयोगकर्ता (समान `vendor_data`) से संबंधित सत्रों को बाहर रखा गया है।

प्रत्येक प्रविष्टि में `session_id`, `session_number`, `vendor_data`, `verification_date`, `user_details` (`name`, `document_type`, `document_number`), `status`, `is_blocklisted` (दस्तावेज़ को आपकी ब्लॉकलिस्ट में जोड़े जाने पर `true`), `api_service`, और एक हस्ताक्षरित `front_image_url` शामिल होता है।

## स्थिति मान

| स्थिति | अर्थ | डाउनस्ट्रीम प्रभाव |
| - | - | - |
| `Approved` | दस्तावेज़ पहचान लिया गया, आवश्यक फ़ील्ड निकाल लिए गए, कॉन्फ़िगर किए गए थ्रेशोल्ड पर सभी जाँचें पास हो गईं। | एक सफल ID जाँच के रूप में गिना जाता है। |
| `In Review` | एक या अधिक चेतावनियाँ ट्रिगर हुईं और वर्कफ़्लो उन्हें समीक्षा के लिए भेजता है। | जब तक कोई समीक्षक कार्रवाई नहीं करता, सत्र भी `In Review` में चला जाता है। |
| `Declined` | ऑटो-डिक्लाइन शर्त ट्रिगर हुई (असमर्थित दस्तावेज़, समय-सीमा समाप्त दस्तावेज़, पोर्ट्रेट अनुपस्थित, ब्लॉकलिस्ट हिट, अडैप्टिव-आयु विफलता) या Decline के लिए कॉन्फ़िगर की गई कोई चेतावनी ट्रिगर हुई। | सत्र अस्वीकृत हो जाता है जब तक कि कोई अन्य स्वीकृत शाखा वर्कफ़्लो को संतुष्ट न करे। |
| `Expired` | दस्तावेज़ की समाप्ति तिथि स्वीकृति के **बाद** बीत गई। यह Didit की सतत दस्तावेज़ निगरानी द्वारा सेट किया जाता है, जो डिफ़ॉल्ट रूप से सक्षम है (जिस देश और दस्तावेज़ प्रकार का **Expiration mode** **Allow expired** है, छूट प्राप्त है), साथ में एक `DOCUMENT_EXPIRED` चेतावनी दी जाती है। | एक स्वीकृत सत्र `Kyc Expired` में चला जाता है। |
| `Not Finished` | उपयोगकर्ता ने कैप्चर चरण छोड़ दिया। | ID शाखा ने कोई परिणाम नहीं दिया। |

## मल्टी-स्क्रिप्ट दस्तावेज़ (Latin / गैर-Latin)

कुछ दस्तावेज़ — किर्गिज़, कज़ाख, रूसी, जापानी, कोरियाई, चीनी, अरबी, थाई, और अन्य — धारक का नाम, पता या जन्म स्थान लैटिन लिप्यंतरण **और** स्थानीय लिपि **दोनों** में प्रिंट करते हैं। आप चुनते हैं कि वर्कफ़्लो (या स्टैंडअलोन-API) सेटिंग `preferred_characters` के साथ कौन सी लिपि शीर्ष-स्तरीय रिस्पॉन्स को निर्धारित करती है:

| मान | शीर्ष-स्तरीय फ़ील्ड को भरता है | विपरीत लिपि इसमें जाती है |
| - | - | - |
| `latin` *(डिफ़ॉल्ट)* | दस्तावेज़ पर मुद्रित लैटिन लिप्यंतरण | `extra_fields.*_non_latin` |
| `non_latin` | दस्तावेज़ पर मुद्रित स्थानीय-लिपि मान | `extra_fields.*_latin` |

वैकल्पिक-लिपि मान प्रत्यय वाली कुंजियों के तहत `extra_fields` के भीतर रहते हैं: `first_name_non_latin`, `last_name_non_latin`, `middle_name_non_latin`, `full_name_non_latin`, `address_non_latin`, `place_of_birth_non_latin` (या मेल खाने वाले `_latin` वेरिएंट)।

### वैकल्पिक-लिपि फ़ील्ड कब दिखाई देते हैं

* **केवल तब जब दोनों लिपियाँ वास्तव में दस्तावेज़ पर मौजूद हों।** यदि "Surname-Kyrgyz (Cyrillic)" नाम से लेबल किया गया OCR फ़ील्ड लैटिन-स्क्रिप्ट टेक्स्ट (होमोग्लिफ़ या लैटिन लिप्यंतरण) के रूप में निकाला जाता है, तो यह गैर-लैटिन विकल्प के रूप में योग्य **नहीं** होता है और वह कुंजी छोड़ दी जाती है।
* `full_name_non_latin` (और `full_name_latin`) हमेशा अलग-अलग प्रथम, मध्य और अंतिम नाम घटकों से **पुनर्गठित** किए जाते हैं जब दोनों उपलब्ध होते हैं — निरंतरता के लिए OCR से मूल "Full Name" फ़ील्ड को अनदेखा कर दिया जाता है।
* जब `preferred_characters=latin` हो लेकिन दस्तावेज़ में **केवल** गैर-लैटिन टेक्स्ट हो (ताकि शीर्ष-स्तरीय फ़ील्ड गैर-लैटिन में समाप्त हों), तो Didit एक लिप्यंतरण पास चलाता है और लैटिन फ़ॉलबैक के रूप में `first_name_latin`, `last_name_latin`, `middle_name_latin`, `full_name_latin`, `place_of_birth_latin`, और `address_latin` दिखाता है।

```json theme={null}
{
  "first_name": "John",
  "last_name": "Doe",
  "full_name": "John Doe",
  "extra_fields": {
    "first_name_non_latin": "Айна"
  }
}
```

`last_name_non_latin` अनुपस्थित है क्योंकि इस नमूने पर दस्तावेज़ का "Surname (Cyrillic)" फ़ील्ड लैटिन वर्णों के रूप में वापस आया — निकालने के लिए कोई वास्तविक गैर-लैटिन उपनाम नहीं था।

## उदाहरण

### स्वीकृत — साफ़ स्पेनिश पहचान पत्र (सभी फ़ील्ड)

```json theme={null}
{
  "id_verifications": [
    {
      "status": "Approved",
      "document_type": "Identity Card",
      "document_subtype": "ID_CARD_GENERIC",
      "document_number": "SAMPLE-DOC-12345",
      "personal_number": "SAMPLE-PER-12345",
      "portrait_image": "https://<media-host>/.../portrait.jpg?signature=...",
      "front_image": "https://<media-host>/.../front.jpg?signature=...",
      "front_video": "https://<media-host>/.../front.mp4?signature=...",
      "back_image": "https://<media-host>/.../back.jpg?signature=...",
      "back_video": "https://<media-host>/.../back.mp4?signature=...",
      "full_front_image": "https://<media-host>/.../full_front.jpg?signature=...",
      "full_back_image": "https://<media-host>/.../full_back.jpg?signature=...",
      "front_image_camera_front": null,
      "back_image_camera_front": null,
      "front_image_camera_front_face_match_score": null,
      "back_image_camera_front_face_match_score": null,
      "front_image_quality_score": {
        "focus_score": 85.3,
        "brightness_score": 92.1,
        "brightness_issue": "ok",
        "is_document_fully_visible": true,
        "resolution_score": 72.4,
        "overall_score": 84.6
      },
      "back_image_quality_score": {
        "focus_score": 79.1,
        "brightness_score": 90.5,
        "brightness_issue": "ok",
        "is_document_fully_visible": true,
        "resolution_score": 72.4,
        "overall_score": 81.5
      },
      "date_of_birth": "1990-01-01",
      "age": 35,
      "expiration_date": "2031-06-02",
      "date_of_issue": "2021-06-02",
      "issuing_state": "ESP",
      "issuing_state_name": "Spain",
      "first_name": "John",
      "last_name": "Doe",
      "full_name": "John Doe",
      "gender": "M",
      "address": "Avda de Madrid 34",
      "formatted_address": "Avda de Madrid 34, Madrid, Madrid 28822, Spain",
      "place_of_birth": "Madrid",
      "marital_status": "SINGLE",
      "nationality": "ESP",
      "extra_fields": {},
      "mrz": {
        "document_number": "SAMPLE-DOC-12345",
        "surname": "DOE",
        "name": "JOHN",
        "birth_date": "900101",
        "expiry_date": "310602"
      },
      "parsed_address": {
        "street_1": "Avda de Madrid 34",
        "street_2": null,
        "city": "Madrid",
        "region": "Madrid",
        "country": "ES",
        "postal_code": "28822",
        "address_type": "Avda",
        "formatted_address": "Avda de Madrid 34, Madrid, Madrid 28822, Spain",
        "document_location": { "latitude": 40.4168, "longitude": -3.7038 },
        "raw_results": {
          "geometry": {
            "location": { "lat": 40.4168, "lng": -3.7038 },
            "location_type": "ROOFTOP"
          }
        },
        "is_best_match": true
      },
      "extra_files": [],
      "warnings": [],
      "node_id": "id_primary",
      "matches": []
    }
  ]
}
```

### समीक्षाधीन — ऐसे दस्तावेज़ पर QR नहीं मिला जिस पर एक होना चाहिए

संक्षिप्त — एक वास्तविक रिस्पॉन्स में हमेशा ऊपर दिखाया गया पूरा फ़ील्ड सेट होता है।

```json theme={null}
{
  "id_verifications": [
    {
      "status": "In Review",
      "node_id": "id_primary",
      "document_type": "Identity Card",
      "document_subtype": "ID_CARD_GENERIC",
      "document_number": "SAMPLE-DOC-12345",
      "first_name": "John",
      "last_name": "Doe",
      "full_name": "John Doe",
      "warnings": [
        {
          "feature": "ID_VERIFICATION",
          "risk": "QR_NOT_DETECTED",
          "additional_data": null,
          "log_type": "warning",
          "short_description": "QR not detected",
          "long_description": "The system couldn't find or read the QR code on the document. This could be due to poor image quality or an unsupported document type.",
          "node_id": "id_primary"
        }
      ]
    }
  ]
}
```

## सुरक्षा नोट

दस्तावेज़ छवियों और वीडियो के लिए लौटाए गए हस्ताक्षरित URL अस्थायी होते हैं — वे एक सीमित वैधता विंडो के बाद समाप्त हो जाते हैं। इन्हें अल्पकालिक मानें: आपको जो चाहिए उसे तुरंत डाउनलोड करें और उन्हें कैश या सार्वजनिक रूप से प्रदर्शित न करें। आमतौर पर आपके एप्लिकेशन को केवल `status`, कुछ बायोग्राफ़िकल फ़ील्ड और चेतावनियों की आवश्यकता होती है — भविष्य में किसी भी उल्लंघन के जोखिम को कम करने के लिए जितना संभव हो उतना कम स्टोर करें।

## संबंधित

* [पहचान सत्यापन चेतावनियाँ](https://docs.didit.me/hi/core-technology/id-verification/warnings-id-verification.md) — चेतावनियों की पूरी मान-सूची, कारण और समाधान।
* [दस्तावेज़ निगरानी](https://docs.didit.me/hi/core-technology/id-verification/document-monitoring-id-verification.md) — Didit छेड़छाड़ और क्रॉस-सत्र डुप्लिकेट की जांच कैसे करता है।
* [समर्थित दस्तावेज़](https://docs.didit.me/hi/core-technology/id-verification/supported-documents-id-verification.md) — कौन से दस्तावेज़ प्रकार और देश शामिल हैं।
* [दस्तावेज़ सब-टाइप्स](https://docs.didit.me/hi/core-technology/id-verification/document-subtypes-id-verification.md) — पूर्ण `document_subtype` कोड सूची, जिसमें US कमर्शियल बनाम मानक ड्राइविंग लाइसेंस पहचान शामिल है।
* [Webhook](https://docs.didit.me/hi/integration/webhooks.md) — रिपोर्ट प्राप्त करने के लिए `session.status.updated` सुनें।
* [डेटा मॉडल — पहचान सत्यापन](https://docs.didit.me/hi/reference/data-models.md#पहचान-सत्यापन) — प्रत्येक फ़ील्ड के साथ कैनोनिकल स्कीमा।


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