> ## 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 के डेटाबेस सत्यापन के सभी परिणाम कोड: मैच, नो मैच, मृतक, नाबालिग, दस्तावेज़ नहीं मिला, बायोमेट्रिक बेमेल। $0.05/चेक से शुरू।

Didit का [डेटाबेस सत्यापन](https://docs.didit.me/hi/core-technology/database-validation/overview.md) API प्रत्येक देश के आधिकारिक सिविल रजिस्ट्री से पूछताछ करता है — RENAPER (अर्जेंटीना, बायोमेट्रिक चेहरा मिलान के साथ \$0.20/जाँच), Receita Federal (ब्राज़ील, \$0.20), Tribunal Electoral SIB (पनामा, \$0.75 बायोमेट्रिक), Junta Central Electoral (डोमिनिकन गणराज्य, \$0.05) और 14 अन्य — प्रति सफल क्वेरी बिल किया जाता है, कोई मासिक न्यूनतम नहीं।

जब आप डेटाबेस सत्यापन चलाते हैं, तो आपको परिणाम की दो परतें मिलती हैं:

1. एक **मानक आउटकम कोड** जो समर्थित प्रत्येक देश में एक ही तरह से काम करता है, ताकि आप उन सभी को कवर करने वाला एक ही हैंडलिंग लॉजिक लिख सकें।
2. एक वैकल्पिक **देश-विशिष्ट डिटेल कोड** जो आपको ठीक-ठीक बताता है कि सरकारी रजिस्ट्री ने कौन सी स्थिति लौटाई — यह सपोर्ट, एनालिटिक्स, और उपयोगकर्ता को पुनः प्रयास करने के लिए प्रेरित करने का निर्णय लेने हेतु उपयोगी है।

यह पेज आपके सामने आने वाले प्रत्येक मान को सूचीबद्ध करता है और बताता है कि उनमें से प्रत्येक पर क्या प्रतिक्रिया दी जाए।

## मानक आउटकम कोड

ये कोड सभी देशों में समान होते हैं। समीक्षा, अस्वीकृति और पुनः प्रयास का लॉजिक इन्हीं पर बनाएँ — प्रति-देश डिटेल कोड पर नहीं।

| आउटकम कोड | अर्थ | पुनः प्रयास योग्य? | अनुशंसित हैंडलिंग |
| :- | :- | :-: | :- |
| `MATCH` | रजिस्ट्री ने पहचान की पुष्टि की और प्रत्येक जाँची गई फ़ील्ड मेल खा गई। | — | स्वीकृत करें। |
| `PARTIAL_MATCH` | रजिस्ट्री में एक रिकॉर्ड मिला, लेकिन सेवा द्वारा तुलना की गई एक या अधिक फ़ील्ड पूरी तरह मेल नहीं खाती थीं (आमतौर पर नाम या जन्म तिथि)। कौन से फ़ील्ड परिणाम तय करते हैं यह सेवा के अनुसार भिन्न होता है — [मिलान विधियाँ](https://docs.didit.me/hi/core-technology/database-validation/database-validation-matching-methods.md) देखें। | — | समीक्षा के लिए भेजें या ऑटो-डिक्लाइन करने के लिए [Partial Match Action](https://docs.didit.me/hi/core-technology/database-validation/database-validation-warnings.md) कॉन्फ़िगर करें। |
| `NO_MATCH` | रजिस्ट्री ने सबमिट किए गए डेटा के लिए कोई मिलान नहीं लौटाया। | नहीं | अपनी नीति के आधार पर अस्वीकृत करें, या समीक्षा के लिए भेजें। |
| `DOCUMENT_SUPERSEDED` | रजिस्ट्री ने व्यक्ति की पहचान की पुष्टि की, लेकिन प्रस्तुत किए गए **दस्तावेज़ का संस्करण** वह नहीं है जो उसके रिकॉर्ड में है — उसके बाद से एक नया संस्करण जारी किया जा चुका है, इसलिए हाथ में मौजूद क्रेडेंशियल पुराना हो चुका है। अर्जेंटीना का DNI *ejemplar* लेटर इसका प्रामाणिक उदाहरण है। यह `NO_MATCH` (व्यक्ति मेल नहीं खाया) और `DOCUMENT_NOT_FOUND` (कोई रिकॉर्ड नहीं मिला) से अलग है: केवल भौतिक क्रेडेंशियल पुराना है। | नहीं | समीक्षा के लिए भेजें और दस्तावेज़ के वर्तमान संस्करण का अनुरोध करें। इसे आपके **No Match Action** के अनुसार हैंडल किया जाता है और [`DATABASE_VALIDATION_DOCUMENT_SUPERSEDED`](https://docs.didit.me/hi/core-technology/database-validation/database-validation-warnings) ट्रिगर करता है। |
| `DOCUMENT_NOT_FOUND` | पहचान संख्या सिंटैक्स के अनुसार मान्य है लेकिन सरकारी रजिस्ट्री में मौजूद नहीं है। | नहीं | अस्वीकृत करें। |
| `INVALID_DOCUMENT_FORMAT` | सबमिट की गई पहचान संख्या विकृत है (गलत लंबाई, गैर-संख्यात्मक, अमान्य चेकसम)। | नहीं | उपयोगकर्ता से उनका दस्तावेज़ नंबर पुनः दर्ज करने के लिए कहें। |
| `INVALID_INPUT` | एक आवश्यक इनपुट फ़ील्ड (सेल्फ़ी, लिंग, जन्म तिथि, आदि) अनुपलब्ध या विकृत थी। | नहीं | उपयोगकर्ता से अनुपलब्ध फ़ील्ड पुनः सबमिट करने के लिए कहें। डेटा प्रदान किए जाने के बाद सत्र स्वचालित रूप से पुनः प्रोसेस होगा — [`COULD_NOT_PERFORM_DATABASE_VALIDATION`](https://docs.didit.me/hi/core-technology/database-validation/database-validation-warnings) देखें। |
| `MINOR_BLOCKED` | रजिस्ट्री ने रिकॉर्ड रोक दिया क्योंकि विषय एक नाबालिग है। नाबालिगों के डेटा-संरक्षण कानूनों वाले क्षेत्राधिकारों (ब्राज़ील LGPD, अर्जेंटीना) में लागू होता है। | नहीं | अस्वीकृत करें। स्थानीय कानूनी ढांचे का सम्मान करें — पुनः प्रयास न करें। |
| `DECEASED` | रजिस्ट्री रिपोर्ट करती है कि विषय मृत है। | नहीं | अस्वीकृत करें। |
| `BIOMETRIC_NO_MATCH` | बायोमेट्रिक सत्यापन (अर्जेंटीना, पनामा) के लिए, चेहरा मिलान स्कोर स्वीकृति थ्रेशोल्ड से कम था। | नहीं | अस्वीकृत करें, या समीक्षा के लिए भेजें। |
| `BIOMETRIC_IMAGE_UNUSABLE` | सेल्फ़ी को प्रोसेस नहीं किया जा सका — छवि खाली थी, कोई चेहरा नहीं था, कम गुणवत्ता थी, या रजिस्ट्री इसे पढ़ नहीं सकी। | हाँ | उपयोगकर्ता को सेल्फ़ी दोबारा लेने के लिए प्रेरित करें। |
| `INCONCLUSIVE` | रजिस्ट्री यह निर्धारित नहीं कर सकी कि व्यक्ति मेल खाता है या नहीं — परिणाम वास्तव में अनिश्चित है (वे रजिस्ट्री में हो भी सकते हैं या नहीं भी)। यह `NO_MATCH` (निश्चित रूप से अनुपस्थित) और `BIOMETRIC_IMAGE_UNUSABLE` (एक तकनीकी छवि समस्या) से अलग है: किसी भी पक्ष की पुष्टि नहीं हुई, इसलिए `match_type` मान `null` है। | संभवतः | समीक्षा के लिए भेजें। अधिक स्पष्ट सेल्फ़ी या अतिरिक्त डेटा के साथ पुनः प्रयास करने से यह हल हो सकता है। |
| `REGISTRY_UNAVAILABLE` | सरकारी रजिस्ट्री अस्थायी रूप से अनुपलब्ध है (टाइमआउट, कनेक्टिविटी त्रुटि, अपस्ट्रीम 5xx)। | हाँ | थोड़े समय बाद पुनः प्रयास करें। Didit पहले से ही अस्थायी त्रुटियों के लिए स्वचालित रूप से पुनः प्रयास करता है, इसलिए अंतिम रिपोर्ट में इसे देखने का अर्थ है कि पुनः प्रयास समाप्त हो चुके थे। जब कोई रजिस्ट्री लगातार विफल होती है, तो रुकावट लंबी होने पर आपके संगठन को ईमेल भेजा जाता है और एक्सेस बहाल होने पर दोबारा भेजा जाता है — [उपलब्धता सूचनाएं](https://docs.didit.me/hi/core-technology/database-validation/overview.md#उपलब्धता-सूचनाएं) देखें। |
| `REGISTRY_ERROR` | रजिस्ट्री ने एक अप्रत्याशित विफलता लौटाई जो ऊपर दिए गए किसी भी वर्ग में फिट नहीं होती है। | संभवतः | डिटेल कोड के साथ सपोर्ट को एस्केलेट करें। |

> [!NOTE]
>
> `outcome_code` सत्यापन रिपोर्ट पर `validations` ऐरे की प्रत्येक प्रविष्टि के अंदर मौजूद होता है। रिस्पॉन्स में यह कहाँ फ़िट होता है, इसके लिए [डेटाबेस सत्यापन रिपोर्ट](https://docs.didit.me/hi/core-technology/database-validation/database-validation-report.md) देखें।

> [!NOTE]
>
> `REGISTRY_UNAVAILABLE` और `REGISTRY_ERROR` का अर्थ है कि स्रोत रजिस्ट्री ने कभी भी क्वेरी का उत्तर नहीं दिया, इसलिए इन दो आउटकम के लिए **बिल नहीं किया जाता है** - [मूल्य निर्धारण](https://docs.didit.me/hi/core-technology/database-validation/overview.md) देखें। अन्य प्रत्येक आउटकम कोड रजिस्ट्री से प्राप्त एक वास्तविक, सशुल्क रिस्पॉन्स है, यहाँ तक कि वह भी जो कुछ भी पुष्टि नहीं करता (`INCONCLUSIVE`, `BIOMETRIC_IMAGE_UNUSABLE`) और वह भी जो आपके द्वारा भेजी गई जानकारी को अस्वीकार करता है (`INVALID_DOCUMENT_FORMAT`, `INVALID_INPUT` — आउटकम कोड के रूप में इनका अर्थ है कि क्वेरी जाने के बाद रजिस्ट्री ने स्वयं डेटा को अस्वीकार कर दिया)।
>
> इनपुट जो कभी किसी रजिस्ट्री तक नहीं पहुँचता, वह कोई आउटकम कोड उत्पन्न नहीं करता: जब कोई मान देश के फ़ॉर्मेट नियमों में विफल होता है तो `POST /v3/database-validation/` का उत्तर `400` होता है, और अनुपलब्ध या विकृत फ़ील्ड वाली वर्कफ़्लो सेवा को [`COULD_NOT_PERFORM_DATABASE_VALIDATION`](https://docs.didit.me/hi/core-technology/database-validation/database-validation-warnings) के साथ स्किप कर दिया जाता है। दोनों के लिए बिल नहीं किया जाता है। [डेटाबेस सत्यापन मूल्य निर्धारण पेज](https://docs.didit.me/hi/getting-started/database-validation-pricing.md) पर पूरा विवरण देखें।

## देश-विशिष्ट विवरण कोड

विवरण कोड `outcome_code` के साथ `outcome_detail` के रूप में लौटाया जाता है। मानक परिणाम के अलावा केवल नीचे सूचीबद्ध देश ही विवरण कोड जनरेट करते हैं — अन्य सभी समर्थित देश केवल मानक कोड लौटाते हैं।

### अर्जेंटीना (RENAPER)

अर्जेंटीना DNI, सेल्फ़ी और घोषित लिंग को मिलाकर RENAPER राष्ट्रीय पहचान रजिस्ट्री के विरुद्ध बायोमेट्रिक 1×1 सत्यापन का उपयोग करता है।

| विवरण कोड | मानक परिणाम | इसका क्या अर्थ है |
| :- | :- | :- |
| `300` | `INVALID_DOCUMENT_FORMAT` | DNI फ़ील्ड 7–8 अंकों की संख्या होनी चाहिए। |
| `301` | `DOCUMENT_NOT_FOUND` | सबमिट किया गया DNI किसी मान्य रिकॉर्ड से मेल नहीं खाता है। |
| `303` | `INVALID_INPUT` | सेल्फ़ी फ़ील्ड खाली थी। |
| `304` | `INVALID_INPUT` | लिंग फ़ील्ड खाली थी या `M`, `F`, `X` में से कोई एक नहीं थी। |
| `305` | `NO_MATCH` | DNI और लिंग का संयोजन नहीं मिला। |
| `306` | `REGISTRY_UNAVAILABLE` | इस समय क्वेरी निष्पादित नहीं की जा सकती। |
| `307` | `REGISTRY_UNAVAILABLE` | सार्वजनिक पहचान सत्यापन प्रणाली से कनेक्ट करने में त्रुटि। |
| `311` | `REGISTRY_ERROR` | इस इंटीग्रेशन के पास इस उत्पाद का एक्सेस नहीं है। |
| `313` | `MINOR_BLOCKED` | रिकॉर्ड किसी नाबालिग व्यक्ति का है। |
| `400` | `REGISTRY_UNAVAILABLE` | कनेक्शन त्रुटि। |
| `401` | `NO_MATCH` | प्रदान किए गए डेटा के लिए कोई परिणाम नहीं मिला। |
| `405` | `BIOMETRIC_IMAGE_UNUSABLE` | छवि से संबंधित समस्या; इसे प्रोसेस नहीं किया जा सकता। |
| `406` | `BIOMETRIC_IMAGE_UNUSABLE` | छवि प्रोसेसिंग में त्रुटि। |
| `NO.HIT` | `BIOMETRIC_NO_MATCH` | चेहरा मिलान स्कोर स्वीकृति थ्रेशोल्ड (\< 50) से कम था। |
| `INTERNAL_ERROR` | `REGISTRY_UNAVAILABLE` | टाइमआउट पार हो गया। |

### ब्राज़ील (Receita Federal — Consulta CPF)

ब्राज़ील LGPD (Lei Geral de Proteção de Dados) और बाल एवं किशोर डिजिटल संविधि (Children's and Adolescents' Digital Statute) के तहत नाबालिगों के लिए स्पष्ट हैंडलिंग के साथ, Receita Federal की आधिकारिक CPF सेवा के विरुद्ध CPF को सत्यापित करता है।

| विवरण कोड | मानक परिणाम | इसका क्या अर्थ है |
| :- | :- | :- |
| `200` | `MATCH` | CPF मिल गया और डेटा सफलतापूर्वक लौटा दिया गया। |
| `206` | `MATCH` | CPF मिल गया, लेकिन कुछ गैर-आवश्यक फ़ील्ड नहीं लौटाए गए। |
| `400` | `INVALID_DOCUMENT_FORMAT` | CPF संख्या मान्य नहीं है। |
| `404` | `DOCUMENT_NOT_FOUND` | सबमिट की गई संख्या के साथ कोई CPF मौजूद नहीं है। |
| `422` | `MINOR_BLOCKED` | LGPD (क़ानून 13.709/2018) के तहत 18 वर्ष से कम आयु के नाबालिग का डेटा रोक लिया गया है। रिस्पॉन्स में `minor_under_18: true` शामिल है। |
| `451` | `MINOR_BLOCKED` | LGPD और बाल एवं किशोर डिजिटल संविधि (क़ानून 15.211/2025) के अनुसार 16 वर्ष से कम आयु के नाबालिग का डेटा रोक लिया गया है। रिस्पॉन्स में `minor_under_18: true` और `minor_under_16: true` शामिल हैं। |
| `500` | `REGISTRY_UNAVAILABLE` | अपस्ट्रीम सर्वर त्रुटि। |
| `504` | `REGISTRY_UNAVAILABLE` | गेटवे टाइमआउट — अनुरोध Consulta CPF API तक नहीं पहुंचा। |

> [!NOTE]
>
> ब्राज़ील में `MINOR_BLOCKED` परिणामों के लिए, `source_data` अभी भी `lgpd_minor`, `minor_under_18`, और `minor_under_16` फ़्लैग लौटाता है ताकि आप पुनः प्रयास किए बिना आयु-उपयुक्त फ़्लो लागू कर सकें।

### पनामा (SIB — Tribunal Electoral)

पनामा Tribunal Electoral द्वारा संचालित SIB (Servicio de Identificación Biométrica) रजिस्ट्री के विरुद्ध बायोमेट्रिक सत्यापन का उपयोग करता है। यदि कोई तकनीकी SIB त्रुटि होती है, तो सत्र स्वचालित रूप से 1×1 लुकअप पर फ़ालबैक हो जाता है।

| विवरण कोड | मानक परिणाम | इसका क्या अर्थ है |
| :- | :- | :- |
| `601` | `REGISTRY_UNAVAILABLE` | ऑपरेटर डेटाबेस में मौजूद नहीं है। |
| `602` | `MINOR_BLOCKED` | नागरिक की आयु 12 वर्ष से कम है। |
| `603` | `DECEASED` | नागरिक मृत है। |
| `604` | `NO_MATCH` | नागरिक का पंजीकरण अमान्य है। |
| `605` | `NO_MATCH` | नागरिक की पहचान नहीं हुई। |
| `606` | `INVALID_INPUT` | Cédula फ़ील्ड खाली है। |
| `607` | `DOCUMENT_NOT_FOUND` | नागरिक नहीं मिला। |
| `608` | `REGISTRY_ERROR` | इस क्लाइंट के लिए कोई SIB एक्सेस नहीं है। |
| `610` | `BIOMETRIC_IMAGE_UNUSABLE` | सामान्य फ़ेशियल सत्यापन त्रुटि। |
| `611` | `BIOMETRIC_IMAGE_UNUSABLE` | तुलना के लिए छवि नहीं भेजी गई थी। |
| `612` | `BIOMETRIC_IMAGE_UNUSABLE` | छवि में कोई सामग्री नहीं है। |
| `613` | `BIOMETRIC_IMAGE_UNUSABLE` | अमान्य छवि फ़ॉर्मेट। |
| `614` | `BIOMETRIC_IMAGE_UNUSABLE` | छवि में कोई चेहरा नहीं मिला। |
| `615` | `BIOMETRIC_NO_MATCH` | समानता थ्रेशोल्ड पूरा नहीं हुआ। |

### अन्य समर्थित देश

नीचे दिए गए देश केवल मानक परिणाम कोड लौटाते हैं — हैंडल करने के लिए कोई देश-विशिष्ट विवरण कोड नहीं हैं।

* **बोलिविया, कोलंबिया, कोस्टा रिका, अल साल्वाडोर, ग्वाटेमाला, होंडुरास, पराग्वे, स्पेन, उरुग्वे, वेनेज़ुएला** — संबंधित सिविल रजिस्ट्री के विरुद्ध 1×1 लुकअप। परिणाम सीधे `MATCH`, `NO_MATCH`, `DOCUMENT_NOT_FOUND`, `INVALID_DOCUMENT_FORMAT`, या `REGISTRY_UNAVAILABLE` पर मैप होते हैं।
* **चिली (Registro Civil)** — RUT लुकअप। जब रजिस्ट्री किसी कम उम्र के रिकॉर्ड को फ़्लैग करती है, तो यह मानक परिणामों के साथ-साथ `MINOR_BLOCKED` पर मैप होता है।
* **डोमिनिकन गणराज्य (JCE)** — Cédula लुकअप जो बूलियन वैधता लौटाता है; यह `MATCH` या `NO_MATCH` पर मैप होता है।
* **इक्वाडोर (Registro Civil)** — Cédula लुकअप।
* **मैक्सिको (RENAPO, साथ ही 2×2 के लिए INE)** — RENAPO के माध्यम से CURP लुकअप। जब `validation_type` `two_by_two` होता है, तो एक अतिरिक्त INE क्रॉस-रेफ़रंस चलता है; दोनों समान मानक परिणाम कोड प्रदान करते हैं।
* **पेरू (RENIEC)** — DNI लुकअप।

## हैंडलिंग रेसिपी

सबसे सरल और सुदृढ़ हैंडलर इस प्रकार दिखता है:

```typescript theme={null}
switch (result.outcome_code) {
  case "MATCH":
    return approve();
  case "PARTIAL_MATCH":
    return review();
  case "NO_MATCH":
  case "DOCUMENT_NOT_FOUND":
  case "DECEASED":
  case "MINOR_BLOCKED":
  case "BIOMETRIC_NO_MATCH":
    return decline();
  case "INVALID_DOCUMENT_FORMAT":
  case "INVALID_INPUT":
    return askUserToFixInput(result.outcome_detail);
  case "BIOMETRIC_IMAGE_UNUSABLE":
    return askUserToRetakeSelfie();
  case "REGISTRY_UNAVAILABLE":
  case "REGISTRY_ERROR":
    return review();  // Didit already retried; a human can decide.
  default:
    return review();
}
```

> [!NOTE]
>
> आपको व्यावसायिक लॉजिक के लिए `outcome_detail` पर शाखा बनाने की आवश्यकता नहीं है — इसका उपयोग एनालिटिक्स, डीबगिंग और सपोर्ट टिकट के लिए करें। मानक `outcome_code` सभी देशों में और समय के साथ स्थिर रहने की गारंटी है।

## यह भी देखें

* [डेटाबेस सत्यापन चेतावनियाँ](https://docs.didit.me/hi/core-technology/database-validation/database-validation-warnings.md) — सत्र-स्तरीय चेतावनी टैग (`COULD_NOT_PERFORM_DATABASE_VALIDATION`, `DATABASE_VALIDATION_PARTIAL_MATCH`, `DATABASE_VALIDATION_NO_MATCH`) और अपने एप्लिकेशन की समीक्षा/अस्वीकृति कार्रवाइयों को कैसे कॉन्फ़िगर करें।
* [डेटाबेस सत्यापन रिपोर्ट](https://docs.didit.me/hi/core-technology/database-validation/database-validation-report.md) — संपूर्ण रिस्पॉन्स संरचना और `outcome_code` / `outcome_detail` कहाँ दिखाई देते हैं।
* [डेटाबेस सत्यापन समर्थित देश](https://docs.didit.me/hi/core-technology/database-validation/database-validation-supported-countries.md) — सभी देशों और मिलान-पद्धतियों की सूची।


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