- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- RefundResultCode
- RefundResultNotificationResultCode
Comunica a Google l'esito di un rimborso dopo aver effettuato una chiamata al metodo refund.
I rimborsi devono essere gestiti in modo sincrono durante la chiamata al metodo refund, ma questo metodo fornisce a Google un indicatore di backup rapido nel caso in cui la chiamata sincrona non vada a buon fine dopo l'esecuzione dell'azione, ma prima che possa restituire un risultato. In questo modo si evita il ritardo introdotto dalla pianificazione di un nuovo tentativo da parte di Google.
Il valore refundResult è idempotente per questo refundRequestId, quindi non può essere modificato da una successiva chiamata a questo metodo.
Se l'endpoint rileva un errore durante l'elaborazione della richiesta, la risposta da questo endpoint sarà di tipo .ErrorResponse
Le risposte a questa query potrebbero essere vuote se questo metodo non restituisce un HTTP 200. Il corpo della risposta è vuoto nelle situazioni in cui è possibile utilizzare un con una descrizione chiara per aiutare un utente malintenzionato a comprendere l'identificatore dell'account dell'integratore dei pagamenti di altri integratori. In queste situazioni, in cui la chiave di firma non corrisponde, l'identificatore dell'integratore dei pagamenti non è stato trovato o la chiave di crittografia era sconosciuta, questo metodo restituirà un errore HTTP 404 con un corpo vuoto. Se è possibile verificare la firma della richiesta, nel corpo della risposta verranno restituite ulteriori informazioni sull'errore.ErrorResponse
Ecco un esempio di richiesta:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1481855928301"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"refundRequestId": "hH1T32PI86CpKwjuf6oD2r",
"paymentIntegratorRefundId": "invisi/Id::xx__1243",
"refundResult": "SUCCESS"
}
Ecco un esempio di risposta:
{
"responseHeader": {
"responseTimestamp": "1481855928376"
},
"result": "SUCCESS"
}
Richiesta HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/refundResultNotification/:PIAID
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
| Rappresentazione JSON |
|---|
{ "requestHeader": { object ( |
| Campi | |
|---|---|
requestHeader |
REQUIRED: intestazione comune per tutte le richieste. |
paymentIntegratorAccountId |
REQUIRED: identificatore dell'account dell'integratore dei pagamenti su cui è stato effettuato il rimborso. |
refundRequestId |
OBBLIGATORIO: identificatore univoco per questo rimborso, stabilito dal campo |
refundResult |
REQUIRED: il risultato di questo rimborso. |
paymentIntegratorRefundId |
REQUIRED: questo identificatore è specifico per l'integratore e viene generato dall'integratore. Si tratta dell'identificatore con cui l'integratore conosce questo rimborso. Per praticità, questo identificatore è incluso nei dettagli del versamento |
Corpo della risposta
Oggetto di risposta per il metodo refundResultNotification.
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
| Rappresentazione JSON |
|---|
{ "responseHeader": { object ( |
| Campi | |
|---|---|
responseHeader |
REQUIRED: intestazione comune per tutte le risposte. |
result |
REQUIRED: il risultato della chiamata. |
RefundResultCode
I codici risultato univoci vengono rimborsati.
| Enum | |
|---|---|
UNKNOWN_RESULT |
Non impostare mai questo valore predefinito. |
SUCCESS |
Rimborso eseguito correttamente. |
NO_MONEY_LEFT_ON_TRANSACTION |
Rimborso non riuscito. Non sono rimasti fondi per la transazione. In genere si tratta di un bug tra l'integratore e Google. Google non deve chiedere il rimborso di un importo superiore a quello dell'acquisizione originale. |
ACCOUNT_CLOSED |
L'account presso l'integratore è stato chiuso. Se restituisci questo valore, lo strumento dell'utente verrà chiuso con Google. L'utente sarà costretto ad aggiungere un nuovo strumento ripetendo il flusso di associazione. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
L'account dell'utente con l'integratore è stato chiuso e si è verificata una presenza di presunte violazioni dell'account. Se restituisci questo valore, lo strumento dell'utente verrà chiuso con Google. L'utente sarà costretto ad aggiungere un nuovo strumento ripetendo il flusso di associazione. |
ACCOUNT_CLOSED_FRAUD |
L'account dell'utente presso l'integratore è stato chiuso a causa di attività fraudolente. Se restituisci questo valore, lo strumento dell'utente verrà chiuso con Google. L'utente sarà costretto ad aggiungere un nuovo strumento ripetendo il flusso di associazione. |
ACCOUNT_ON_HOLD |
L'account dell'utente è attualmente sospeso e non può accettare il rimborso, ma l'account dell'utente potrebbe essere in grado di accettare il rimborso in un secondo momento. Google potrebbe richiedere un altro rimborso in futuro, ma lo farà con un nuovo requestId, pertanto questa richiesta dovrebbe essere considerata completata. |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
Al momento non è possibile elaborare il rimborso perché così facendo il saldo dell'utente supererebbe l'importo massimo consentito. Google potrebbe richiedere un altro rimborso in futuro, ma lo farà con un nuovo requestId, pertanto questa richiesta dovrebbe essere considerata completata. |
REFUND_WINDOW_EXCEEDED |
Impossibile elaborare il rimborso perché la richiesta è al di fuori del periodo di rimborso consentito. |
RefundResultNotificationResultCode
Codici risultato per il metodo refundResultNotification.
| Enum | |
|---|---|
UNKNOWN_RESULT |
Non impostare mai questo valore predefinito. |
SUCCESS |
Notifica del risultato del rimborso riuscita. |