- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- UpiDetails
- DisburseFundsResult
- DisburseFundsResultCode
- RawResult
Avvia il trasferimento di denaro tra l'elaboratore dei pagamenti e l'account del cliente. La combinazione di requestId
nell'intestazione e paymentIntegratorAccountId
è la chiave di idempotenza e identifica in modo univoco questa transazione. Tutte le mutazioni di questa transazione completano il valore requestId
nel campo disburseFundsRequestId
.
Se l'endpoint rileva un errore durante l'elaborazione della richiesta, il corpo della risposta da questo endpoint deve essere di tipo
.ErrorResponse
Una richiesta di esempio ha il seguente aspetto:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "liUrreQY233839dfFFb24gaQM",
"requestTimestamp": "1502220434778"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"upiDetails": {
"vpa": "foo@icici"
},
"transactionDescription": "Google - Music",
"currencyCode": "INR",
"amount": "208000000"
}
Ecco un esempio di risposta:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA",
"disburseFundsResult": {
"disburseFundsResultCode": "SUCCESS"
}
}
Richiesta HTTP
POST https://www.integratorhost.example.com/v1/disburseFunds
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: questo è l'identificatore dell'account dell'integratore dei pagamenti che identifica i vincoli contrattuali relativi a questa transazione. |
transactionDescription |
REQUIRED: questa è la descrizione della transazione che può essere inserita nell'estratto conto del cliente. Localizzazione nella userLocale trovata in |
currencyCode |
OBBLIGATORIO: codice valuta ISO 4217 di tre lettere |
amount |
OBBLIGATORIO: l'importo dell'acquisto espresso in micro dell'unità di valuta. |
Campo di unione
|
|
upiDetails |
FACOLTATIVO: dettagli di pagamento specifici per gli strumenti UPI. |
Corpo della risposta
Oggetto della risposta per il metodo di erogazione dei fondi.
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. |
paymentIntegratorTransactionId |
REQUIRED: questo identificatore è specifico per l'integratore e viene generato da quest'ultimo. Si tratta dell'identificatore con cui l'integratore conosce la transazione. Per praticità, questo identificatore è incluso nei dettagli del versamento |
disburseFundsResult |
REQUIRED: il risultato della chiamata per l'erogazione dei fondi. |
UpiDetails
Dettagli sul conto UPI a cui effettuare l'erogazione.
Rappresentazione JSON |
---|
{ "vpa": string } |
Campi | |
---|---|
vpa |
OBBLIGATORIO: l'indirizzo virtuale per i pagamenti (VPA) dell'utente utilizzato per trasferire denaro tramite il protocollo UPI. ad esempio foo@icici. |
DisburseFundsResult
Informazioni sul risultato finale di un pagamento.
Rappresentazione JSON |
---|
{ "disburseFundsResultCode": enum ( |
Campi | |
---|---|
disburseFundsResultCode |
OBBLIGATORIO: codice risultato di questo pagamento. |
rawResult |
FACOLTATIVO: risultato non elaborato di questo pagamento. Utilizzato per fornire informazioni utili al motore dei rischi e all'analisi di Google. Nelle situazioni in cui la mappatura del codice viene rifiutata, a volte i dati vanno persi. L'integratore può scegliere di fornire a Google un codice non elaborato. Ad esempio, un gateway della carta di credito (l'integratore) può utilizzare questo campo per comunicare a Google l'esatto codice di rifiuto ricevuto dalla rete VISA. In questo caso, Questo valore è obbligatorio se |
Campo di unione
|
|
transactionMaxLimit |
FACOLTATIVO: se Questo importo è pari a micro dello stesso |
transactionMinLimit |
FACOLTATIVO: se Questo importo è pari a micro dello stesso |
DisburseFundsResultCode
Codici risultato per una chiamata di pagamento dei fondi.
Enum | |
---|---|
UNKNOWN_RESULT |
Non impostare mai questo valore predefinito. |
SUCCESS |
Erogazione eseguita correttamente. |
DISBURSEMENT_UNDER_TRANSACTION_LIMIT |
L'importo dell'esborso richiesto non soddisfa l'importo minimo per transazione dell'integratore. Se viene utilizzato questo codice, compila il campo transactionMinLimit con l'importo minimo della transazione ai fini dei messaggi per gli utenti. |
DISBURSEMENT_EXCEEDS_TRANSACTION_LIMIT |
L'importo del pagamento richiesto supera il limite massimo per transazione dell'integratore. Se viene utilizzato questo codice, compila il campo transactionMaxLimit con il limite di transazioni ai fini della messaggistica per gli utenti. |
ACCOUNT_CLOSED |
L'account dell'utente mantenuto presso l'integratore è stato chiuso. Questo valore restituito comporterà la chiusura dello strumento dell'utente con Google. L'utente dovrà aggiungere un nuovo strumento. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
L'account dell'utente con l'integratore è stato chiuso, sospetta violazione dell'account. Questo valore restituito comporterà la chiusura dello strumento dell'utente con Google. L'utente dovrà aggiungere un nuovo strumento. |
ACCOUNT_CLOSED_FRAUD |
L'account dell'utente mantenuto presso l'integratore è stato chiuso a causa di attività fraudolente. Questo valore restituito comporterà la chiusura dello strumento dell'utente con Google. L'utente dovrà aggiungere un nuovo strumento. |
ACCOUNT_ON_HOLD |
L'account dell'utente è sospeso. |
RawResult
Oggetto risultato non elaborato.
Rappresentazione JSON |
---|
{ "scope": string, "rawCode": string } |
Campi | |
---|---|
scope |
FACOLTATIVO: l'ambito di rawCode può essere vuoto. |
rawCode |
OBBLIGATORIO: codice non elaborato dall'integratore o dai sottosistemi al suo interno. |