- Solicitud HTTP
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- UpiDetails
- DisburseFundsResult
- DisburseFundsResultCode
- RawResult
Inicia el movimiento de dinero entre el procesador de pagos y la cuenta del cliente. La combinación de requestId
en el encabezado y paymentIntegratorAccountId
es la clave de idempotencia y, además, identifica esta transacción de forma única. Todas las mutaciones de esta transacción propagan el valor requestId
en el campo disburseFundsRequestId
.
Si el extremo encuentra un error mientras procesa la solicitud, el cuerpo de la respuesta de este extremo debe ser del tipo
.ErrorResponse
A continuación, se muestra una solicitud de ejemplo:
{
"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"
}
Esta es una respuesta de ejemplo:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA",
"disburseFundsResult": {
"disburseFundsResultCode": "SUCCESS"
}
}
Solicitud HTTP
POST https://www.integratorhost.example.com/v1/disburseFunds
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "requestHeader": { object ( |
Campos | |
---|---|
requestHeader |
OBLIGATORIO: Encabezado común para todas las solicitudes |
paymentIntegratorAccountId |
OBLIGATORIO: Este es el identificador de la cuenta del integrador de pagos que identifica las restricciones contractuales en torno a esta transacción. |
transactionDescription |
OBLIGATORIO: Esta es la descripción de la transacción que se puede incluir en el estado de cuenta del cliente. Se localizó según la userLocale que se encuentra en |
currencyCode |
OBLIGATORIO: El código de moneda ISO 4217 de 3 letras. |
amount |
OBLIGATORIO: El importe de la compra, en micros de la unidad de moneda. |
Campo de unión
|
|
upiDetails |
OPCIONAL: Detalles del pago específicos de los instrumentos de UPI |
Cuerpo de la respuesta
Objeto de respuesta para el método de desembolso de fondos.
Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:
Representación JSON |
---|
{ "responseHeader": { object ( |
Campos | |
---|---|
responseHeader |
OBLIGATORIO: Encabezado común para todas las respuestas |
paymentIntegratorTransactionId |
OBLIGATORIO: Este identificador es específico del integrador y lo genera este. Este es el identificador por el que el integrador conoce esta transacción. Para mayor comodidad, este identificador se incluye en los detalles de la remesa. |
disburseFundsResult |
OBLIGATORIO: Es el resultado de la llamada de desembolso de los fondos. |
UpiDetails
Detalles sobre la cuenta de UPI a la que se desembolsará.
Representación JSON |
---|
{ "vpa": string } |
Campos | |
---|---|
vpa |
OBLIGATORIO: Es la dirección de pago virtual (VPA) del usuario que se usó para transferir dinero mediante el protocolo UPI. Por ejemplo, foo@icici. |
DisburseFundsResult
Información sobre el resultado final del desembolso.
Representación JSON |
---|
{ "disburseFundsResultCode": enum ( |
Campos | |
---|---|
disburseFundsResultCode |
OBLIGATORIO: Es el código de resultado de este desembolso. |
rawResult |
OPCIONAL: El resultado sin procesar de este desembolso. Se usa para informar al motor de riesgos y las estadísticas de Google. En las situaciones de mapeo de código de rechazo, a veces se pierden los datos. El integrador puede elegir entregar un código sin procesar a Google. Por ejemplo, una puerta de enlace de tarjeta de crédito (el integrador) puede usar este campo para comunicar a Google el código de rechazo exacto que se recibió de la red VISA. En ese caso, el Este valor es obligatorio si |
Campo de unión
|
|
transactionMaxLimit |
OPCIONAL: Si Esta cantidad es de micros del mismo |
transactionMinLimit |
OPCIONAL: Si Esta cantidad es de micros del mismo |
DisburseFundsResultCode
Códigos de resultado para una llamada de desembolso de fondos
Enumeradores | |
---|---|
UNKNOWN_RESULT |
No establezcas nunca este valor predeterminado. |
SUCCESS |
Se realizó correctamente el desembolso. |
DISBURSEMENT_UNDER_TRANSACTION_LIMIT |
El importe del desembolso solicitado no cumple con el importe mínimo por transacción del integrador. Si se usa este código, propaga el campo transactionMinLimit con el importe mínimo de la transacción para enviar mensajes a los usuarios. |
DISBURSEMENT_EXCEEDS_TRANSACTION_LIMIT |
El importe del desembolso solicitado supera el límite máximo por transacción del integrador. Si se usa este código, propaga el campo transactionMaxLimit con el límite de transacciones para enviar mensajes a los usuarios. |
ACCOUNT_CLOSED |
Se cerró la cuenta del usuario que tenía el integrador. Este valor que se muestra hará que el instrumento del usuario se cierre con Google. El usuario se verá obligado a agregar un instrumento nuevo. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Se cerró la cuenta del usuario con el integrador, por lo que se sospecha que la cuenta está a cargo. Este valor que se muestra hará que el instrumento del usuario se cierre con Google. El usuario se verá obligado a agregar un instrumento nuevo. |
ACCOUNT_CLOSED_FRAUD |
Se cerró la cuenta del usuario que tenía el integrador debido a un fraude. Este valor que se muestra hará que el instrumento del usuario se cierre con Google. El usuario se verá obligado a agregar un instrumento nuevo. |
ACCOUNT_ON_HOLD |
La cuenta del usuario está suspendida. |
RawResult
Objeto de resultado sin procesar.
Representación JSON |
---|
{ "scope": string, "rawCode": string } |
Campos | |
---|---|
scope |
OPTIONAL: El alcance del legalCode puede estar vacío. |
rawCode |
OBLIGATORIO: Es el código sin procesar del integrador o los subsistemas que contiene. |