Method: remittanceStatementDetails

Devuelve información detallada de la transacción sobre un resumen de remesa.

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 muestra un máximo de 1,000 eventos por página. Cada solicitud a esta API mostrará un nextEventOffset que apunta al siguiente evento de transacción en la sentencia, así como un totalEvents que especifica la cantidad total de transacciones en la declaración. Si la página recuperada actual contiene las últimas transacciones de la sentencia, nextEventOffset no estará presente en la respuesta.

El valor statementId es el requestId de remittanceStatementNotificationRequest

Si el extremo encuentra un error mientras procesa la solicitud, la respuesta de este extremo será del tipo ErrorResponse.

Es posible que las respuestas de esta consulta estén vacías si este método no muestra un HTTP 200. El cuerpo de la respuesta estará vacío en situaciones en las que se pueda usar una ErrorResponse con una descripción clara para ayudar a un atacante a comprender el identificador de cuenta del integrador de pagos de otros integradores. En estas situaciones, en las que la clave de firma no coincide, no se encontró el identificador del integrador de pagos o se desconocía la clave de encriptación, este método mostrará un error HTTP 404 con un cuerpo vacío. Si se puede verificar la firma de la solicitud, se devolverá información adicional sobre el error en el cuerpo de la respuesta.

A continuación, se muestra una solicitud de ejemplo:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "statement_detail_request_139932019",
    "requestTimestamp": "1502551332087"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "statementId": "0123434-statement-abc",
  "numberOfEvents": 4
}

Una respuesta de ejemplo se ve de la siguiente manera:


{
  "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 (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,
  "eventOffset": integer,
  "numberOfEvents": integer
}
Campos
requestHeader

object (RequestHeader)

REQUIRED: Encabezado común para todas las solicitudes

paymentIntegratorAccountId

string

REQUIRED: Es el identificador de la cuenta del integrador de pagos que identifica las restricciones contractuales en torno a esta declaración.

statementId

string

REQUIRED: Es el ID de solicitud de la notificación de la declaración.

eventOffset

integer

OPCIONAL: Muestra eventos que comienzan en este desplazamiento. Se debe configurar en nextEventOffset si se mostró uno o no se especificó si esta es la primera solicitud. Si eventOffset es cero, se mostrarán los eventos a partir del primer evento. Si es dos, se devolverán los eventos a partir del tercer evento. Si no se especifica, se supone que eventOffset es cero.

.

numberOfEvents

integer

OPCIONAL: Cantidad de eventos que se muestran por página. Si no se especifica o es mayor que 1,000, el valor será 1,000.

Cuerpo de la respuesta

Objeto de respuesta para el método de detalles de la declaración de remesas.

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

Representación JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "remittanceStatementSummary": {
    object (RemittanceStatementSummary)
  },
  "eventOffset": integer,
  "nextEventOffset": integer,
  "totalEvents": integer,
  "totalWithholdingTaxes": string,
  "captureEvents": [
    {
      object (Event)
    }
  ],
  "refundEvents": [
    {
      object (Event)
    }
  ],
  "reverseRefundEvents": [
    {
      object (Event)
    }
  ],
  "chargebackEvents": [
    {
      object (Event)
    }
  ],
  "reverseChargebackEvents": [
    {
      object (Event)
    }
  ],
  "adjustmentEvents": [
    {
      object (Event)
    }
  ]
}
Campos
responseHeader

object (ResponseHeader)

REQUIRED: Encabezado común para todas las respuestas

remittanceStatementSummary

object (RemittanceStatementSummary)

REQUIRED: Resumen de esta declaración de remesa

eventOffset

integer

REQUIRED: El desplazamiento del evento de esta respuesta

nextEventOffset

integer

OPCIONAL: Es el desplazamiento del siguiente evento que se mostrará. Si no se especifica, no hay más eventos para recuperar para esta instrucción.

totalEvents

integer

REQUIRED: Cantidad total de eventos en esta declaración

totalWithholdingTaxes

string (Int64Value format)

OBLIGATORIO: Es la suma de todos los impuestos retenidos para este estado de cuenta.

Este valor está en micros.

captureEvents[]

object (Event)

OBLIGATORIO: Conjunto de eventos de captura.

.

refundEvents[]

object (Event)

REQUIRED: Conjunto de eventos de reembolso

.

reverseRefundEvents[]

object (Event)

OPCIONAL: Conjunto de eventos de reembolso inverso.

.

chargebackEvents[]

object (Event)

OPCIONAL: Conjunto de eventos de devolución del cargo.

.

reverseChargebackEvents[]

object (Event)

OPCIONAL: Conjunto de eventos de devolución del cargo revertida.

.

adjustmentEvents[]

object (Event)

OPCIONAL: Conjunto de eventos de ajuste. Google puede agregar eventos de ajuste a discreción de Google para conciliar las discrepancias de facturación; por ejemplo, si las tarifas no se calcularon de forma adecuada para un conjunto de transacciones anteriores, se puede usar un ajuste para hacer que el integrador esté completo.

.

RemittanceStatementSummary

Objeto de resumen sobre una declaración de remesa.

Representación JSON
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
Campos
statementDate

string (int64 format)

OBLIGATORIO: Es la fecha (en Estados Unidos/Los Ángeles) en la que se creó esta declaración.

billingPeriod

object (BillingPeriod)

OBLIGATORIO: El período de facturación que abarca este estado de cuenta.

dateDue

string (int64 format)

OPCIONAL: Es la fecha de vencimiento de la remesa. Esto se representa como milisegundos desde el ciclo de entrenamiento. Es una fecha (y, por lo tanto, siempre comenzará en el primer milisegundo del día en la zona horaria de facturación).

Se establece siempre que totalDueByIntegrator sea mayor que 0.

currencyCode

string

OBLIGATORIO: Es el código de moneda ISO 4217 de 3 letras.

totalDueByIntegrator

string (Int64Value format)

OBLIGATORIO: Este valor se expresa en micros y la moneda currencyCode. Este valor siempre es positivo.

remittanceInstructions

object (RemittanceInstructions)

OBLIGATORIO: Incluye los detalles de cómo remitir el pago.

BillingPeriod

Período de facturación de este estado de cuenta.

Representación JSON
{
  "startDate": string,
  "endDate": string
}
Campos
startDate

string (int64 format)

OBLIGATORIO: Es la fecha de inicio del período de facturación. Esto se representa como milisegundos desde el ciclo de entrenamiento. Es una fecha (y, por lo tanto, siempre comenzará en el primer milisegundo del día en la zona horaria de facturación).

Este es el primer milisegundo del día del período de facturación, 00:00:00.000.

endDate

string (int64 format)

OBLIGATORIO: Es la fecha de finalización del período de facturación. Esto se representa como milisegundos desde el ciclo de entrenamiento.

Este es el último milisegundo del último día del período de facturación, 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

string

OBLIGATORIO: Es el identificador obligatorio que se debe incluir en la línea de la nota para realizar el pago a fin de identificar la remesa.

Evento

Es una estructura que representa un solo evento incluido en una declaración de remesas.

Representación JSON
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
Campos
eventRequestId

string

OBLIGATORIO: En el caso de los eventos de captura o reembolso, este será el requestId que Google envía con la solicitud. En el caso de los eventos de reembolso revertido, devolución del cargo y devolución del cargo revertida, esta será la requestId que el integrador de pagos envía con la notificación de ese evento. En el caso de los ajustes, este será un ID único que Google asignará al evento de ajuste.

paymentIntegratorEventId

string

REQUIRED: Es el ID que el integrador de pagos devolvió para este evento. Para una captura, este es el paymentIntegratorTransactionId de la respuesta a una llamada a capture. En el caso de un reembolso, es el paymentIntegratorRefundId de la respuesta a una llamada de refund.

Este campo tiene una longitud variable, como un 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 eventRequestId.

Para los eventos de reembolso revertido, devolución del cargo y devolución del cargo revertida, estos serán los requestId que el integrador de pagos envió con la notificación del evento.

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 grupo 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

string (Int64Value format)

REQUIRED: Debe estar presente en el código de moneda definido por la instrucción. Si este valor es negativo, representa el valor monetario que se transfiere de Google al integrador de pagos. Si el resultado es positivo, es dinero del integrador de pagos que debe pagar a Google.

Por ejemplo, las transacciones de captura siempre serán positivas y las de reembolso siempre serán negativas. Los eventos de reembolso inverso y reversión de la devolución del cargo siempre serán positivos. Los eventos de devolución del cargo siempre serán negativos.

Este valor está en micros.

eventFee

string (Int64Value format)

REQUIRED: Debe estar presente en el código de moneda definido por la instrucción. Si este valor es negativo, representa el valor monetario que se transfiere de Google al integrador de pagos. Si el resultado es positivo, es dinero del integrador de pagos que debe pagar a Google.

Por ejemplo, si un acuerdo establece que Google pagará el 1% de transactionCharge al integrador de pagos y revertirá ese 1% tras el reembolso de esa transacción, la tarifa de captura será negativa y, una vez realizada el reembolso, será positiva.

Este valor está en micros.

presentmentChargeAmount

string (Int64Value format)

OPCIONAL: Es el importe de la transacción en la moneda de presentación (o transacción) anterior al cambio de moneda. Este campo sigue la misma convención de signo que el campo eventCharge.

Este valor está en micros.

presentmentCurrencyCode

string

OPCIONAL: Código de moneda ISO 4217 de 3 letras que designa la moneda de presentación (transacción).

exchangeRate

string (Int64Value format)

OPCIONAL: Tipo de cambio que se usa para convertir el importe de la presentación al importe de liquidación (factura).

Este valor está en micro puntos base (1 punto base = 0 .0001 = 0 .01%). Es decir, para obtener el tipo de cambio, divide este campo por 10^10.

nanoExchangeRate

string (Int64Value format)

OPCIONAL: Tipo de cambio que se usa para convertir el importe de la presentación al importe de la liquidación (factura), expresado en puntos base nano.

Este valor está en puntos base nano (1 punto base = 0 .0001 = 0 .01%). Es decir, para obtener el tipo de cambio, divide este campo por 10^13.

Se propagarán este campo y la tasa de cambio. Son tipos de cambio equivalentes que se expresan con diferente precisión. En versiones futuras, se quitará la tasa de cambio y se reemplazará por nanoExchangeRate.