वेब से जुड़ी समस्या हल करने की गाइड में, इन विषयों से जुड़ी समस्याओं और सवालों के बारे में बताया गया है.
- रजिस्ट्रेशन का ऐक्सेस
- merchantID
- गेटवे की वैधता
- ऑब्जेक्ट की वैधता
- सीधे तौर पर काम करने वाले कारोबारी या कंपनियां
- CardInfo
- OR_BIBED_15 गड़बड़ियां
रजिस्ट्रेशन और ऐक्सेस
इंटिग्रेशन के दौरान, आपको इनमें से कोई गड़बड़ी दिख सकती है. इस सूची में, इन गड़बड़ियों को ठीक करने के बारे में कुछ सलाह दी गई है.
- इस कारोबारी या कंपनी के लिए Google Pay की सुविधा चालू नहीं है
- Google Pay API को उन साइटों के लिए Google merchantId की ज़रूरत होती है जो
PRODUCTIONएनवायरमेंट के लिएPaymentsClientकॉन्फ़िगर करती हैं. GooglemerchantId, Google Pay और Wallet Console के ज़रिए एक या उससे ज़्यादा पूरी तरह से क्वालिफ़ाइड डोमेन से जुड़ा होता है. ज़्यादा जानकारी के लिए, दिखाई गई गड़बड़ी की जानकारी देखें. - इस कारोबारी या कंपनी ने Google Pay API का इस्तेमाल करने के लिए, रजिस्ट्रेशन की प्रोसेस पूरी नहीं की है. पुष्टि करने के लिए, कृपया कंसोल (https://pay.google.com/business/console) पर जाएं.
- आपने Google Pay API के लिए अपनी वेबसाइटों को रजिस्टर करने की प्रोसेस पूरी नहीं की है. समीक्षा Google Pay और Wallet Console का इस्तेमाल करके रजिस्टर करने के लिए, प्रोडक्शन ऐक्सेस का अनुरोध करें. साथ ही, Google Pay API का इस्तेमाल करने वाली अपनी वेबसाइट की समीक्षा का अनुरोध करें.
- इस कारोबारी या कंपनी की प्रोफ़ाइल के पास इस सुविधा का ऐक्सेस नहीं है
- Google ने आपकी वेबसाइट को Google Pay API इस्तेमाल करने के लिए कॉन्फ़िगर नहीं किया है. समीक्षा Google Pay और Wallet Console के ज़रिए, प्रोडक्शन ऐक्सेस का अनुरोध करें, ताकि आपकी वेबसाइट पर Google Pay API के इस्तेमाल की समीक्षा की जा सके.
- Google Pay API के इस इंटिग्रेशन को बंद कर दिया गया है. ज़्यादा जानकारी के लिए, कृपया हमसे संपर्क करें (https://developers.google.com/pay/api/faq#how-to-get-support).
- अपने Google खाते के लिए Google Pay API को फिर से चालू करने के लिए, हमसे संपर्क करें.
- इस एपीआई का इस्तेमाल करने के लिए, आपका डोमेन "example.com" रजिस्टर नहीं किया गया है
- जिस डोमेन पर आपका चेकआउट होस्ट किया गया है वह उस
merchantIdसे नहीं जुड़ा है जिसका इस्तेमाल किया जाता है. पक्का करें किmerchantIdपैरामीटर सही हो और आपका डोमेन, Google Pay और Wallet Console के ज़रिए रजिस्टर किया गया हो. - Google Pay API को सुरक्षित कॉन्टेक्स्ट में कॉल किया जाना चाहिए!
- Google Pay API का इस्तेमाल सिर्फ़ सुरक्षित कॉन्टेक्स्ट वाली वेबसाइटों पर किया जा सकता है. ज़्यादा जानकारी के लिए, सुरक्षित कॉन्टेक्स्ट देखें.
- इस कारोबारी या कंपनी की प्रोफ़ाइल के लिए कोई कुंजियां नहीं मिलीं
DIRECTtokenizationSpecificationtypeइंटिग्रेशन पूरा करने के लिए, आपको Google Pay और Wallet Console के ज़रिए, Google के साथ अपनी पब्लिक एन्क्रिप्शन कुंजी रजिस्टर करनी होगी.
merchantId
इंटिग्रेशन के दौरान, आपको merchantId से जुड़ी ये गड़बड़ियां दिख सकती हैं. इस सूची में, इन गड़बड़ियों को ठीक करने के बारे में कुछ सुझाव दिए गए हैं.
- merchantId सेट किया जाना चाहिए!
PaymentDataRequestमें मौजूदmerchantIdपैरामीटर की वैल्यू, Google Pay और Wallet Console में दी गई वैल्यू के बराबर होनी चाहिए.merchantIdपैरामीटर की ज़रूरत सिर्फ़ तब होती है, जबPRODUCTIONएनवायरमेंट के लिए कॉन्फ़िगर किए गएPaymentsClientका इस्तेमाल किया जाता है. Google Pay API का इस्तेमाल करने वाली अपनी वेबसाइट की समीक्षा का अनुरोध करने के लिए, हमारी इंटिग्रेशन चेकलिस्ट देखें. साथ ही, अपनाmerchantIdपाएं.- merchantId, स्ट्रिंग नहीं है
PaymentDataRequestमें मौजूदmerchantIdपैरामीटर हमेशा एक स्ट्रिंग होना चाहिए. एपीआई को कॉल करने से पहले, पक्का करें कि आपने जिसmerchantIdपैरामीटर का इस्तेमाल किया है वह स्ट्रिंग टाइप का हो.- merchantId रजिस्टर नहीं किया गया है.
PaymentDataRequestमें मौजूदmerchantIdपैरामीटर को Google Pay और Wallet Console के ज़रिए उपलब्ध कराया जाना चाहिए. ज़्यादा जानकारी के लिए, प्रोडक्शन ट्रैक के ऐक्सेस का अनुरोध करना लेख पढ़ें.
गेटवे की वैधता
इंटिग्रेशन के दौरान, आपको किसी समय गेटवे की वैधता से जुड़ी ये गड़बड़ियां दिख सकती हैं. इस सूची में, इन गड़बड़ियों को ठीक करने के बारे में कुछ सुझाव दिए गए हैं.
- अज्ञात गेटवे 'yourgateway'
- आपने
paymentMethodTokenizationParameters.parametersमें जिस गेटवे पैरामीटर को तय किया है वह फ़िलहाल Google के साथ काम नहीं करता. गेटवे के आइडेंटिफ़ायर और उससे जुड़े फ़ील्ड, जैसे किgatewayMerchantIdके बारे में ज़्यादा जानकारी पाने के लिए, अपने गेटवे से संपर्क करें. - गेटवे 'example' का इस्तेमाल प्रोडक्शन मोड में नहीं किया जा सकता
- गेटवे पैरामीटर की उदाहरण वैल्यू का इस्तेमाल सिर्फ़ टेस्टिंग के लिए किया जाता है. इसका इस्तेमाल,
PRODUCTIONएनवायरमेंट के लिए कॉन्फ़िगर किए गएPaymentsClientके साथ नहीं किया जा सकता. Google Pay API के साथ इस्तेमाल करने के लिए, आपको जिनPaymentMethodTokenizationSpecificationपैरामीटर की वैल्यू सेट करनी हैं उनके बारे में ज़्यादा जानकारी पाने के लिए, अपने गेटवे से संपर्क करें.
ऑब्जेक्ट की वैधता
इंटिग्रेशन के दौरान, आपको ऑब्जेक्ट की वैधता से जुड़ी ये गड़बड़ियां दिख सकती हैं. इस सूची में, इन गड़बड़ियों को ठीक करने के बारे में कुछ सुझाव दिए गए हैं.
- Google Pay का PaymentDataRequest, मान्य JSON नहीं है
loadPaymentDataको दिया गया पैरामीटर हमेशा एक मान्यPaymentDataRequestऑब्जेक्ट होना चाहिए.- transactionInfo को सेट किया जाना चाहिए!
PaymentDataRequestमें मौजूदtransactionInfoपैरामीटर हमेशा एक मान्यTransactionInfoऑब्जेक्ट होना चाहिए.
सीधे तौर पर विज्ञापन देने वाले कारोबारी या कंपनियां
इंटिग्रेशन के दौरान, आपको सीधे तौर पर कारोबारियों या कंपनियों से जुड़ी ये गड़बड़ियां दिख सकती हैं. इस सूची में, इन गड़बड़ियों को ठीक करने के बारे में कुछ सुझाव दिए गए हैं.
- हस्ताक्षर की पुष्टि करना
- गलत होने पर, आपको हस्ताक्षर की पुष्टि करने से जुड़ी गड़बड़ी दिख सकती है.
merchantIdTESTएनवायरमेंट में ऐसा तब हो सकता है, जब Tink paymentmethodtoken library का इस्तेमाल किया जाता है. इस समस्या से बचने के लिए, YOUR_MERCHANT_ID को12345678901234567890पर सेट करें. इसके लिए, - पर जाएं
.recipientId("merchant:YOUR_MERCHANT_ID")
- टोकन को डिक्रिप्ट नहीं किया जा सकता
- अगर टोकन को डिक्रिप्ट करने के लिए, Tink paymentmethodtoken library का इस्तेमाल किया जाता है, तो इन बातों का ध्यान रखें:
- पक्का करें कि Google Pay API के रिस्पॉन्स का एनवायरमेंट, Tink के paymentmethodtoken एनवायरमेंट से मेल खाता हो. ज़्यादा जानकारी के लिए, यहां दिया गया उदाहरण देखें:
- अगर Google Pay API से मिला जवाब एनवायरमेंट
TESTसे मिला है, तो Tink, डिक्रिप्ट करने के लिए टेस्ट एनवायरमेंट की ओर इशारा करता है. - Google Pay API से मिले रिस्पॉन्स को Tink को भेजने से पहले उसमें बदलाव न करें. पक्का करें कि आपने Google Pay API से मिले पूरे टोकन को पास किया हो. ज़्यादा जानकारी के लिए, यहां दिया गया नोट देखें:
- पुष्टि करें कि आपके पास वह निजी पासकोड है जो Google के साथ रजिस्टर की गई सार्वजनिक सुरक्षा कुंजी से जुड़ा है.
- Windows पर सार्वजनिक और निजी पासकोड का जोड़ा जनरेट करना
- अगर Windows का इस्तेमाल किया जा रहा है और आपको निजी और सार्वजनिक पासकोड का जोड़ा जनरेट करने के लिए OpenSSL का इस्तेमाल करें में बताए गए चरणों का पालन करना है, तो पक्का करें कि आपने अपनी मशीन पर Cygwin इंस्टॉल किया हो. Linux कमांड चलाने के लिए, इसकी ज़रूरत होती है.
गड़बड़ी वाले ऑब्जेक्ट
गड़बड़ी वाले ऑब्जेक्ट, ऐसे ऑब्जेक्ट होते हैं जिन्हें क्लाइंट JavaScript के किसी तरीके से अस्वीकार किए गए प्रॉमिस से वापस लाया जाता है.
- PaymentsError
- इस ऑब्जेक्ट में, क्लाइंट JavaScript के तरीकों से मिली गड़बड़ियों के बारे में जानकारी होती है. गड़बड़ियां उपयोगकर्ता को दिखने वाले डायलॉग में नहीं दिख सकती हैं.
| प्रॉपर्टी | टाइप | ब्यौरा |
|---|---|---|
statusCode |
स्ट्रिंग | गड़बड़ी के टाइप के बारे में बताने वाला छोटा कोड. |
statusMessage |
स्ट्रिंग | डेवलपर को दिखने वाला मैसेज, जिसमें गड़बड़ी के बारे में बताया गया हो. साथ ही, उसे ठीक करने के संभावित तरीके भी बताए गए हों. |
- आम तौर पर होने वाली गड़बड़ियां
- यह ऑब्जेक्ट, JavaScript के सभी तरीकों में होने वाली गड़बड़ियों को दिखाता है. गड़बड़ी के अन्य मैसेज देखने के लिए, डेवलपर कंसोल ज़रूर देखें.
- CardInfo सुविधा क्या है?
- Google Pay, खरीदारों को बताता है कि Google Pay पेमेंट बटन के पीछे एक कार्ड है. इससे कार्ड ब्रैंड नेटवर्क और कार्ड के आखिरी चार अंक दिखते हैं.
- मेरे इंटिग्रेशन में CardInfo सुविधा क्यों नहीं दिख रही है?
CardInfo सुविधा का इस्तेमाल करने के लिए, ये शर्तें पूरी करना ज़रूरी है:
- आपको
createButtonएपीआई लागू करना होगा. - आपको
ButtonOptions.buttonTypeकोbuy,longयाpayपर कॉन्फ़िगर करना होगा. - उपयोगकर्ता के पास पेमेंट का कोई तरीका उपलब्ध होना चाहिए. यह तरीका, आपके
CardParametersऑब्जेक्ट में तय किया गया हो.
- आपको
- Google Pay पेमेंट बटन हमेशा के लिए लोड क्यों होता रहता है?
onLoadइवेंट लिसनर न हटाएं.onLoadइवेंट लिसनर हटाने पर, Google Pay के पेमेंट बटन को लोड होने में बहुत समय लग सकता है.- Google Pay के पेमेंट बटन पर क्लिक करने के बाद, पेमेंट का प्रॉम्प्ट क्यों नहीं दिखता?
- इवेंट लिसनर कॉलबैक को
ButtonOptions.onClickइवेंट असाइन करें. - वेबव्यू के साथ काम करना
- Android और iOS के लिए दी गई गाइड का पालन करें, ताकि यह पक्का किया जा सके कि आपका इंटिग्रेशन, WebViews के साथ काम करता हो.
Cross-Origin-Opener-Policyएचटीटीपी रिस्पॉन्स हेडर- अगर
Cross-Origin-Opener-Policyएचटीटीपी रिस्पॉन्स हेडर कोsame-originपर सेट किया जाता है, तो ऐसा हो सकता है कि ब्राउज़र, उपयोगकर्ताओं को लेन-देन पूरा करने के लिए ज़रूरी पॉप-अप न दिखाए. इन समस्याओं को कम करने के लिए, हेडर की वैल्यू कोsame-origin-allow-popupsपर सेट करके देखें. - उपयोगकर्ताओं के क्लिक इवेंट और
loadPaymentData()को कॉल करने के बीच का समय -
अगर Google Pay बटन (या इसी तरह के चेकआउट बटन) पर क्लिक करने के बाद और
loadPaymentData()कॉल से पहले, कोई देरी होती है (उदाहरण:setTimeout(), अतिरिक्त नेटवर्क कॉल या इसी तरह का लंबे समय तक चलने वाला लॉजिक), तो इससे ब्राउज़र की पॉप-अप ब्लॉक करने की सुविधा ट्रिगर हो सकती है. हमारा सुझाव है कि उपयोगकर्ता के क्लिक करने औरloadPaymentData()कॉल के बीच कोई देरी न हो.
| स्थिति कोड | ब्यौरा |
|---|---|
BUYER_ACCOUNT_ERROR |
मौजूदा Google उपयोगकर्ता, पेमेंट की जानकारी नहीं दे सकता. |
DEVELOPER_ERROR |
पास किए गए पैरामीटर का फ़ॉर्मैट सही नहीं है. कॉन्फ़िगर किए गए सभी एनवायरमेंट के लिए, ब्राउज़र कंसोल में गड़बड़ी का मैसेज दिख सकता है. |
MERCHANT_ACCOUNT_ERROR |
Google Pay API को ऐक्सेस करने वाली साइट के पास ज़रूरी अनुमति नहीं है. ऐसा गलत कॉन्फ़िगरेशन या अनुरोध में कारोबारी का गलत आईडी सेट होने की वजह से हो सकता है. ज़्यादा जानकारी के लिए, |
INTERNAL_ERROR |
सर्वर की सामान्य गड़बड़ी. |
CardInfo
OR_BIBED_15 गड़बड़ियां
इंटिग्रेशन के दौरान, आपको किसी समय OR_BIBED_15 गड़बड़ी का सामना करना पड़ सकता है. इस सूची में, इस गड़बड़ी के होने पर समस्या हल करने से जुड़े कुछ सुझाव दिए गए हैं.