- एचटीटीपी अनुरोध
- अनुरोध का मुख्य हिस्सा
- जवाब का मुख्य हिस्सा
- UserInformation
- AssociateAccountResultCode
ग्राहक के खाते को पेमेंट प्रोसेस करने वाली कंपनी से, जोड़े जा रहे Google के तरीके से जोड़ता है.
खाता जोड़ने की प्रोसेस तब होती है, जब इंटिग्रेटर की ओर से उपयोगकर्ता की पुष्टि की जाती है. असोसिएशन, सर्वर-टू-सर्वर कॉल के ज़रिए होता है. इसमें, पुष्टि करने का फ़्लो (authenticationRequestId
), associationId
, और googlePaymentToken
(GPT) करने के लिए, requestId
शामिल होता है. पुष्टि करने के लिए, पेमेंट प्रोसेस करने वाली कंपनी को ग्राहक के खाते से associationId
और googlePaymentToken
को जोड़ना चाहिए. जीपीटी का इस्तेमाल पैसे चुकाने के लिए किया जाता है. दोबारा पुष्टि करने के दौरान, associationId
का इस्तेमाल करके पुष्टि करने के लिए खाते की पहचान की जाती है.
अगर Google ऐसा associationId
या googlePaymentToken
भेजता है जिसे इंटिग्रेटर ने किसी दूसरे असोसिएशन के दौरान पहले ही देख लिया है, तो इससे गड़बड़ी होती है.
अगर अनुरोध को प्रोसेस करते समय एंडपॉइंट को कोई गड़बड़ी मिलती है, तो इस एंडपॉइंट से मिलने वाले रिस्पॉन्स का मुख्य हिस्सा
का होना चाहिए.ErrorResponse
अनुरोध का एक उदाहरण यह दिखता है:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "cmVxdWVzdDE",
"requestTimestamp": "1481899949606"
},
"googlePaymentToken": "ZXhhbXBsZSB1bmlxdWUgcGF5bWVudCB0b2tlbiB2YWx1ZQ__",
"authenticationRequestId": "bnAxdWTydDX==",
"associationId": "LmddbXBsZSByZWZlcmVuY2UgdG9rZW4gdmFsdWU_",
"provideUserInformation": true
}
जवाब का एक उदाहरण ऐसा दिखता है:
{
"responseHeader": {
"responseTimestamp": "1481899949611"
},
"paymentIntegratorAssociateAccountId": "xx77df88934hfd",
"accountId": "1234-5678-91",
"accountNickname": "***-91",
"tokenExpirationTime": "0",
"userInformation": {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"result": "SUCCESS"
}
एचटीटीपी अनुरोध
POST https://www.integratorhost.example.com/v1/associateAccount
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में, यहां दिए गए स्ट्रक्चर का डेटा शामिल होता है:
JSON के काेड में दिखाना |
---|
{ "requestHeader": { object ( |
फ़ील्ड | |
---|---|
requestHeader |
ज़रूरी: सभी अनुरोधों के लिए सामान्य हेडर. |
provideUserInformation |
ज़रूरी: अगर हम चाहते हैं कि इंटिग्रेटर इस खाते से जुड़ा पता दे, तो वैल्यू सही होगी. |
googlePaymentToken |
ज़रूरी: वह टोकन जिसका इस्तेमाल Google, पेमेंट प्रोसेस करने वाली कंपनी के साथ खरीदारी शुरू करने के लिए करेगा. यह एक स्ट्रिंग होती है, जिसमें ज़्यादा से ज़्यादा 100 वर्ण होते हैं. |
associationId |
ज़रूरी है: इस असोसिएशन का आइडेंटिफ़ायर. इस आइडेंटिफ़ायर को Google ने बनाया है. इसे दोबारा पुष्टि करने के फ़्लो के दौरान भेजा जाता है, ताकि यह पता लगाया जा सके कि किस खाते की पुष्टि की जानी चाहिए. यह एक स्ट्रिंग होती है, जिसमें ज़्यादा से ज़्यादा 100 वर्ण होते हैं. |
यूनियन फ़ील्ड
|
|
authenticationRequestId |
ज़रूरी नहीं: इस कॉल से पहले, पुष्टि करने के अनुरोध का |
otpVerification |
ज़रूरी नहीं: |
जवाब का मुख्य भाग
असोसिएट खाता तरीके के लिए रिस्पॉन्स ऑब्जेक्ट.
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
JSON के काेड में दिखाना |
---|
{ "responseHeader": { object ( |
फ़ील्ड | |
---|---|
responseHeader |
ज़रूरी: सभी जवाबों के लिए सामान्य हेडर. |
paymentIntegratorAssociateAccountId |
ज़रूरी: यह आइडेंटिफ़ायर खास तौर पर इंटिग्रेटर के लिए होता है और इसे इंटिग्रेटर से जनरेट किया जाता है. इसका इस्तेमाल सिर्फ़ डीबग करने के लिए किया जाता है, ताकि इस कॉल की पहचान की जा सके. यह वह आइडेंटिफ़ायर है जिसके ज़रिए इंटिग्रेटर को इस कॉल के बारे में पता चलता है. |
tokenExpirationTime |
ज़रूरी नहीं: टोकन की समयसीमा खत्म होने के बाद, epoch के बाद मिलीसेकंड. |
accountId |
ज़रूरी: वह खाता आईडी जो उपयोगकर्ता के पास इंटिग्रेटर के पास है. इसका इस्तेमाल Google के जोखिम और खाते के दोबारा इस्तेमाल को समझने के लिए किया जाता है. साथ ही, इसका इस्तेमाल Google के ग्राहक ऑपरेशन एजेंट को समझने के लिए भी किया जाता है, ताकि ग्राहकों को समस्याओं का पता लगाने में मदद मिल सके. यह आइडेंटिफ़ायर ऐसा होना चाहिए जिसे उपयोगकर्ता आसानी से पहचान सके. उदाहरण के लिए, उपयोगकर्ता को यह आईडी पता है, क्योंकि यह उनके स्टेटमेंट में दिखता है या वेबसाइट पर खाते में लॉग इन करने के बाद दिखता है. खाते की अवधि के दौरान यह वैल्यू नहीं बदली जा सकती. |
userMessage |
अस्वीकार किया गया: अगर नतीजा |
userInformation |
ज़रूरी: उपयोगकर्ता की वह जानकारी जो इंटिग्रेटर को पता है और जो इस ग्राहक के बारे में Google के साथ शेयर करेगा. इसका इस्तेमाल जोखिम की जानकारी और पते की प्री-पॉप्युलेशन के लिए किया जाता है. |
result |
ज़रूरी: इस असोसिएशन का नतीजा. |
यूनियन फ़ील्ड
|
|
accountNickname |
ज़रूरी नहीं: वह स्ट्रिंग जिससे उपयोगकर्ता को इस खाते के बारे में पता हो, ताकि उसे दिखाया जा सके. यह खाते के निकनेम का सफ़िक्स है. उदाहरण के लिए, किसी फ़ोन नंबर के आखिरी चार अंक. Google यूज़र इंटरफ़ेस में यह जानकारी देगा कि यह सिर्फ़ निकनेम का सफ़िक्स है. यह वैल्यू, यूज़र इंटरफ़ेस (यूआई) में परचेज़ फ़्लो जैसे यूज़र इंटरफ़ेस (यूआई) में दिखेगी. इससे, उपयोगकर्ता को पेमेंट के तरीकों के बीच अंतर करने में मदद मिलेगी. |
fullAccountNickname |
ज़रूरी नहीं: वह स्ट्रिंग जिससे उपयोगकर्ता को इस खाते के बारे में पता हो, ताकि उसे दिखाया जा सके. यह वैल्यू, यूज़र इंटरफ़ेस (यूआई) में परचेज़ फ़्लो जैसे यूज़र इंटरफ़ेस (यूआई) में दिखेगी. इससे, उपयोगकर्ता को पेमेंट के तरीकों के बीच अंतर करने में मदद मिलेगी. |
UserInformation
किसी उपयोगकर्ता के बारे में जानकारी देने वाले स्ट्रक्चर.
JSON के काेड में दिखाना |
---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string, "phone": string, "emailAddress": string } |
फ़ील्ड | |
---|---|
name |
ज़रूरी नहीं: ग्राहक का पूरा नाम. |
addressLine[] |
ज़रूरी नहीं: इसमें पते का ऐसा टेक्स्ट शामिल है जिसे स्ट्रक्चर नहीं किया गया है. |
localityName |
ज़रूरी नहीं: यह शब्द अधूरा है, लेकिन आम तौर पर यह किसी पते के शहर/कस्बे वाले हिस्से के बारे में बताता है. दुनिया के उन क्षेत्रों के लिए, जहां क्षेत्र अच्छी तरह से परिभाषित नहीं हैं या इस संरचना में अच्छी तरह से फ़िट नहीं होते हैं (उदाहरण के लिए, जापान और चीन), localityName को खाली छोड़ दें और addressLine का इस्तेमाल करें. उदाहरण: यूएस शहर, आईटी कम्यून, यूके पोस्ट टाउन. |
administrativeAreaName |
ज़रूरी नहीं: इस देश का टॉप-लेवल एडमिन सबडिविज़न" उदाहरण: अमेरिका का राज्य, आईटी क्षेत्र, सीएन प्रांत, और जापान का प्रांत." |
postalCodeNumber |
ज़रूरी नहीं: नाम के बावजूद, postalCodeNumber की वैल्यू में अक्सर अक्षर और अंक शामिल किए जाते हैं. उदाहरण: "94043", "SW1W", "SW1W 9TQ". |
countryCode |
ज़रूरी नहीं: ग्राहक के पते का देश कोड, ISO-3166-1 Alpha-2 होना चाहिए. |
phone |
ज़रूरी नहीं: ग्राहक का फ़ोन नंबर. |
emailAddress |
ज़रूरी नहीं: ग्राहक का ईमेल पता. |
AssociateAccountResultCode
असोसिएट खाते के लिए नतीजे के कोड.
Enums | |
---|---|
UNKNOWN_RESULT |
कभी भी इस डिफ़ॉल्ट वैल्यू को सेट न करें! |
SUCCESS |
असोसिएशन कर दिया गया है. |
USER_AUTHENTICATION_FAILED |
खाते की पुष्टि करने वाला बंडल वापस आ गया है, लेकिन उपयोगकर्ता की पुष्टि नहीं हो सकी. |
NOT_ELIGIBLE |
उपयोगकर्ता का खाता इस सेवा के लिए ज़रूरी शर्तें पूरी नहीं करता. |
OTP_NOT_MATCHED |
ओटीपी मेल नहीं खाता. यह इंटिग्रेटर ने भेजा है. |
OTP_ALREADY_USED |
ओटीपी पहले ही इस्तेमाल कर लिया गया है. |
OTP_LIMIT_REACHED |
उपयोगकर्ता ने बहुत ज़्यादा ओटीपी के लिए अनुरोध किया है या पुष्टि करने की कोशिश की है. |
OTP_EXPIRED |
ओटीपी की समयसीमा खत्म हो गई है. |