- 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
Ecco un esempio di richiesta:
{
"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: si tratta dell'identificatore dell'account dell'integratore pagamenti che identifica i vincoli contrattuali relativi a questa transazione. |
transactionDescription |
OBBLIGATORIO: questa è la descrizione della transazione che può essere inserita nell'estratto conto del cliente. Localizzato in userLocale trovato in |
currencyCode |
OBBLIGATORIO: codice valuta ISO 4217 di tre lettere |
amount |
OBBLIGATORIO: importo dell'acquisto, in micro dell'unità di valuta. |
Campo unione
|
|
upiDetails |
FACOLTATIVO: dettagli di pagamento specifici per gli strumenti UPI. |
Corpo della risposta
Oggetto risposta per il metodo di pagamento 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 dall'integratore. Si tratta dell'identificatore da cui l'integratore conosce questa transazione. Per praticità, questo identificatore è incluso nei dettagli del versamento |
disburseFundsResult |
REQUIRED: il risultato della chiamata di pagamento dei fondi. |
UpiDetails
Dettagli sull'account UPI a cui effettuare il pagamento.
| Rappresentazione JSON |
|---|
{ "vpa": string } |
| Campi | |
|---|---|
vpa |
OBBLIGATORIO: l'indirizzo per i pagamenti virtuali (VPA) dell'utente utilizzato per trasferire denaro con il protocollo UPI. Ad esempio foo@icici. |
DisburseFundsResult
Informazioni sul risultato finale di un pagamento.
| Rappresentazione JSON |
|---|
{ "disburseFundsResultCode": enum ( |
| Campi | |
|---|---|
disburseFundsResultCode |
REQUIRED: codice risultato di questo pagamento. |
rawResult |
FACOLTATIVO: risultato non elaborato di questo pagamento. Utilizzato per fornire informazioni al motore di analisi e al motore di gestione dei rischi di Google. Nei casi in cui la mappatura del codice viene rifiutata, i dati a volte 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, il Questo valore è obbligatorio se |
Campo unione
|
|
transactionMaxLimit |
FACOLTATIVO: se Questo importo è pari a micros dello stesso |
transactionMinLimit |
FACOLTATIVO: se Questo importo è pari a micros dello stesso |
DisburseFundsResultCode
Codici risultato per una chiamata di pagamento di fondi.
| Enum | |
|---|---|
UNKNOWN_RESULT |
Non impostare mai questo valore predefinito. |
SUCCESS |
Pagamento eseguito correttamente. |
DISBURSEMENT_UNDER_TRANSACTION_LIMIT |
L'importo di pagamento 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 della messaggistica per gli utenti. |
DISBURSEMENT_EXCEEDS_TRANSACTION_LIMIT |
L'importo di esborso richiesto supera il limite massimo per transazione dell'integratore. Se viene usato questo codice, compila il campo transactionMaxLimit con il limite di transazioni per la messaggistica per gli utenti. |
ACCOUNT_CLOSED |
L'account dell'utente presso l'integratore è stato chiuso. Questo valore restituito causerà la chiusura dello strumento dell'utente con Google. L'utente sarà costretto ad aggiungere un nuovo strumento. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
L'account dell'utente con l'integratore è stato chiuso e si è verificata una sospetta acquisizione dell'account. Questo valore restituito causerà la chiusura dello strumento dell'utente con Google. L'utente sarà costretto ad aggiungere un nuovo strumento. |
ACCOUNT_CLOSED_FRAUD |
L'account dell'utente presso l'integratore è stato chiuso a causa di attività fraudolenta. Questo valore restituito causerà la chiusura dello strumento dell'utente con Google. L'utente sarà costretto ad aggiungere un nuovo strumento. |
ACCOUNT_ON_HOLD |
L'account dell'utente è in sospeso. |
RawResult
Oggetto risultato non elaborato.
| Rappresentazione JSON |
|---|
{ "scope": string, "rawCode": string } |
| Campi | |
|---|---|
scope |
OPTIONAL: l'ambito del rawCode può essere vuoto. |
rawCode |
RICHIESTA: codice non elaborato dall'integratore o dai sottosistemi al suo interno. |