商户提现回调
收藏
我的收藏

将提现成功、失败或退票的消息通知给开发者/服务商。

使用限制

接口说明

  1. 在小程序开发者平台上的担保支付平台设置页面中,填写回调相关配置。回调 token 与回调 url。该回调地址为必填项。开发者可以在请求中动态指定回调地址,动态指定地址会覆盖默认配置
  2. 开发者服务端接收到异步通知时,必须通过验签(验证通知中的 sign 参数)来确保支付通知是由抖音发送的。详细验签规则详见签名DEMO
  3. 提现成功或者失败都会触发回调通知。
  4. 回调可能存在延时,若实时性要求高,开发者可以通过主动请求查询提现结果接口,感知提现结果。
  5. 在开发者服务端收到回调且处理成功后,需要按以下 json 返回表示处理成功,否则小程序服务端会认为通知失败进行重试。
{
  "err_no": 0,
  "err_tips": "success"
}
  1. 通知失败的重试时间间隔:15s/15s/30s/3m/10m/20m/30m/30m/30m/60m/3h/3h/3h/6h/6h。

回调参数

名称

类型

是否必填

最大长度

描述

示例值

timestamp

string

12

Unix 时间戳,字符串类型

1646398076

nonce

string

4

随机数

4353

msg

string

-

订单信息的 json 字符串,见下方msg参数说明

{ "status": "", "extra": "", "message": "", "withdraw_at": , "order_id": "", "out_order_id": "", "ch_order_id": "" }

type

string

32

回调类型标记,提现成功回调为"withdraw"

withdraw

msg_signature

string

128

签名,详见签名DEMO

a0e96a41c3fe0bb81ef527f3fb2948dad2fb2616

msg 参数

名称

类型

是否必填

最大长度

描述

示例值

status

string

32

提现结果状态

成功:SUCCESS

失败: FAIL

退票: REEXCHANGE

注:

退票:商户的提现申请请求通过渠道(微信/支付宝/抖音支付)提交给银行处理后,银行返回结果是处理成功,渠道返回给商户提现成功,但间隔一段时间后,银行再次通知渠道处理失败并返还款项给渠道,渠道再将该笔失败款返还至商户在渠道的账户余额中

SUCCESS

message

string

256

失败时,原因描述信息

商户结算账号登录名对应多个支付宝账号

withdraw_at

int

-

提现成功时的时间戳

1666836990

order_id

string

128

抖音侧的提现单号

N7157320011349262351

out_order_id

string

128

商户自己的提现单号

20221025235103026331

ch_order_id

string

128

渠道侧提现单号

NESS2022102523505912250526721416

extra

string

2048

接口提现传入的cp_extra字段,回调时会附带上

"withdraw_demo"

回调示例

{
  "msg": {
    "status": "SUCCESS",
    "extra": "",
    "message": "",
    "withdraw_at": 1646399890,
    "order_id": "N7078192267961368620",
    "out_order_id": "7078192267961466924",
    "ch_order_id": "TP2022032317293701648440769151"
  },
  "msg_signature": "a0e96a41c3fe0bb81ef527f3fb2948dad2fb2616",
  "nonce": "5269",
  "timestamp": "1646399490",
  "type": "withdraw"
}

响应参数

名称

类型

是否必填

最大长度

描述

示例值

err_no

number

-

返回码,0代表成功

0

err_tips

string

-

返回码描述,详见下文错误码

签名校验异常,请使用正确的签名和 json 传参

响应示例

正常响应示例

{
  "err_no": 0,
  "err_tips": "success"
}

异常响应示例

{
  "err_no": 1000,
  "err_tips": "内部错误,请稍后重试"
}