Method: refundResultNotification

refund तरीके से कॉल करने के बाद, रिफ़ंड के नतीजे के बारे में Google को सूचना दें.

refund तरीके से किए गए कॉल के दौरान, रिफ़ंड को सिंक्रोनस तरीके से हैंडल किया जाना चाहिए. हालांकि, यह तरीका Google को तेज़ी से बैकअप सिग्नल देता है. ऐसा तब होता है, जब कार्रवाई करने के बाद, नतीजे देने से पहले सिंक्रोनस कॉल पूरा नहीं होता. इससे, Google की वजह से आने वाले समय के लिए, फिर से कोशिश करने के शेड्यूल में होने वाली देरी से बचा जा सकता है.

इस refundRequestId के लिए refundResult वैल्यू अलग-अलग है. इसलिए, इस तरीके को बाद में किए जाने वाले कॉल से, इसकी वैल्यू को बदला नहीं जा सकता.

अगर अनुरोध को प्रोसेस करते समय एंडपॉइंट को कोई गड़बड़ी मिलती है, तो इस एंडपॉइंट से मिलने वाला रिस्पॉन्स ErrorResponse का होगा.

अगर यह तरीका एचटीटीपी 200 नहीं दिखाता है, तो इस क्वेरी के रिस्पॉन्स खाली हो सकते हैं. जवाब का मुख्य हिस्सा उन स्थितियों में खाली होता है जिनमें साफ़ तौर पर जानकारी के साथ ErrorResponse का इस्तेमाल किया जा सकता है. इससे हमलावर को दूसरे इंटिग्रेटर के पेमेंट इंटिग्रेटर खाते के आइडेंटिफ़ायर को समझने में मदद मिलती है. इन स्थितियों में, जब या तो साइनिंग पासकोड मेल नहीं खाता, पेमेंट इंटिग्रेटर आइडेंटिफ़ायर नहीं मिला या एन्क्रिप्शन कुंजी की जानकारी नहीं थी. ऐसे में, यह तरीका खाली पेज के साथ एचटीटीपी 404 दिखाएगा. अगर अनुरोध के हस्ताक्षर की पुष्टि की जा सकती है, तो गड़बड़ी के बारे में ज़्यादा जानकारी जवाब के मुख्य हिस्से में दी जाएगी.

अनुरोध का एक उदाहरण यह दिखता है:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 1,
      "revision": 0
    },
    "requestId": "HsKv5pvtQKTtz7rdcw1YqE",
    "requestTimestamp": "1481855928301"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "refundRequestId": "hH1T32PI86CpKwjuf6oD2r",
  "paymentIntegratorRefundId": "invisi/Id::xx__1243",
  "refundResult": "SUCCESS"
}

जवाब का एक उदाहरण ऐसा दिखता है:


{
  "responseHeader": {
    "responseTimestamp": "1481855928376"
  },
  "result": "SUCCESS"
}

एचटीटीपी अनुरोध

POST https://vgw.googleapis.com/secure-serving/gsp/v1/refundResultNotification/:PIAID

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, यहां दिए गए स्ट्रक्चर का डेटा शामिल होता है:

JSON के काेड में दिखाना
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "refundRequestId": string,
  "refundResult": enum (RefundResultCode),
  "paymentIntegratorRefundId": string
}
फ़ील्ड
requestHeader

object (RequestHeader)

ज़रूरी: सभी अनुरोधों के लिए सामान्य हेडर.

paymentIntegratorAccountId

string

ज़रूरी है: पेमेंट इंटिग्रेटर खाते का आइडेंटिफ़ायर, जिस पर रिफ़ंड मिला है.

refundRequestId

string

ज़रूरी है: इस रिफ़ंड के लिए यूनीक आइडेंटिफ़ायर, जिसे refund तरीके को कॉल करने पर requestId फ़ील्ड की मदद से सेट किया जाता है.

refundResult

enum (RefundResultCode)

ज़रूरी है: इस रिफ़ंड का नतीजा.

paymentIntegratorRefundId

string

ज़रूरी: यह आइडेंटिफ़ायर खास तौर पर इंटिग्रेटर के लिए होता है और इसे इंटिग्रेटर से जनरेट किया जाता है. इस आइडेंटिफ़ायर के बारे में इंटिग्रेटर को पता होता है.

सुविधा के लिए, भेजे जाने वाले पैसे की जानकारी में यह आइडेंटिफ़ायर शामिल होता है

जवाब का मुख्य भाग

refundResultNotification तरीके के लिए रिस्पॉन्स ऑब्जेक्ट.

अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.

JSON के काेड में दिखाना
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "result": enum (RefundResultNotificationResultCode)
}
फ़ील्ड
responseHeader

object (ResponseHeader)

ज़रूरी: सभी जवाबों के लिए सामान्य हेडर.

result

enum (RefundResultNotificationResultCode)

ज़रूरी: इस कॉल का नतीजा.

RefundResultCode

यूनीक नतीजे के कोड से रिफ़ंड मिलता है.

Enums
UNKNOWN_RESULT कभी भी इस डिफ़ॉल्ट वैल्यू को सेट न करें!
SUCCESS रिफ़ंड हो गया.
NO_MONEY_LEFT_ON_TRANSACTION रिफ़ंड नहीं हो सका, लेन-देन में कोई रकम नहीं बची है. आम तौर पर, यह इंटिग्रेटर और Google के बीच की गड़बड़ी को दिखाता है. Google को मूल रूप से कैप्चर की गई मूल रकम से ज़्यादा रकम का रिफ़ंड नहीं मांगना चाहिए.
ACCOUNT_CLOSED

इंटिग्रेटर के पास मौजूद खाता बंद कर दिया गया है.

इस मान को लौटाने से उपयोगकर्ता का डिवाइस Google के साथ बंद हो जाएगा. फिर से असोसिएशन फ़्लो का इस्तेमाल करके, उपयोगकर्ता को एक नया इंस्ट्रुमेंट जोड़ना होगा.

ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER

इंटिग्रेटर के साथ काम करने वाले उपयोगकर्ता का खाता बंद कर दिया गया है. संदिग्ध खाते का अधिग्रहण कर लिया गया है.

इस मान को लौटाने से उपयोगकर्ता का डिवाइस Google के साथ बंद हो जाएगा. फिर से असोसिएशन फ़्लो का इस्तेमाल करके, उपयोगकर्ता को एक नया इंस्ट्रुमेंट जोड़ना होगा.

ACCOUNT_CLOSED_FRAUD

धोखाधड़ी के कारण, इंटिग्रेटर के पास मौजूद उपयोगकर्ता का खाता बंद कर दिया गया है.

इस मान को लौटाने से उपयोगकर्ता का डिवाइस Google के साथ बंद हो जाएगा. फिर से असोसिएशन फ़्लो का इस्तेमाल करके, उपयोगकर्ता को एक नया इंस्ट्रुमेंट जोड़ना होगा.

ACCOUNT_ON_HOLD फ़िलहाल, उपयोगकर्ता के खाते पर रोक लगी हुई है और वह रिफ़ंड स्वीकार नहीं कर सकता. हालांकि, उपयोगकर्ता का खाता बाद में रिफ़ंड स्वीकार कर सकता है. Google आने वाले समय में एक और रिफ़ंड का अनुरोध कर सकता है. हालांकि, नए requestId का इस्तेमाल करके ही रिफ़ंड के लिए अनुरोध किया जा सकता है. इसलिए, यह माना जाना चाहिए कि इस अनुरोध को पूरा किया जा चुका है.
REFUND_EXCEEDS_MAXIMUM_BALANCE रिफ़ंड इस समय प्रोसेस नहीं किया जा सकता, क्योंकि ऐसा करने से उपयोगकर्ता के बचे हुए पैसे तय की गई ज़्यादा से ज़्यादा रकम से ज़्यादा हो जाएंगे. Google आने वाले समय में एक और रिफ़ंड का अनुरोध कर सकता है. हालांकि, नए requestId का इस्तेमाल करके ही रिफ़ंड के लिए अनुरोध किया जा सकता है. इसलिए, यह माना जाना चाहिए कि इस अनुरोध को पूरा किया जा चुका है.
REFUND_WINDOW_EXCEEDED रिफ़ंड प्रोसेस नहीं किया जा सकता, क्योंकि आपका अनुरोध, रिफ़ंड की तय अवधि से बाहर का है.

RefundResultNotificationResultCode

refundResultNotification तरीके के लिए नतीजों के कोड.

Enums
UNKNOWN_RESULT कभी भी इस डिफ़ॉल्ट वैल्यू को सेट न करें!
SUCCESS रिफ़ंड के नतीजे की सूचना दी गई.