capture
के ज़रिए शुरू किए गए या पूरे लेन-देन का एक हिस्सा रिफ़ंड कर दिया जाता है. हेडर में requestId
और paymentIntegratorAccountId
का संयोजन idempotency कुंजी है, जो विशिष्ट रूप से इस लेन-देन की पहचान करता है.
अगर अनुरोध प्रोसेस करते समय एंडपॉइंट को गड़बड़ी मिलती है, तो इस एंडपॉइंट से रिस्पॉन्स का मुख्य भाग
होना चाहिए.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
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में, नीचे दिए गए स्ट्रक्चर का डेटा शामिल है:
जेएसओएन के काेड में दिखाना |
---|
{
"requestHeader": {
object ( |
फ़ील्ड | |
---|---|
requestHeader |
ज़रूरी: सभी अनुरोधों के लिए सामान्य हेडर. |
paymentIntegratorAccountId |
ज़रूरी है: यह लेन-देन से जुड़े समझौते के बारे में बताने वाला पेमेंट इंटिग्रेटर खाता आईडी होता है. |
captureRequestId |
ज़रूरी है: इस लेन-देन के लिए यूनीक आइडेंटिफ़ायर. यह |
currencyCode |
ज़रूरी है: ISO 4217 का तीन अक्षर वाला मुद्रा कोड |
refundAmount |
ज़रूरी है: रिफ़ंड की रकम. मुद्रा यूनिट में माइक्रो की पॉज़िटिव संख्या. |
जवाब का मुख्य भाग
रिफ़ंड के तरीके के लिए जवाब ऑब्जेक्ट.
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
जेएसओएन के काेड में दिखाना |
---|
{ "responseHeader": { object ( |
फ़ील्ड | |
---|---|
responseHeader |
ज़रूरी: सभी जवाबों के लिए सामान्य हेडर. |
paymentIntegratorRefundId |
ज़रूरी नहीं: यह आइडेंटिफ़ायर, सिर्फ़ इंटिग्रेटर के लिए है. इसे इंटिग्रेटर जनरेट करता है. यह आइडेंटिफ़ायर है जिससे इंटिग्रेटर को यह रिफ़ंड पता है. सुविधाजनक होने पर, इस आइडेंटिफ़ायर को पैसे चुकाने की जानकारी में शामिल किया जाता है |
result |
ज़रूरी: इस रिफ़ंड का नतीजा. |
rawResult |
ज़रूरी नहीं: इस रिफ़ंड का रॉ नतीजा. इस डेटा का इस्तेमाल, Google के जोखिम इंजन और आंकड़ों की जानकारी देने के लिए किया जाता है. कोड को मैप करने की स्थितियों में, डेटा कभी-कभी खो जाता है. इंटिग्रेटर, Google को एक रॉ कोड चुन सकता है. उदाहरण के लिए, क्रेडिट कार्ड गेटवे (इंटिग्रेटर) इस फ़ील्ड का इस्तेमाल, VISA नेटवर्क से मिले Google को पुष्टि करने के लिए, अस्वीकार किए जाने वाले कोड की सही जानकारी देने के लिए कर सकता है. इस मामले में, "Visa" होने पर अगर |
रिफ़ंड से जुड़ा कोड
यूनीक नतीजे वाले कोड का रिफ़ंड.
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 |
रिफ़ंड प्रोसेस नहीं किया जा सकता, क्योंकि अनुरोध की गई रिफ़ंड की अवधि खत्म हो चुकी है. |