- Solicitud HTTP
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- RemittanceStatementSummary
- BillingPeriod
- RemittanceInstructions
- Evento
Devuelve información detallada sobre una transacción de un estado de cuenta de remesas.
Esta es una API paginada. La cantidad de eventos de transacción por página se puede especificar con numberOfEvents. Si no se especifica, se devolverá un máximo de 1,000 eventos por página. Cada solicitud a esta API devolverá un nextEventOffset que apunta al siguiente evento de transacción en el estado de cuenta, así como un totalEvents que especifica la cantidad total de transacciones en el estado de cuenta. Si la página recuperada actual contiene las últimas transacciones del estado de cuenta, nextEventOffset no estará presente en la respuesta.
El valor statementId es el requestId del remittanceStatementNotificationRequest.
Si el endpoint encuentra un error mientras se procesa la solicitud, la respuesta de este endpoint será del tipo .ErrorResponse
Las respuestas a esta consulta pueden estar vacías si este método no devuelve un HTTP 200. El cuerpo de la respuesta está vacío en situaciones en las que un mensaje con una descripción clara podría utilizarse para ayudar a un atacante a conocer el identificador de la cuenta del integrador de pago de otros integradores. En estas situaciones, en que la clave de firma no coincide, no se encuentra el identificador del integrador de pago o no se conoce la clave de encriptación, este método devuelve un error HTTP 404 con un cuerpo vacío. Si se pudo verificar la firma de la solicitud, se devolverá información adicional sobre el error en el cuerpo de la respuesta.ErrorResponse
El siguiente es un ejemplo de solicitud:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "statement_detail_request_139932019",
"requestTimestamp": "1502551332087"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"statementId": "0123434-statement-abc",
"numberOfEvents": 4
}
El siguiente es un ejemplo de respuesta:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"eventOffset": 0,
"nextEventOffset": 4,
"totalEvents": 15,
"remittanceStatementSummary": {
"statementDate": "1502521200000",
"billingPeriod": {
"startDate": "1502434800000",
"endDate": "1502434800000"
},
"dateDue": "1502348400000",
"currencyCode": "INR",
"totalDueByIntegrator": "1076000000",
"remittanceInstructions": {
"memoLineId": "stmt-1AB-pp0-invisi"
}
},
"captureEvents": [
{
"eventRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"paymentIntegratorEventId": "ioj32SOIjf23oijSDfoij",
"eventCharge": "700000000",
"eventFee": "-28000000"
},
{
"eventRequestId": "Ggghvh78200PQ3Yrpb",
"paymentIntegratorEventId": "iasdf23dSdfijSDfoij",
"eventCharge": "800000000",
"eventFee": "-32000000"
}
],
"refundEvents": [
{
"eventRequestId": "liUrreQY233839dfFFb24gaQM",
"paymentIntegratorEventId": "asd3SDf3f3oijSDfoij",
"eventCharge": "-200000000",
"eventFee": "8000000"
},
{
"eventRequestId": "IIghhhUrreQY233839II9qM==",
"paymentIntegratorEventId": "DFjidoso12FSDFSDE",
"eventCharge": "-150000000",
"eventFee": "6000000"
}
]
}
Solicitud HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/remittanceStatementDetails/: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 el encabezado común para todas las solicitudes. |
paymentIntegratorAccountId |
OBLIGATORIO: Es el identificador de la cuenta del integrador de pagos que identifica las restricciones contractuales en torno a esta declaración. |
statementId |
OBLIGATORIO: Es el ID de solicitud de la notificación de estado. |
eventOffset |
OPCIONAL: Son los eventos de devolución que comienzan en este desplazamiento. Este parámetro debe establecerse en |
numberOfEvents |
OPCIONAL: Es la cantidad de eventos que se mostrarán por página. Si no se especifica o es mayor que 1,000, se establecerá en 1,000. |
Cuerpo de la respuesta
Objeto de respuesta para el método de detalles del resumen de remesas.
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. |
remittanceStatementSummary |
OBLIGATORIO: Es el resumen de este estado de cuenta de remesas. |
eventOffset |
OBLIGATORIO: Es el desplazamiento del evento de esta respuesta. |
nextEventOffset |
OPCIONAL: Es el desplazamiento del próximo evento que se devolverá. Si no se especifica, no hay más eventos para recuperar para esta instrucción. |
totalEvents |
OBLIGATORIO: Es la cantidad total de eventos en esta declaración. |
totalWithholdingTaxes |
OBLIGATORIO: Es la suma de todos los impuestos retenidos para este resumen. Este valor está en micros. |
captureEvents[] |
OBLIGATORIO: Es el conjunto de eventos de captura. |
refundEvents[] |
OBLIGATORIO: Es el conjunto de eventos de reembolso. |
reverseRefundEvents[] |
OPCIONAL: Es un conjunto de eventos de reversión de reembolsos. |
chargebackEvents[] |
OPCIONAL: Es el conjunto de eventos de contracargo. |
reverseChargebackEvents[] |
OPCIONAL: Es un conjunto de eventos de reversión de devolución. |
adjustmentEvents[] |
OPCIONAL: Es el conjunto de eventos de ajuste. Los eventos de ajuste se pueden agregar a discreción de Google para conciliar las discrepancias de facturación. Por ejemplo, si las comisiones se calcularon de forma insuficiente para un conjunto de transacciones anteriores, se puede usar un ajuste para compensar al integrador. |
RemittanceStatementSummary
Es un objeto de resumen sobre un estado de cuenta de remesas.
| Representación JSON |
|---|
{ "statementDate": string, "billingPeriod": { object ( |
| Campos | |
|---|---|
statementDate |
OBLIGATORIO: Fecha (en America/Los Ángeles) en la que se creó este resumen. |
billingPeriod |
OBLIGATORIO: Es el período de facturación que abarca este resumen. |
dateDue |
OPCIONAL: Es la fecha de vencimiento de la remesa. Se representa como milisegundos desde la época. Es una fecha (y, por lo tanto, siempre comenzará en el primer milisegundo del día en la zona horaria de facturación). Esto se establece siempre y cuando |
currencyCode |
OBLIGATORIO: Código de moneda de 3 letras según la norma ISO 4217. |
totalDueByIntegrator |
OBLIGATORIO: Este valor se expresa en micro unidades de la moneda de |
remittanceInstructions |
OBLIGATORIO: Detalles sobre cómo remitir el pago |
BillingPeriod
Es el período de facturación de este resumen.
| Representación JSON |
|---|
{ "startDate": string, "endDate": string } |
| Campos | |
|---|---|
startDate |
OBLIGATORIO: Es la fecha de inicio del período de facturación. Se representa como milisegundos desde la época. Es una fecha (y, por lo tanto, siempre comenzará en el primer milisegundo del día en la zona horaria de facturación). Es el primer milisegundo del día del período de facturación, es decir, las 00:00:00.000. |
endDate |
OBLIGATORIO: Es la fecha de finalización del período de facturación. Se representa como milisegundos desde la época. Es el último milisegundo del último día del período de facturación, es decir, las 23:59:59.999. |
RemittanceInstructions
Estructura que contiene información sobre cómo pagar esta notificación de remesa.
| Representación JSON |
|---|
{ "memoLineId": string } |
| Campos | |
|---|---|
memoLineId |
OBLIGATORIO: Es el identificador que se debe incluir de forma obligatoria en la línea de memo del pago para la identificación de la remesa. |
Evento
Es una estructura que representa un solo evento incluido en un estado de cuenta de remesas.
| Representación JSON |
|---|
{ "eventRequestId": string, "paymentIntegratorEventId": string, "eventCharge": string, "eventFee": string, "presentmentChargeAmount": string, "presentmentCurrencyCode": string, "exchangeRate": string, "nanoExchangeRate": string } |
| Campos | |
|---|---|
eventRequestId |
OBLIGATORIO: Para los eventos de captura o reembolso, este será el |
paymentIntegratorEventId |
OBLIGATORIO: Es el ID que devolvió el integrador de pagos para este evento. En el caso de una captura, es el Este campo tiene una longitud variable, ya que, como integrador, cualquier ID que proporciones para este evento se reflejará aquí. Si el integrador no proporcionó un valor para el evento correspondiente, este campo contendrá el mismo valor que el campo En el caso de los eventos de reversión de reembolso, contracargo y reversión de contracargo, este será el La longitud y el formato de este campo dependen del campo de origen de cada ID. Consulta la documentación de cada uno de los campos de origen para obtener detalles sobre los requisitos de longitud y el conjunto de caracteres. En particular, ten en cuenta que, a veces, este campo puede contener IDs generados por Google que pueden tener requisitos de longitud máxima diferentes a los de los IDs generados por el integrador. |
eventCharge |
OBLIGATORIO: Es el código de moneda definido por el estado de cuenta. Si este valor es negativo, representa el valor monetario que se transfiere de Google al integrador de pagos. Si es positivo, significa que el integrador de pagos le debe dinero a Google. Por ejemplo, las transacciones de captura siempre serán positivas y las de reembolso siempre serán negativas. Los eventos de reversión de reembolsos y reversión de devoluciones de cargos siempre serán positivos. Los eventos de contracargo siempre serán negativos. Este valor está en micros. |
eventFee |
OBLIGATORIO: Es el código de moneda definido por el estado de cuenta. Si este valor es negativo, representa el valor monetario que se transfiere de Google al integrador de pagos. Si es positivo, significa que el integrador de pagos le debe dinero a Google. Por ejemplo, si un acuerdo establece que Google pagará el 1% del Este valor está en micros. |
presentmentChargeAmount |
OPCIONAL: Es el importe de la transacción en la moneda de presentación (también conocida como moneda de la transacción) antes del cambio de divisas. Este campo sigue la misma convención de signos que el campo Este valor está en micros. |
presentmentCurrencyCode |
OPCIONAL: Código de moneda de 3 letras según la norma ISO 4217 que denomina la moneda de presentación (transacción). |
exchangeRate |
OBSOLETO: Es el tipo de cambio que se usa para convertir el importe de presentación al importe de liquidación (factura). Este valor se expresa en puntos básicos (1 punto básico = 0 .0001 = 0 .01%). Es decir, para obtener el tipo de cambio, divide este campo por 10^10. |
nanoExchangeRate |
OPCIONAL: Es el tipo de cambio que se usa para convertir el importe de presentación al importe de liquidación (factura), expresado en nanocentésimos de punto porcentual. Este valor se expresa en nanopuntos básicos (1 punto básico = 0 .0001 = 0 .01%). Es decir, para obtener el tipo de cambio, divide este campo por 10^13. Se completarán tanto este campo como exchangeRate. Son tipos de cambio equivalentes expresados con diferente precisión. En versiones futuras, se quitará exchangeRate y se usará nanoExchangeRate. |