Powiadom Google o wyniku zwrotu środków po wywołaniu metody refund.
Zwroty środków powinny być obsługiwane synchronicznie podczas wywołania metody refund, ale ta metoda zapewnia Google szybki sygnał zapasowy na wypadek niepowodzenia wywołania synchronicznego po wykonaniu działania, ale przed jego zwróceniem. Pozwoli to uniknąć opóźnienia związanego z zaplanowaniem przez Google ponownej próby w przyszłości.
Wartość refundResult jest idempotentna dla tego parametru refundRequestId, więc nie można jej zmienić przez kolejne wywołanie tej metody.
Jeśli podczas przetwarzania żądania punkt końcowy napotka błąd, odpowiedź z tego punktu końcowego będzie typu .ErrorResponse
Jeśli ta metoda nie zwraca kodu HTTP 200, odpowiedzi na to zapytanie mogą być puste. Treść odpowiedzi jest pusta w sytuacjach, gdy można wykorzystać pole z jasnym opisem, aby ułatwić osobie przeprowadzającej atak rozpoznanie identyfikatora konta integratora płatności innych integratorów. W takich sytuacjach, gdy klucz podpisywania nie pasuje, nie znaleziono identyfikatora integratora płatności lub klucz szyfrowania jest nieznany, ta metoda zwróci błąd HTTP 404 z pustą treścią. Jeśli podpis żądania można zweryfikować, dodatkowe informacje dotyczące błędu zostaną zwrócone w treści odpowiedzi.ErrorResponse
Przykładowe żądanie wygląda tak:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1481855928301"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"refundRequestId": "hH1T32PI86CpKwjuf6oD2r",
"paymentIntegratorRefundId": "invisi/Id::xx__1243",
"refundResult": "SUCCESS"
}
Przykładowa odpowiedź wygląda tak:
{
"responseHeader": {
"responseTimestamp": "1481855928376"
},
"result": "SUCCESS"
}
Żądanie HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/refundResultNotification/:PIAID
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: identyfikator konta integratora płatności, na którym dokonano zwrotu środków. |
refundRequestId |
WYMAGANE: unikalny identyfikator tego zwrotu środków, określony w polu |
refundResult |
WYMAGANE: wynik zwrotu. |
paymentIntegratorRefundId |
WYMAGANE: 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 |
Treść odpowiedzi
Obiekt odpowiedzi dla metody refundResultNotification.
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. |
result |
WYMAGANE: wynik tego wywołania. |
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 |
Zwrot środków nie powiódł się. Na transakcji nie pozostały żadne środki. 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. |
RefundResultNotificationResultCode
Kody wyników dla metody refundResultNotification.
| Wartości w polu enum | |
|---|---|
UNKNOWN_RESULT |
Nigdy nie ustawiaj tej wartości domyślnej. |
SUCCESS |
Powiadomienie o wyniku zwrotu środków zostało zrealizowane. |