- Solicitud HTTP
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- RefundResultCode
- RefundResultNotificationResultCode;
Notifica a Google el resultado de un reembolso después de que se haya realizado una llamada al método refund
.
Los reembolsos se deben controlar de forma síncrona durante la llamada al método refund
, pero este método le proporciona a Google una señal de copia de seguridad rápida en caso de que la llamada síncrona falle después de realizar la acción, pero antes de que pueda mostrar un resultado. Esto evita el retraso que presenta Google al programar un reintento para un futuro.
El valor refundResult
es idempotente para este refundRequestId
, por lo que no se puede cambiar en una llamada posterior a este método.
Si el extremo encuentra un error mientras se procesa la solicitud, la respuesta de este extremo será del tipo
.ErrorResponse
Es posible que las respuestas a esta consulta estén vacías si este método no muestra un HTTP 200. El cuerpo de la respuesta está vacío en los casos en que se pueda usar un elemento
con una descripción clara para ayudar a un atacante a comprender el identificador de la cuenta del integrador de pagos de otros integradores. En estos casos, en los que la clave de firma no coincide, no se encontró el identificador del integrador de pago o la clave de encriptación es desconocida, este método mostrará un HTTP 404 con un cuerpo vacío. Si se pudo verificar la firma de la solicitud, se mostrará información adicional sobre el error en el cuerpo de la respuesta.ErrorResponse
Una solicitud de ejemplo se ve de la siguiente manera:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1481855928301"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"refundRequestId": "hH1T32PI86CpKwjuf6oD2r",
"paymentIntegratorRefundId": "invisi/Id::xx__1243",
"refundResult": "SUCCESS"
}
Una respuesta de ejemplo se ve de la siguiente manera:
{
"responseHeader": {
"responseTimestamp": "1481855928376"
},
"result": "SUCCESS"
}
Solicitud HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/refundResultNotification/:PIAID
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "requestHeader": { object ( |
Campos | |
---|---|
requestHeader |
OBLIGATORIO: Es un encabezado común para todas las solicitudes. |
paymentIntegratorAccountId |
OBLIGATORIO: Es el identificador de la cuenta del integrador de pagos en el que se realizó el reembolso. |
refundRequestId |
OBLIGATORIO: Es un identificador único para este reembolso, establecido por el campo |
refundResult |
OBLIGATORIO: Resultado de este reembolso. |
paymentIntegratorRefundId |
OBLIGATORIO: Este identificador es específico del integrador y lo genera el integrador. Es el identificador por el cual el integrador conoce este reembolso. Para mayor comodidad, este identificador se incluye en los detalles de la remesa |
Cuerpo de la respuesta
Objeto de respuesta para el método refundResultNotification
.
Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:
Representación JSON |
---|
{ "responseHeader": { object ( |
Campos | |
---|---|
responseHeader |
OBLIGATORIO: Es el encabezado común para todas las respuestas. |
result |
OBLIGATORIO: Resultado de esta llamada. |
Código de reembolso
Se reembolsan los códigos de resultado únicos.
Enumeradores | |
---|---|
UNKNOWN_RESULT |
No establezcas este valor predeterminado. |
SUCCESS |
El reembolso se realizó correctamente. |
NO_MONEY_LEFT_ON_TRANSACTION |
No se pudo realizar el reembolso y no queda dinero en la transacción. Por lo general, esto representa un error entre el integrador y Google. Google no debe solicitar un reembolso de un importe superior al de la captura original. |
ACCOUNT_CLOSED |
Se cerró la cuenta que tiene el integrador. Mostrar este valor hará que se cierre el instrumento de pago con Google. El usuario se verá obligado a agregar un instrumento nuevo nuevamente a través del flujo de asociación. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Se cerró la cuenta del usuario que tiene el integrador y se sospecha que la cuenta tomó el control. Mostrar este valor hará que se cierre el instrumento de pago con Google. El usuario se verá obligado a agregar un instrumento nuevo nuevamente a través del flujo de asociación. |
ACCOUNT_CLOSED_FRAUD |
Se cerró la cuenta del usuario que tenía el integrador debido a un fraude. Mostrar este valor hará que se cierre el instrumento de pago con Google. El usuario se verá obligado a agregar un instrumento nuevo nuevamente a través del flujo de asociación. |
ACCOUNT_ON_HOLD |
Actualmente, la cuenta del usuario está suspendida y no se puede aceptar el reembolso, pero es posible que la cuenta del usuario pueda aceptar el reembolso más tarde. Es posible que Google solicite otro reembolso en el futuro, pero lo hará con un requestId nuevo, por lo que se debe considerar como finalizada. |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
No se puede procesar el reembolso en este momento, ya que esto provocaría que el saldo del usuario supere el importe máximo permitido. Es posible que Google solicite otro reembolso en el futuro, pero lo hará con un requestId nuevo, por lo que se debe considerar como finalizada. |
REFUND_WINDOW_EXCEEDED |
No se puede procesar el reembolso porque la solicitud está fuera del período de reembolso permitido. |
RefundResultNotificationResultCode.
Códigos de resultado para el método refundResultNotification
Enumeradores | |
---|---|
UNKNOWN_RESULT |
No establezcas este valor predeterminado. |
SUCCESS |
La notificación de resultado del reembolso se realizó correctamente. |