बिना क्रेडिट खर्च किए सैंडबॉक्स में टेस्टिंग

सैंडबॉक्स एक प्रति-application मोड है जहां हर प्रोवाइडर मॉक होता है, कुछ भी बिल नहीं होता, और आप किसी भी ज़रूरी वेरिफिकेशन परिणाम को जबरन ला सकते हैं - approved, declined, या in review।

Short answer

सैंडबॉक्स आपकी लाइव application के अंदर कोई स्विच नहीं, बल्कि एक application पर मोड है। सैंडबॉक्स मोड में दूसरी application बनाएं, उसकी API key इस्तेमाल करें, और हर चेक मॉक हो जाता है, कुछ भी बिल नहीं होता, और आप कोई भी परिणाम जबरन ला सकते हैं। अगर आपको सिर्फ़ एक प्रोडक्शन application दिखती है, तो आपको सैंडबॉक्स वाली बनानी होगी - मोड हर application के हिसाब से चुना जाता है।

Didit का सैंडबॉक्स किसी पेमेंट प्रोवाइडर के टेस्ट कार्ड जैसा है: यह आपको बिना असली प्रोवाइडर को कॉल किए, बिना असली पर्सनल डेटा हैंडल किए, और बिना अपना बैलेंस छुए, मांगे जाने पर किसी भी वेरिफिकेशन परिणाम को दोहराने देता है।

#सैंडबॉक्स एक application पर मोड है

यही वह हिस्सा है जिसमें ज़्यादातर लोग अटक जाते हैं। Live और sandbox एक ही ऑर्गेनाइज़ेशन के अंदर अलग-अलग application होते हैं, इसलिए टेस्ट ट्रैफ़िक और प्रोडक्शन डेटा कभी नहीं मिलते। हर application का मोड या तो live होता है या sandbox

The API keys page in the Didit console, where each key belongs to one application
  1. एक key एक ही application से जुड़ी होती है - sandbox app की key live सेशन को छू नहीं सकती।
  2. लाइव वाली को दोबारा इस्तेमाल करने की बजाय टेस्टिंग के लिए एक अलग key बनाएं।
Keys प्रति application होती हैं, इसलिए एक sandbox key कभी live डेटा तक नहीं पहुंच सकती।
  1. एक दूसरी application बनाएं

    कंसोल में, ऊपर मौजूद application switcher खोलें और एक नई application बनाएं। इसके मोड के तौर पर sandbox चुनें।

  2. उस application की API key इस्तेमाल करें

    sandbox application चुने रहते हुए API & Webhooks से API key लें। किसी live application पर कोई अलग "test key" नहीं होती - key ही एनवायरनमेंट है

  3. इसमें एक वर्कफ़्लो बनाएं

    Sandbox application की अपनी वर्कफ़्लो होती हैं। जिस फ्लो को टेस्ट करना है उसे दोबारा बनाएं (या कॉपी करें)।

  4. हमेशा की तरह सेशन बनाएं

    वही एंडपॉइंट, वही कोड पाथ। बस फ़र्क़ इतना है कि आप कौन सी key भेज रहे हैं।

Note

अगर आपके कंसोल में सिर्फ़ एक प्रोडक्शन application दिखती है और sandbox जोड़ने का कोई तरीका नहीं दिखता, तो अपने ऑर्गेनाइज़ेशन के लिए sandbox application बनाने की सुविधा ऑन करवाने के लिए सपोर्ट से कहें - यह एक अकाउंट-लेवल सेटिंग है, कुछ ऐसा नहीं जो आपने गलत कॉन्फ़िगर किया हो।

#सैंडबॉक्स क्या बदलता है, और क्या नहीं

SandboxLive
एक्सटर्नल प्रोवाइडरसभी मॉक - किसी थर्ड पार्टी को कभी कॉल नहीं किया जाताअसली
बिलिंगकभी बिल नहीं होती; बैलेंस चेक स्किप हो जाता हैहर पूरे हुए फीचर पर बिल होती है
सेशन बनाने की लिमिटप्रति application, 24 घंटे में 500आपका बैलेंस
वेबहुक पेलोड"environment": "sandbox""environment": "live"
निकाला गया डेटा और स्टेटसआपके चुने गए सिनेरियो से सिमुलेटेडअसली कैप्चर से निकाला गया
कैप्चर किया गया मीडियाअसल में स्टोर होता है, बिल्कुल live सेशन की तरहस्टोर होता है
Important

Sandbox भी वही मीडिया स्टोर करता है जो वह कैप्चर करता है - डॉक्यूमेंट, सेल्फ़ी, लाइवनेस वीडियो, प्रूफ़-ऑफ़-एड्रेस फ़ाइलें - बिल्कुल एक live सेशन की तरह। परिणाम सिमुलेटेड होता है, लेकिन अपलोड असली होता है, इसलिए असली आइडेंटिटी डॉक्यूमेंट या असली पर्सनल जानकारी की बजाय फ्लो में दिए गए सैंपल डॉक्यूमेंट और टेस्ट डेटा इस्तेमाल करें।

क्योंकि परिणाम कभी भी पिक्सेल पर निर्भर नहीं करते, जानबूझकर ली गई एक खराब फ़ोटो भी sandbox में डिक्लाइन नहीं देगी। सिनेरियो ही तय करता है।

#परिणाम चुनना

सेशन बनाते समय sandbox_scenario के तौर पर एक सिनेरियो स्लग पास करें, या टेस्टर को खुद चुनने दें: होस्टेड फ्लो में sandbox सेशन कैप्चर शुरू होने से पहले एक इन-कार्ड scenario picker दिखाते हैं, साथ ही अपलोड कंपोनेंट के नीचे सैंपल डॉक्यूमेंट की एक पट्टी और एक स्थायी "test data only" बैनर भी।

सिनेरियो वे सभी परिणाम कवर करते हैं जिनके खिलाफ़ आपको असल में बनाना होता है:

क्या टेस्ट करना हैसिनेरियो
सब कुछ अप्रूव होapprove
एक्सपायर्ड डॉक्यूमेंटdecline_document_expired
न पढ़ा जा सकने वाला डॉक्यूमेंटdecline_could_not_recognize_document
MRZ चेकसम फेलियरdecline_mrz_validation
न्यूनतम उम्र से कमdecline_minimum_age
फेस मैच बहुत कमdecline_face_match_low_similarity
लाइवनेस पर प्रेजेंटेशन अटैकdecline_liveness_attack
AML सैंक्शन / PEP हिटdecline_aml_hit
ब्लॉक किया गया IP एड्रेसdecline_ip_blocklist
प्रूफ़ ऑफ़ एड्रेस पर एड्रेस मिसमैचdecline_poa_address_mismatch
NFC चिप इंटीग्रिटी फेल हुईdecline_nfc_chip_not_verified
डेटाबेस वैलिडेशन में कुछ नहीं मिलाdecline_database_no_match
मैनुअल रिव्यू चाहिए (AML)review_aml_possible_match
मैनुअल रिव्यू चाहिए (बॉर्डरलाइन फेस मैच)review_face_match_borderline
मैनुअल रिव्यू चाहिए (आंशिक एड्रेस मैच)review_poa_partial_match
KYB रजिस्ट्री मिसमैचdecline_kyb_registry_mismatch

review_* सिनेरियो इसलिए हैं ताकि आप बिना किसी डिक्लाइन-लेवल इनपुट के, पूरे मैनुअल-रिव्यू पाथ को आज़मा सकें - कंसोल की रिव्यू क्यू, In Review वेबहुक, किसी रिव्यूअर का अप्रूव करना या रीसबमिशन मांगना।

Tip

सिनेरियो और मैजिक वैल्यू की लाइव कैटलॉग खुद API पर GET /v1/sandbox/scenarios/ से मिलती है। अगर यहां दिया गया कोई स्लग कभी पुराना लगे, तो एंडपॉइंट पर भरोसा करें। पूरा रेफ़रेंस: sandbox testing

#अपने कोड में दोनों को अलग पहचानना

हर वेबहुक एक environment फ़ील्ड लेकर आता है - "sandbox" या "live"। key से एनवायरनमेंट का अंदाज़ा लगाने की बजाय इस पर ब्रांच करें, और आप कभी किसी टेस्ट सेशन को असली कस्टमर नहीं समझेंगे।

#सैंडबॉक्स क्या नहीं करेगा

  • यह किसी असली कंपनी के लिए असली रजिस्ट्री डेटा नहीं देगा। Sandbox KYB मॉक की गई रजिस्ट्री रिस्पॉन्स इस्तेमाल करता है।
  • यह कोई असली SMS या ईमेल नहीं भेजेगा। फ़ोन और ईमेल वेरिफिकेशन मॉक होते हैं, इसलिए आप असली मैसेज डिलीवरी की झलक पाने के लिए sandbox इस्तेमाल नहीं कर सकते।
  • यह आपके फ्री मंथली अलाउंस इस्तेमाल नहीं करेगा - जिसका मतलब यह भी है कि एक sandbox रन आपको आपके बचे हुए फ्री चेक के बारे में कुछ नहीं बताता।

#अगर आपको असली टेस्ट वेरिफिकेशन चाहिए

कुछ चीज़ों के लिए असल में एक live कॉल ज़रूरी होती है - जैसे यह चेक करना कि किसी खास देश की डेटाबेस सर्विस आपके लिए प्रोविज़न हुई है या नहीं, या किसी खास कैरियर पर SMS डिलीवरी की पुष्टि करना। इसके लिए sandbox की बजाय live application पर छोटा टॉप-अप चाहिए होगा। इस पर खर्च करने से पहले सपोर्ट से पूछें, ताकि वे पहले यह पुष्टि कर सकें कि सर्विस आपके अकाउंट पर असल में ऑन है।