capture
तक किए गए लेन-देन के कुछ हिस्से या पूरे लेन-देन का रिफ़ंड करता है. हेडर और paymentIntegratorAccountId
में requestId
का कॉम्बिनेशन, बिना जानकारी दिए आसानी से इस्तेमाल किए जाने वाली कुंजी है. इससे इस ट्रांज़ैक्शन की खास तौर पर पहचान की जाती है.
अगर अनुरोध को प्रोसेस करते समय एंडपॉइंट को कोई गड़बड़ी मिलती है, तो इस एंडपॉइंट से मिलने वाले रिस्पॉन्स का मुख्य हिस्सा
का होना चाहिए.ErrorResponse
अनुरोध का एक उदाहरण यह दिखता है:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "liUrreQY233839dfFFb24gaQM",
"requestTimestamp": "1502220434778"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"captureRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"currencyCode": "INR",
"refundAmount": "208000000"
}
जवाब का एक उदाहरण ऐसा दिखता है:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "SUCCESS",
"paymentIntegratorRefundId": "cmVmdW5kIGlkZW50aWZpZXINCg"
}
एचटीटीपी अनुरोध
POST https://www.integratorhost.example.com/v1/refund
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में, यहां दिए गए स्ट्रक्चर का डेटा शामिल होता है:
JSON के काेड में दिखाना |
---|
{
"requestHeader": {
object ( |
फ़ील्ड | |
---|---|
requestHeader |
ज़रूरी: सभी अनुरोधों के लिए सामान्य हेडर. |
paymentIntegratorAccountId |
ज़रूरी: यह पेमेंट इंटिग्रेटर खाता आईडी है, जो इस लेन-देन से जुड़ी अनुबंध की सीमाओं के बारे में बताता है. |
captureRequestId |
ज़रूरी है: इस लेन-देन के लिए एक यूनीक आइडेंटिफ़ायर. यह |
currencyCode |
ज़रूरी: ISO 4217 वाला तीन अक्षर वाला मुद्रा कोड |
refundAmount |
ज़रूरी: रिफ़ंड की रकम, मुद्रा इकाई के माइक्रो की पॉज़िटिव संख्या. |
जवाब का मुख्य भाग
रिफ़ंड के तरीके के लिए रिस्पॉन्स ऑब्जेक्ट.
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
JSON के काेड में दिखाना |
---|
{ "responseHeader": { object ( |
फ़ील्ड | |
---|---|
responseHeader |
ज़रूरी: सभी जवाबों के लिए सामान्य हेडर. |
paymentIntegratorRefundId |
ज़रूरी नहीं: यह आइडेंटिफ़ायर खास तौर पर इंटिग्रेटर के लिए होता है और इसे इंटिग्रेटर से जनरेट किया जाता है. इस आइडेंटिफ़ायर के बारे में इंटिग्रेटर को पता होता है. सुविधा के लिए, भेजे जाने वाले पैसे की जानकारी में यह आइडेंटिफ़ायर शामिल होता है |
result |
ज़रूरी है: इस रिफ़ंड का नतीजा. |
rawResult |
ज़रूरी नहीं: इस रिफ़ंड का रॉ नतीजा. इस डेटा का इस्तेमाल, Google के रिस्क इंजन और आंकड़ों की जानकारी देने के लिए किया जाता है. कोड-मैपिंग अस्वीकार करने की स्थितियों में, कभी-कभी डेटा मिट जाता है. इंटिग्रेटर के पास Google को रॉ कोड देने का विकल्प होता है. उदाहरण के लिए, क्रेडिट कार्ड गेटवे (इंटीग्रेटर) इस फ़ील्ड का इस्तेमाल करके, Google को अस्वीकार करने के लिए उसी कोड का इस्तेमाल कर सकता है जो VISA नेटवर्क से मिला है. इस मामले में, अगर |
RefundResultCode
यूनीक नतीजे के कोड से रिफ़ंड मिलता है.
Enums | |
---|---|
UNKNOWN_RESULT |
कभी भी इस डिफ़ॉल्ट वैल्यू को सेट न करें! |
SUCCESS |
रिफ़ंड हो गया. |
NO_MONEY_LEFT_ON_TRANSACTION |
v1.refund अनुरोध विफल, इस लेन-देन में कोई धनराशि नहीं बची है. आम तौर पर, यह इंटिग्रेटर और 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 |
रिफ़ंड प्रोसेस नहीं किया जा सकता, क्योंकि आपका अनुरोध, रिफ़ंड की तय अवधि से बाहर का है. |