Skip to content

提现异步通知

概述 ​

当虚拟银行提现进入处理中或产生最终结果时,平台会向商户配置的异步通知地址推送提现结果。收到通知后,应先校验 sign,再解析 bizData,并使用平台订单号或商户订单号进行幂等处理。

通知说明 ​

项目说明
通知名称提现异步通知
通知方向平台主动通知商户
通知地址由商户配置,平台向配置的通知地址发送结果
通知方式POST / application/json
签名方式按 签名规则说明 校验 sign
业务关联订单重新结算及虚拟银行提现结果通知

TIP

❗ 通知回执要求 商户成功接收并处理通知后,HTTP 响应体必须返回大写纯文本 SUCCESS。平台收到 SUCCESS 后将停止后续通知;未返回、返回其他内容或请求超时时,平台将继续通知,最多通知 6 次。

TIP

💡 结果判定:外层 code=000000 表示通知报文有效,不代表提现成功。提现结果必须以 bizData.state 为准;失败原因读取 bizData.note。

通知报文示例 ​

json
{
  "bizData": "{\"acctNo\":\"VA<DEMO_ID>\",\"amount\":10,\"fee\":0,\"feeType\":\"ORDER\",\"note\":\"对方行账户状态异常[SPS]\",\"orderNo\":\"AP<DEMO_ID>\",\"outOrderNo\":\"Item<DEMO_ID>\",\"payerBankAcctNo\":\"<DEMO_ID>\",\"payerName\":\"示例企业\",\"realAmount\":0,\"state\":\"FAIL\"}",
  "code": "000000",
  "msg": "请求成功",
  "sign": "<SIGNATURE>",
  "signType": "MD5",
  "timestamp": "<DEMO_ID>"
}

公共通知参数 ​

变量名类型必填示例值说明
codeString是000000公共状态码,000000 表示通知报文有效
msgString是请求成功公共返回描述
timestampString是<DEMO_ID>通知发送时间,格式为 yyyyMMddHHmmss
signTypeString是MD5通知签名类型
signString是59d710...9c028通知签名值,处理业务前必须先验签
bizDataString是见示例提现业务结果 JSON 字符串,验签通过后再解析

业务通知参数(bizData) ​

变量名类型必填示例值说明
amountLong是10提现金额,单位:分
mchFeeLong是0手续费,单位:分
feeTypeString是ORDER手续费扣费方式:ORDER 为订单内扣,ACCOUNT 为账户外扣
noteString否对方行账户状态异常[SPS]渠道处理说明或失败原因
orderNoString是AP<DEMO_ID>平台订单号
outOrderNoString是Item<DEMO_ID>商户订单号
payerBankAcctNoString是<DEMO_ID>出金银行账户号
payerAcctNoString是VA4878787878付款方账户号
payerNameString是示例企业出金账户名称
payeeBankAcctNoString是<DEMO_ID>收款方银行卡号
payeeNameString是V123123收款方名称
realAmountLong是0实际到账金额,单位:分
stateString是FAIL提现状态:
INIT:初始化
PROCESSING 处理中、
SUCCESS 成功、
FAIL 失败

处理建议 ​

  1. 使用通知原始字段校验 sign,验签通过前不要处理或入库 bizData。

  2. 解析 bizData,以 orderNo 或 outOrderNo 作为幂等键,防止重复通知导致重复处理。

  3. state=PROCESSING 时保持处理中状态,等待后续通知或通过查询接口确认。

  4. state=SUCCESS 时更新提现成功;state=FAIL 时更新提现失败并保存 note。

  5. 本示例中的 state=FAIL,失败原因为“对方行账户状态异常[SPS]”。符合重新结算条件时,可调用订单重新结算接口重试。

  6. 业务处理成功后,HTTP 响应体返回大写纯文本 SUCCESS。不要返回 JSON 包装或其他内容;平台收到 SUCCESS 后停止通知,否则最多通知 6 次。

安全与幂等 ​

  • 通知可能重复发送,业务处理必须具备幂等性。

  • 建议保存通知原文、验签结果、接收时间和状态变更记录,便于审计与排查。

  • 日志中涉及银行账号、企业名称等敏感信息时,应按生产环境安全规范脱敏。