Method: remittanceStatementDetails

Retorna informações detalhadas da transação sobre um extrato de remessa.

Esta é uma API paginada. O número de eventos de transação por página pode ser especificado com numberOfEvents. Se não for especificado, o máximo de 1.000 eventos será retornado por página. Cada solicitação para essa API vai retornar um nextEventOffset que aponta para o próximo evento de transação na instrução, bem como um totalEvents especificando o número total de transações na instrução. Se a página atual recuperada contiver as últimas transações da instrução, nextEventOffset não estará presente na resposta.

O valor de statementId é o requestId do remittanceStatementNotificationRequest.

Se o endpoint encontrar um erro ao processar a solicitação, a resposta desse endpoint será do tipo ErrorResponse.

As respostas a esta consulta poderão ficar vazias se o método não retornar um HTTP 200. O corpo da resposta fica vazio nas situações em que um ErrorResponse com uma descrição clara pode ser usado para ajudar um invasor a entender o identificador da conta do integrador de pagamentos de outros integradores. Nessas situações, em que a chave de assinatura não corresponde, o identificador do integrador de pagamentos não foi encontrado ou a chave de criptografia é desconhecida, esse método retorna um HTTP 404 com um corpo vazio. Se a assinatura da solicitação puder ser verificada, informações adicionais sobre o erro serão retornadas no corpo da resposta.

Este é um exemplo de solicitação:


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

Um exemplo de resposta é semelhante a:


{
  "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"
    }
  ]
}

Solicitação HTTP

POST https://vgw.googleapis.com/secure-serving/gsp/v1/remittanceStatementDetails/:PIAID

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,
  "eventOffset": integer,
  "numberOfEvents": integer
}
Campos
requestHeader

object (RequestHeader)

OBRIGATÓRIO: cabeçalho comum para todas as solicitações.

paymentIntegratorAccountId

string

OBRIGATÓRIO: é o identificador da conta do integrador de pagamentos que identifica as restrições contratuais relacionadas à instrução.

statementId

string

OBRIGATÓRIO: ID da solicitação da notificação de declaração.

eventOffset

integer

OPCIONAL: retorna eventos que começam nesse deslocamento. Defina como nextEventOffset se um foi retornado ou se não foi especificado se essa for a primeira solicitação. Se eventOffset for zero, os eventos serão retornados a partir do primeiro evento. Se for dois, os eventos serão retornados a partir do terceiro. Se não for especificado, eventOffset será considerado zero.

numberOfEvents

integer

OPCIONAL: número de eventos a serem exibidos por página. Se não for especificado ou for maior que 1.000, será 1.000.

Corpo da resposta

Objeto de resposta para o método de detalhes do extrato de remessa.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação 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)

OBRIGATÓRIO: cabeçalho comum para todas as respostas.

remittanceStatementSummary

object (RemittanceStatementSummary)

OBRIGATÓRIO: resumo desta declaração de remessa.

eventOffset

integer

OBRIGATÓRIO: o deslocamento do evento dessa resposta.

nextEventOffset

integer

OPTIONAL: o deslocamento do próximo evento a ser retornado. Se não for especificada, não haverá mais eventos a serem recuperados para essa instrução.

totalEvents

integer

OBRIGATÓRIO: número total de eventos na instrução.

totalWithholdingTaxes

string (Int64Value format)

OBRIGATÓRIO: a soma de todos os tributos retidos para essa declaração.

Esse valor está em micros.

captureEvents[]

object (Event)

OBRIGATÓRIO: conjunto de eventos de captura.

refundEvents[]

object (Event)

OBRIGATÓRIO: conjunto de eventos de reembolso.

reverseRefundEvents[]

object (Event)

OPCIONAL: conjunto de eventos de reembolso reverso.

chargebackEvents[]

object (Event)

OPCIONAL: conjunto de eventos de estorno.

reverseChargebackEvents[]

object (Event)

OPCIONAL: conjunto de eventos de estorno reverso.

adjustmentEvents[]

object (Event)

OPCIONAL: conjunto de eventos de ajuste. Eventos de ajuste podem ser adicionados a critério do Google para reconciliar discrepâncias de faturamento. Por exemplo, se as taxas forem subcalculadas para um conjunto de transações anteriores, um ajuste poderá ser usado para fazer o integrador inteiro.

RemittanceStatementSummary

Objeto de resumo sobre uma declaração de remessa.

Representação JSON
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
Campos
statementDate

string (int64 format)

OBRIGATÓRIO: data (nos Estados Unidos/Los Angeles) em que a declaração foi criada.

billingPeriod

object (BillingPeriod)

OBRIGATÓRIO: o período de faturamento coberto pelo extrato.

dateDue

string (int64 format)

OPCIONAL: a data de vencimento da remessa. Isso é representado como milissegundos a partir da época. É uma data e, portanto, sempre começará no primeiro milissegundo do dia no fuso horário de faturamento.

Ele é definido desde que a totalDueByIntegrator seja maior que 0.

currencyCode

string

OBRIGATÓRIO: código de moeda ISO 4217 de três letras.

totalDueByIntegrator

string (Int64Value format)

OBRIGATÓRIO: este valor está em micros na moeda currencyCode. Esse valor é sempre positivo.

remittanceInstructions

object (RemittanceInstructions)

OBRIGATÓRIO: detalhes sobre como efetuar o pagamento

BillingPeriod

Período de faturamento deste extrato.

Representação JSON
{
  "startDate": string,
  "endDate": string
}
Campos
startDate

string (int64 format)

OBRIGATÓRIO: a data de início do período de faturamento. Isso é representado como milissegundos a partir da época. É uma data e, portanto, sempre começará no primeiro milissegundo do dia no fuso horário de faturamento.

Este é o primeiro milissegundo do dia do período de faturamento, 00:00:00.000

endDate

string (int64 format)

OBRIGATÓRIO: a data de término do período de faturamento. Isso é representado como milissegundos a partir da época.

Este é o último milissegundo do último dia do período de faturamento, 23:59:59.999

RemittanceInstructions

Estrutura que contém informações sobre como pagar esta notificação de remessa.

Representação JSON
{
  "memoLineId": string
}
Campos
memoLineId

string

OBRIGATÓRIO: identificador que precisa ser colocado na linha do memorando para pagamento e identificação da remessa.

Evento

Estrutura que representa um único evento incluído em uma declaração de remessa.

Representação JSON
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
Campos
eventRequestId

string

OBRIGATÓRIO: para eventos de captura ou reembolso, é o requestId que o Google envia com a solicitação. Para eventos de reembolso reverso, estorno e estorno reverso, ele será o requestId que o integrador de pagamentos enviar com a notificação. No caso dos ajustes, esse vai ser um ID exclusivo atribuído pelo Google ao evento.

paymentIntegratorEventId

string

OBRIGATÓRIO: ID que o integrador de pagamentos retornou para esse evento. Para uma captura, esse é o paymentIntegratorTransactionId da resposta a uma chamada de capture. Para reembolso, esse é o paymentIntegratorRefundId da resposta a uma chamada de refund.

Esse campo tem comprimento variável, porque, como integrador, qualquer ID fornecido para esse evento será refletido aqui. Se o integrador não fornecer um valor para o evento correspondente, esse campo vai conter o mesmo valor que o campo eventRequestId.

Para eventos de reembolso reverso, estorno e estorno reverso, será o requestId que o integrador de pagamentos enviou com a notificação do evento.

O tamanho e o formato desse campo dependem do campo de origem de cada ID. Consulte a documentação de cada um dos campos de origem para obter detalhes sobre os requisitos de comprimento e conjunto de caracteres. Especificamente, observe que esse campo às vezes pode conter IDs gerados pelo Google, que podem ter requisitos de tamanho máximo diferentes dos IDs gerados pelo integrador.

eventCharge

string (Int64Value format)

OBRIGATÓRIO: no código de moeda definido pela instrução. Se esse valor for negativo, significa que o valor monetário é transferido do Google para o integrador de pagamentos. Se o valor for positivo, o dinheiro vem do integrador de pagamentos devido ao Google.

Por exemplo, as transações de captura sempre serão positivas e as de reembolso sempre serão negativas. Os eventos de reembolso e estorno reverso sempre serão positivos. Os eventos de estorno sempre serão negativos.

Esse valor está em micros.

eventFee

string (Int64Value format)

OBRIGATÓRIO: no código de moeda definido pela instrução. Se esse valor for negativo, significa que o valor monetário é transferido do Google para o integrador de pagamentos. Se o valor for positivo, o dinheiro vem do integrador de pagamentos devido ao Google.

Por exemplo, se um contrato informar que o Google vai pagar 1% de transactionCharge ao integrador de pagamentos e reverter esse valor no reembolso dessa transação, a taxa de captura será negativa, e a taxa de reembolso será positiva após o reembolso.

Esse valor está em micros.

presentmentChargeAmount

string (Int64Value format)

OPCIONAL: valor da transação na moeda presente (também conhecida como transação) antes do câmbio. Esse campo segue a mesma convenção de sinal que o campo eventCharge.

Esse valor está em micros.

presentmentCurrencyCode

string

OPCIONAL: código de moeda ISO 4217 de três letras que denomina a moeda de apresentação (transação).

exchangeRate

string (Int64Value format)

OPCIONAL: a taxa de câmbio usada na conversão do valor de apresentação para o valor de liquidação (fatura).

Esse valor está em pontos base micro (1 ponto = 0,0001 = 0,01%). Ou seja, para obter a taxa de câmbio, divida esse campo por 10^10.

nanoExchangeRate

string (Int64Value format)

OPCIONAL: a taxa de câmbio usada para converter o valor presente no valor de liquidação (fatura), expresso em nano pontos-base.

Esse valor está em pontos de base nano (1 ponto = 0,0001 = 0,01%). Ou seja, para obter a taxa de câmbio, divida esse campo por 10^13.

Esse campo e a taxa de câmbio serão preenchidos. São taxas de câmbio equivalentes expressas com diferentes precisão. Em versões futuras, o ExchangeRate será removido em favor do nano ExchangeRate.