Zwraca część lub całość transakcji zainicjowanej za pomocą capture
. Kombinacja zmiennej requestId
w nagłówku z paymentIntegratorAccountId
to klucz idempotentności, który jednoznacznie identyfikuje tę transakcję.
Jeśli podczas przetwarzania żądania punkt końcowy napotka błąd, treść odpowiedzi tego punktu końcowego powinna być typu
.ErrorResponse
Przykładowe żądanie wygląda tak:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "liUrreQY233839dfFFb24gaQM",
"requestTimestamp": "1502220434778"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"captureRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"currencyCode": "INR",
"refundAmount": "208000000"
}
Przykładowa odpowiedź:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "SUCCESS",
"paymentIntegratorRefundId": "cmVmdW5kIGlkZW50aWZpZXINCg"
}
Żądanie HTTP
POST https://www.integratorhost.example.com/v1/refund
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{
"requestHeader": {
object ( |
Pola | |
---|---|
requestHeader |
REQUIRED: wspólny nagłówek dla wszystkich żądań, |
paymentIntegratorAccountId |
WYMAGANE: jest to identyfikator konta integratora płatności, który określa ograniczenia umowne związane z tą transakcją. |
captureRequestId |
WYMAGANE: unikalny identyfikator tej transakcji. To jest |
currencyCode |
WYMAGANE: trzyliterowy kod waluty w standardzie ISO 4217 |
refundAmount |
WYMAGANE: kwota zwrotu, dodatnia liczba micros jednostki waluty. |
Treść odpowiedzi
Obiekt odpowiedzi na potrzeby metody zwrotu środków.
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{ "responseHeader": { object ( |
Pola | |
---|---|
responseHeader |
WYMAGANE: wspólny nagłówek wszystkich odpowiedzi. |
paymentIntegratorRefundId |
OPTIONAL: identyfikator jest specyficzny dla integratora i jest generowany przez integratora. Integrator zna ten zwrot środków. Dla wygody podajemy ten identyfikator w szczegółach przelewu. |
result |
WYMAGANE: zwrot środków. |
rawResult |
OPTIONAL: nieprzetworzony wynik zwrotu środków. Dane służą do opracowywania silnika Google Analytics do analizy ryzyka. W przypadku mapowania kodu odrzucenia czasami dochodzi do utraty danych. Integrator może podać nieprzetworzony kod. Brama karty kredytowej (integrator) może na przykład użyć tego pola, by przekazać Google dokładny kod odrzucenia otrzymany od sieci VISA. W tym przypadku Ta wartość jest wymagana, jeśli |
Kod zwrotu środków
Unikalny kod zapewnia zwrot środków.
Wartości w polu enum | |
---|---|
UNKNOWN_RESULT |
Nie ustawiaj nigdy tej wartości domyślnej! |
SUCCESS |
Zwrot środków został zrealizowany. |
NO_MONEY_LEFT_ON_TRANSACTION |
Nie udało się dokonać transakcji w wersji v1.refund. Nie masz żadnych środków na transakcji. Zwykle oznacza to błąd między integratorem a Google. Google nie powinno prosić o zwrot środków w wysokości wyższej niż pierwotna. |
ACCOUNT_CLOSED |
Konto zamknięte z integratorem zostało zamknięte. Zwracanie tej wartości spowoduje zamknięcie instrumentu użytkownika w Google. Użytkownik będzie musiał dodać nowy instrument, przechodząc proces tworzenia powiązania. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Konto użytkownika u integratora zostało zamknięte, co do których zachodzi podejrzenie, że konto zostanie przejęte. Zwracanie tej wartości spowoduje zamknięcie instrumentu użytkownika w Google. Użytkownik będzie musiał dodać nowy instrument, przechodząc proces tworzenia powiązania. |
ACCOUNT_CLOSED_FRAUD |
Konto użytkownika objęte integratorem zostało zamknięte z powodu oszustwa. Zwracanie tej wartości spowoduje zamknięcie instrumentu użytkownika w Google. Użytkownik będzie musiał dodać nowy instrument, przechodząc proces tworzenia powiązania. |
ACCOUNT_ON_HOLD |
Konto użytkownika jest obecnie wstrzymane i nie może zaakceptować zwrotu środków, ale konto użytkownika może później zaakceptować zwrot. W przyszłości możemy poprosić o kolejny zwrot środków, ale na nowym koncie – requestId , więc Twoje zgłoszenie zostanie uznane za zrealizowane. |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
W tej chwili nie możemy przetworzyć zwrotu środków, ponieważ spowodowałoby to, że saldo użytkownika przekroczyło maksymalną dozwoloną kwotę. W przyszłości możemy poprosić o kolejny zwrot środków, ale na nowym koncie – requestId , więc Twoje zgłoszenie zostanie uznane za zrealizowane. |
REFUND_WINDOW_EXCEEDED |
Nie można przetworzyć zwrotu środków, ponieważ prośba wykracza poza dozwolony okres zwrotu. |