بخشی از یا کل تراکنش آغاز شده از طریق 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"
}
درخواست HTTP
POST https://www.integratorhost.example.com/v1/refund
درخواست بدن
بدنه درخواست حاوی داده هایی با ساختار زیر است:
نمایندگی JSON |
---|
{
"requestHeader": {
object ( |
زمینه های | |
---|---|
requestHeader | مورد نیاز : هدر مشترک برای همه درخواست ها. |
paymentIntegratorAccountId | مورد نیاز : این شناسه حساب یکپارچهکننده پرداخت است که محدودیتهای قراردادی پیرامون این تراکنش را تعریف میکند. |
captureRequestId | مورد نیاز : یک شناسه منحصر به فرد برای این تراکنش. این |
currencyCode | مورد نیاز : کد ارز 3 حرفی ISO 4217 |
refundAmount | الزامی : مبلغ بازپرداخت، عدد مثبت میکرو واحد ارز. |
بدن پاسخگو
شی پاسخ برای روش بازپرداخت.
در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:
نمایندگی JSON |
---|
{ "responseHeader": { object ( |
زمینه های | |
---|---|
responseHeader | مورد نیاز : هدر مشترک برای همه پاسخ ها. |
paymentIntegratorRefundId | اختیاری : این شناسه مخصوص یکپارچه ساز است و توسط یکپارچه ساز تولید می شود. این شناسهای است که ادغامکننده این بازپرداخت را با آن میداند. برای راحتی، این شناسه در جزئیات حواله گنجانده شده است |
result | الزامی : نتیجه این بازپرداخت. |
rawResult | اختیاری : نتیجه خام این بازپرداخت. برای کمک به اطلاع رسانی به موتور ریسک و تجزیه و تحلیل Google استفاده می شود. در موقعیتهای نقشهبرداری کد کاهشی، دادهها گاهی از دست میروند. یکپارچهساز میتواند انتخاب کند که یک کد خام به Google بدهد. به عنوان مثال، یک دروازه کارت اعتباری (یکپارچه ساز) ممکن است از این فیلد برای برقراری ارتباط با Google کد رد دقیق دریافت شده از شبکه VISA استفاده کند. در آن صورت، اگر |
RefundRefundCode
بازپرداخت کدهای نتیجه منحصر به فرد.
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 | بازپرداخت قابل پردازش نیست زیرا درخواست خارج از دوره مجاز بازپرداخت است. |