Method: remittanceStatementDetails

返回有关汇款对账单的交易详细信息。

这是一个分页 API。可以使用 numberOfEvents 指定每个网页的交易事件数量。如果未指定,则每页最多返回 1, 000 个事件。对该 API 的每次请求都会返回一个指向语句中下一个交易事件的 nextEventOffset,以及一个用于指定语句中交易总数的 totalEvents。如果当前检索到的页面包含对账单的最后一笔交易,则响应中不会显示 nextEventOffset。

statementId 值是 remittanceStatementNotificationRequest 中的 requestId

如果端点在处理请求时遇到错误,则来自此端点的响应将为 ErrorResponse 类型。

如果此方法未返回 HTTP 200,则对此查询的响应可能为空。在以下情况下,响应正文为空:具有明确说明的 ErrorResponse 可用于帮助攻击者了解其他集成商的支付集成商账号标识符。在以下情况下,如果签名密钥不匹配、找不到付款集成商标识符或加密密钥未知,此方法将返回 HTTP 404,且正文为空。如果可以验证请求签名,则会在响应正文中返回有关该错误的其他信息。

请求示例:


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

示例回答如下所示:


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

HTTP 请求

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

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,
  "eventOffset": integer,
  "numberOfEvents": integer
}
字段
requestHeader

object (RequestHeader)

必需:所有请求的通用标头。

paymentIntegratorAccountId

string

必需:这是支付集成商账号标识符,用于标识与此对账单相关的合同限制。

statementId

string

必需:对账单通知的请求 ID。

eventOffset

integer

可选:返回从相应偏移量开始的事件。如果返回了 nextEventOffset,则应将其设置为该值;如果这是第一个请求,则应将其留空。如果 eventOffset 为零,则返回的事件将从第一个事件开始。如果值为 2,则返回的活动将从第三个活动开始。如果未指定,则假定 eventOffset 为零。

numberOfEvents

integer

可选:每页显示的活动数。如果未指定或大于 1000,则此值为 1000。

响应正文

汇款对账单详细信息方法的响应对象。

如果成功,响应正文将包含结构如下的数据:

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)
    }
  ]
}
字段
responseHeader

object (ResponseHeader)

必需:所有响应的通用标头。

remittanceStatementSummary

object (RemittanceStatementSummary)

必需属性:相应汇款对账单的摘要。

eventOffset

integer

必需:相应回答的事件偏移量。

nextEventOffset

integer

可选:要返回的下一个事件的偏移量。如果未指定,则表示相应语句没有更多要检索的事件。

totalEvents

integer

必需:相应语句中的事件总数。

totalWithholdingTaxes

string (Int64Value format)

必需:相应对账单的所有预扣税款的总和。

此值的单位为微秒。

captureEvents[]

object (Event)

必需:捕获事件的集合。

refundEvents[]

object (Event)

必需:一组退款事件。

reverseRefundEvents[]

object (Event)

可选:一组反向退款事件。

chargebackEvents[]

object (Event)

可选:退单事件集。

reverseChargebackEvents[]

object (Event)

可选:一组撤销退款事件。

adjustmentEvents[]

object (Event)

可选:一组调整事件。Google 可自行决定是否添加调整事件,以解决结算差异问题。例如,如果一组之前的交易费用计算不足,则可以使用调整来弥补集成商的损失。

RemittanceStatementSummary

有关汇款对账单的摘要对象。

JSON 表示法
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
字段
statementDate

string (int64 format)

必需:创建此声明的日期(美国/洛杉矶时区)。

billingPeriod

object (BillingPeriod)

必需:相应对账单涵盖的结算周期。

dateDue

string (int64 format)

可选:汇款的到期日期。以自纪元开始以来的毫秒数表示。这是一个日期(因此始终从结算时区中相应日期的第一毫秒开始)。

只要 totalDueByIntegrator 大于 0,就会设置此值。

currencyCode

string

必需:ISO 4217 货币代码(3 个字母)。

totalDueByIntegrator

string (Int64Value format)

必需:此值以微为单位,币种为 currencyCode。此值始终为正数。

remittanceInstructions

object (RemittanceInstructions)

必需:有关如何汇款的详细信息

BillingPeriod

相应对账单的结算周期。

JSON 表示法
{
  "startDate": string,
  "endDate": string
}
字段
startDate

string (int64 format)

必需:结算周期的开始日期。以自纪元开始以来的毫秒数表示。这是一个日期(因此始终从结算时区中相应日期的第一毫秒开始)。

结算周期的第一天中的第一个毫秒,即 00:00:00.000

endDate

string (int64 format)

必需:结算周期的结束日期。以自纪元开始以来的毫秒数表示。

结算周期最后一天的最后一毫秒,即 23:59:59.999

RemittanceInstructions

用于保存有关如何支付此汇款通知的信息的结构。

JSON 表示法
{
  "memoLineId": string
}
字段
memoLineId

string

必需:必须放在汇款付款备注行中的标识符,用于识别汇款。

活动

表示汇款对账单中包含的单个事件的结构。

JSON 表示法
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
字段
eventRequestId

string

必需:对于收款或退款事件,此参数将是 Google 随请求发送的 requestId。对于反向退款、拒付和撤销退款事件,此值为付款集成商随该事件的通知发送的 requestId。对于调整,这是 Google 为调整事件分配的唯一 ID。

paymentIntegratorEventId

string

必需:支付集成商针对相应事件返回的 ID。对于收款,这是对 capture 调用的响应中的 paymentIntegratorTransactionId;对于退款,这是对 refund 调用的响应中的 paymentIntegratorRefundId。

此字段的长度可变,集成商为此事件提供的任何 ID 都将反映在此处。如果集成商未为相应事件提供值,则此字段将包含与 eventRequestId 字段相同的值。

对于反向退款、拒付和撤销退款事件,此值为付款集成商随事件通知发送的 requestId。

此字段的长度和格式取决于每个 ID 的来源字段。如需详细了解长度和字符集要求,请参阅每个源字段的文档。请特别注意,此字段有时可能包含 Google 生成的 ID,这些 ID 的最大长度要求可能与集成商生成的 ID 不同。

eventCharge

string (Int64Value format)

必需:以声明定义的币种代码表示。如果此值为负,则表示货币价值从 Google 转移到付款集成商。如果此值为正,则表示付款集成商应付给 Google 的款项。

例如,收款交易始终为正数,而退款交易始终为负数。反向退款和撤销退款事件将始终为正值。退款事件的金额始终为负数。

此值的单位为微秒。

eventFee

string (Int64Value format)

必需:以声明定义的币种代码表示。如果此值为负,则表示货币价值从 Google 转移到付款集成商。如果此值为正,则表示付款集成商应付给 Google 的款项。

例如,如果某协议规定 Google 将向付款集成商支付 transactionCharge 的 1%,并在退还相应交易款项时撤销该 1%,那么收款手续费将为负值,而退款手续费在退款时将为正值。

此值的单位为微秒。

presentmentChargeAmount

string (Int64Value format)

可选:外汇兑换前的展示(即交易)币种交易金额。此字段遵循与 eventCharge 字段相同的符号约定。

此值的单位为微秒。

presentmentCurrencyCode

string

可选:表示展示(交易)币种的 ISO 4217 货币代码(由 3 个字母组成)。

exchangeRate
(deprecated)

string (Int64Value format)

已弃用:将展示金额换算为结算(账单)金额时所用的汇率。

此值以微基点为单位(1 个基点 = .0001 = .01%)。也就是说,如需获得汇率,请将此字段除以 10^10。

nanoExchangeRate

string (Int64Value format)

可选:将展示金额换算为结算(账单)金额时所用的汇率,以纳诺基点表示。

此值以纳诺基点为单位(1 个基点 = .0001 = .01%)。也就是说,如需获得汇率,请将此字段除以 10^13。

此字段和 exchangeRate 都会填充。它们是等效的汇率,但精确度不同。在未来的版本中,我们将移除 exchangeRate,改用 nanoExchangeRate。