阅读路径
建议按以下顺序接入通知能力:- 本页(通知概览) — 公共信封、重试、验签与
bizType说明 - 各业务通知子页 — 字段表与代码示例(本菜单「支付 / OTC / 提现 / 订阅 / 机构」分组)
- Guide:通知 — 事件目录、终态处理与产品到
bizType映射 - 最佳实践 — 支付查单兜底、退款 10s 规则与安全建议
概述
当订单状态发生变化时(如支付成功、超出支付时间、订单取消、关闭或异常等),GatePay 会向商户注册时配置的 callback URL 发送异步 POST 通知。- 投递方式:GatePay 以 POST 方式向 callback URL 发送 JSON 格式通知。
- 重试机制:若因网络或其他原因导致通知失败,GatePay 将在 15 秒(2 次)/ 30 秒 / 3 分钟 / 10 分钟 / 20 分钟 / 30 分钟(3 次)/ 60 分钟 / 3 小时(3 次)/ 6 小时(2 次) 后重试。若重试仍失败,商户可通过相应查询接口获取最新状态。
- 幂等要求:同一业务事件可能被多次投递,须基于
bizId、merchantTradeNo等业务唯一标识做幂等处理。
处理要求
- 验签:收到通知后必须先校验签名,再处理业务。请求头包含
X-GatePay-Timestamp、X-GatePay-Nonce、X-GatePay-Signature,验签规则见 安全与签名。 - 解析
data:凡使用标准信封的回调,data均为 JSON 字符串,须JSON.parse后再读字段;提现(WITHDRAW) 无data字段,采用main_order+suborders专用结构(见 提现通知)。顶层client_id/clientId可能缺失或混用,以实际回调为准。 - 应答:处理成功后返回 HTTP 200 及 JSON:
{"returnCode":"SUCCESS","returnMessage":""}。返回FAIL或超时将触发重试。
消息结构
消息结构示例
bizType
常见终态与建议动作(摘要)
完整事件目录见 Guide:通知。bizStatus 枚举值(支付 / 地址类)
订阅、OTC、机构、异常支付等专用
bizStatus 见对应子页。
