Zwraca część lub całość transakcji zainicjowanej za pomocą capture
. Połączenie elementu requestId
w nagłówku i elementu paymentIntegratorAccountId
to klucz idempotentności, który jednoznacznie identyfikuje tę transakcję.
Jeśli podczas przetwarzania żądania punkt końcowy napotka błąd, treść odpowiedzi z 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ź wygląda tak:
{
"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 |
WYMAGANE: wspólny nagłówek dla wszystkich żądań. |
paymentIntegratorAccountId |
WYMAGANE: jest to identyfikator konta integratora płatności, który określa ograniczenia umowne dotyczące tej transakcji. |
captureRequestId |
WYMAGANE: unikalny identyfikator transakcji. To jest |
currencyCode |
WYMAGANE: trzyliterowy kod waluty w standardzie ISO 4217. |
refundAmount |
WYMAGANE: kwota zwrotu środków, dodatnia liczba mikro jednostki waluty. |
Treść odpowiedzi
Obiekt odpowiedzi dla 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 |
OPCJONALNY: ten identyfikator jest powiązany z integratorem i jest przez niego generowany. Jest to identyfikator, pod którym integrator zna dany zwrot. Dla wygody ten identyfikator jest podany w szczegółach płatności |
result |
WYMAGANE: wynik zwrotu. |
rawResult |
OPCJONALNY: nieprzetworzony wynik zwrotu środków. Dane są używane do przekazywania informacji do programu wykrywającego zagrożenia Google i analiz. W przypadku mapowania kodu odrzucenia czasami dochodzi do utraty danych. Integrator może przekazać Google nieprzetworzony kod. Brama karty kredytowej (integrator) może na przykład użyć tego pola, by przekazać Google dokładny kod odrzucenia otrzymany z sieci VISA. W tym przypadku Ta wartość jest wymagana, jeśli |
RefundResultCode
Zwrot środków za unikalne kody wyników.
Wartości w polu enum | |
---|---|
UNKNOWN_RESULT |
Nigdy nie ustawiaj tej wartości domyślnej. |
SUCCESS |
Zwrot środków został zrealizowany. |
NO_MONEY_LEFT_ON_TRANSACTION |
v1.Zwrot środków nie powiódł się, brak środków na transakcji. Zwykle jest to błąd komunikacji między integratorem a Google. Nie należy prosić o zwrot środków w wysokości wyższej niż pierwotna cena. |
ACCOUNT_CLOSED |
Konto powiązane z integratorem zostało zamknięte. Zwrócenie tej wartości spowoduje zamknięcie instrumentu użytkownika przez Google. Użytkownik będzie musiał dodać nowy instrument, wykonując ponownie proces tworzenia powiązania. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Konto użytkownika u integratora zostało zamknięte. Istnieje podejrzenie przejęcia konta. Zwrócenie tej wartości spowoduje zamknięcie instrumentu użytkownika przez Google. Użytkownik będzie musiał dodać nowy instrument, wykonując ponownie proces tworzenia powiązania. |
ACCOUNT_CLOSED_FRAUD |
Konto użytkownika powiązane z integratorem zostało zamknięte z powodu oszustwa. Zwrócenie tej wartości spowoduje zamknięcie instrumentu użytkownika przez Google. Użytkownik będzie musiał dodać nowy instrument, wykonując ponownie proces tworzenia powiązania. |
ACCOUNT_ON_HOLD |
Konto użytkownika jest obecnie zawieszone i nie może przyjąć zwrotu środków, ale może je później zaakceptować na jego koncie. W przyszłości Google może poprosić o kolejny zwrot środków, ale zrobi to za pomocą nowego konta requestId , dlatego należy uznać tę prośbę za zakończoną. |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
W tej chwili nie można przetworzyć zwrotu środków, ponieważ saldo użytkownika spowodowałoby przekroczenie maksymalnej dozwolonej kwoty. W przyszłości Google może poprosić o kolejny zwrot środków, ale zrobi to za pomocą nowego konta requestId , dlatego należy uznać tę prośbę za zakończoną. |
REFUND_WINDOW_EXCEEDED |
Nie można przetworzyć zwrotu środków, ponieważ prośba wygasła po dozwolonym okresie zwrotu. |