POST
预授权、请款与撤销通知
该回调通知用于接收
AUTH、CAPTURE 与 VOID 交易通知,并通过 paymentId 关联预授权生命周期。验签范围
请求签名指南除以下字段外,全部回调报文字段均参与验签:
sign(兼容签名值)periodValuepaymentMethod
回调报文字段
notifyType通知类型,标识本次 Webhook 的业务大类。
约束
- 取值
- 预授权、请款与撤销通知固定返回
TXN。
transactionIdOnerway 为本次授权、请款或撤销操作生成的交易号,用于跟踪、查询和幂等处理。
约束
- 规则
- 该值为大整数样式字符串;JavaScript 系统中应按字符串保存和比对,避免精度丢失。
- 一致性
- 同一授权生命周期中,
AUTH、CAPTURE与VOID是关联但不同的交易操作,各自transactionId不同。
paymentId支付意图 ID,用于关联原预授权及其后续请款或撤销操作。
约束
- 规则
- 该值为大整数样式字符串;JavaScript 系统中应按字符串保存和比对,避免精度丢失。
- 一致性
- 同一预授权生命周期下的授权、请款与撤销操作可通过同一个
paymentId关联。
txnType交易操作类型,表示本次通知对应预授权创建、请款还是撤销。
可选值
AUTH- 预授权创建,对持卡人资金发起授权;是否已授权以
status与paymentStatus为准。 CAPTURE- 预授权请款,对已授权金额发起请款。
VOID- 预授权撤销,释放已授权金额,不进行请款。
merchantNoOnerway 分配的商户号,标识接收该通知的商户账户。
merchantTxnId商户交易号,用于对账和关联订单。
约束
- 规则
- 请款通知可能回显原预授权订单的商户交易号;
VOID通知可返回撤销请求中的商户交易号。按transactionId对操作通知去重,并结合paymentId、transactionId与交易查询结果关联授权生命周期。
responseTimeOnerway 生成本次通知结果的时间,格式为
yyyy-MM-dd HH:mm:ss。txnTime本次授权、请款或撤销交易发生的时间,格式为
yyyy-MM-dd HH:mm:ss。txnTimeZonetxnTime 使用的时区偏移,格式为 ±HH:mm。orderAmount原预授权订单金额;请款或撤销通知中表示关联原预授权金额。
约束
- 规则
- 金额以 decimal string 返回,商户系统应避免用二进制浮点数直接计算金额。
orderCurrency原预授权订单币种,ISO 4217 三位字母货币代码。
status本次授权、请款或撤销操作的当前处理状态。
可选值
S- 成功;交易已成功完成。
F- 失败;交易被拒绝或处理失败。
P- 处理中;交易正在处理。
约束
- 一致性
status表示本次操作结果;不要与支付意图级的paymentStatus混用。
paymentStatus支付意图级状态,表示预授权生命周期当前状态。
可选值
A- 支付意图已授权,等待后续动作(如请款)。
O- 支付意图保持开放,可继续尝试。
S- 支付意图达到最终成功。
约束
- 规则
AUTH成功后可返回A(已授权,等待请款或撤销);AUTH失败时也可能返回O(支付意图保持开放,可继续尝试);CAPTURE成功后可返回S(支付意图成功);VOID成功后返回N(支付意图已关闭)。
eci电子商务指示符(ECI),表示交易相关的 3DS 认证状态。
cardBinCountry卡 BIN 所属国家 / 地区,ISO 3166-1 alpha-2 两位字母代码。
reason{ respCode, respMsg }交易结果原因对象,通知中按 JSON string 承载。
periodValue分期付款期数。
sign兼容保留的签名字符串:仅使用第一个启用的密钥计算,密钥轮换期间可能与商户配置的密钥不一致;请改用
X-Rh-Signature header 验签。约束
- 规则
- 验签时不要把
sign自身作为待签名字段。
paymentMethod本次授权、请款或撤销使用的支付方式或卡品牌。
channelRequestId支付渠道侧的请求标识,可用于渠道侧对账或排查。
paymentMethodDetails{ card }支付方式详情对象;卡交易的明细位于
card 子对象。{
"notifyType": "TXN",
"transactionId": "replace_with_authorization_transaction_id",
"paymentId": "replace_with_payment_id",
"txnType": "AUTH",
"merchantNo": "replace_with_merchant_no",
"merchantTxnId": "replace_with_merchant_transaction_id",
"responseTime": "2026-05-01 03:08:19",
"txnTime": "2026-05-01 03:05:45",
"txnTimeZone": "+08:00",
"orderAmount": "79.97",
"orderCurrency": "USD",
"status": "S",
"paymentStatus": "A",
"reason": "{\"respCode\":\"20000\",\"respMsg\":\"Success\"}",
"sign": "replace_with_sha256_signature",
"paymentMethod": "MASTERCARD",
"channelRequestId": "replace_with_channel_request_id",
"paymentMethodDetails": "{\"card\":{\"checks\":null,\"cardType\":\"MASTERCARD\",\"cardNumber\":\"512345******0008\"}}"
}应答说明
成功接收并受理预授权、请款或撤销 webhook 后返回 HTTP 200,并在响应体中原样返回收到的
transactionId。replace_with_transaction_id