调用 refund
方法后,将退款结果告知 Google。
退款应在调用 refund
方法期间进行同步处理,但此方法会为 Google 提供快速的备份信号,以便在同步调用在执行相应操作之后、到可以返回结果之前失败。这样可避免 Google 安排在未来重试的延迟。
refundResult
值对此 refundRequestId
具有幂等性,因此该值在后续调用此方法时无法更改。
如果端点在处理请求时出错,则来自此端点的响应类型为
。ErrorResponse
如果此方法未返回 HTTP 200,此查询的响应可能为空。如果可以使用带有明确说明的
帮助攻击者了解其他集成商的付款集成商帐号标识符,响应正文将为空。在这些情况下,如果签名密钥不匹配,未找到付款集成商标识符,或者加密密钥未知,则此方法将返回正文为空的 HTTP 404。如果请求签名可以通过验证,则响应正文中会返回有关错误的更多信息。ErrorResponse
示例请求如下所示:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1481855928301"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"refundRequestId": "hH1T32PI86CpKwjuf6oD2r",
"paymentIntegratorRefundId": "invisi/Id::xx__1243",
"refundResult": "SUCCESS"
}
示例响应如下所示:
{
"responseHeader": {
"responseTimestamp": "1481855928376"
},
"result": "SUCCESS"
}
HTTP 请求
POST https://vgw.googleapis.com/secure-serving/gsp/v1/refundResultNotification/:PIAID
请求正文
请求正文中包含结构如下的数据:
JSON 表示法 |
---|
{ "requestHeader": { object ( |
字段 | |
---|---|
requestHeader |
必需:所有请求的通用标头。 |
paymentIntegratorAccountId |
必需:发生退款的付款集成商帐号标识符。 |
refundRequestId |
必需:此退款的唯一标识符,由调用 |
refundResult |
必需:退款结果。 |
paymentIntegratorRefundId |
必需:此标识符特定于集成商,由集成商生成。这是集成商知道这笔退款的标识符。 为方便起见,汇款详情中包含此标识符 |
响应正文
refundResultNotification
方法的响应对象。
如果成功,响应正文将包含结构如下的数据:
JSON 表示法 |
---|
{ "responseHeader": { object ( |
字段 | |
---|---|
responseHeader |
必需:所有响应的通用标头。 |
result |
必需:此调用的结果。 |
退款结果代码
唯一结果代码退款。
枚举 | |
---|---|
UNKNOWN_RESULT |
切勿设置此默认值! |
SUCCESS |
退款成功。 |
NO_MONEY_LEFT_ON_TRANSACTION |
退款失败,交易中没有剩余资金。这通常代表集成商和 Google 之间的 bug。Google 不应要求退款金额高于原始照片的退款金额。 |
ACCOUNT_CLOSED |
持有的集成商帐号已关闭。 返回此值会导致用户付款方式被 Google 关闭。系统将要求用户重新执行关联流程,以强制添加新付款方式。 |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
用户与集成商的帐号已关闭,怀疑帐号接管。 返回此值会导致用户付款方式被 Google 关闭。系统将要求用户重新执行关联流程,以强制添加新付款方式。 |
ACCOUNT_CLOSED_FRAUD |
由于欺诈行为,用户持有的集成者帐号已被关闭。 返回此值会导致用户付款方式被 Google 关闭。系统将要求用户重新执行关联流程,以强制添加新付款方式。 |
ACCOUNT_ON_HOLD |
用户的帐号目前处于暂停状态,无法接受退款,但该用户帐号随后可能会接受退款。Google 将来可能会再次申请退款,但会使用新的 requestId 来申请退款,因此此请求应被视为已完成。 |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
目前无法处理退款,因为这样做会导致用户的余额超出允许的金额上限。Google 将来可能会再次申请退款,但会使用新的 requestId 来申请退款,因此此请求应被视为已完成。 |
REFUND_WINDOW_EXCEEDED |
无法处理该请求,因为该请求超出了允许的退款期限。 |
RefundResultNotificationResultCode
refundResultNotification
方法的结果代码。
枚举 | |
---|---|
UNKNOWN_RESULT |
切勿设置此默认值! |
SUCCESS |
退款结果通知已成功。 |