• OpenAPI 简介
  • 小程序 OpenAPI SDK 总览
  • 签名算法
  • 基础能力
  • 触达与营销
  • 支付
  • 运营
  • 生活服务
  • 通用能力
  • 生活服务交易系统(全融合版)
  • 通用参数
  • 错误码和返回码
  • 查询接口
  • 预下单
  • 营销算价
  • 支付
  • 支付结果通知
  • 核销
  • 分账
  • 退货退款
  • 生活服务交易系统(账号融合版)
  • poi基础能力
  • CPS佣金设置与查询
  • 核销工具解决方案
  • 历史版本(不推荐使用)
  • 垂直行业
  • 其它
  • 订单支付成功/取消时,抖音开平交易系统会给向开发者的服务发起请求,将支付结果通知到开发者服务端。

    使用限制

    接口说明

      由于网络波动等原因,可能会产生重复的通知消息,接入方需要做好幂等,正确处理。
      回调可能存在延时,开发者可以通过主动请求查询订单信息,确认支付结果。
      在开发者服务端收到回调且处理成功后,需要按以下正常返回示例返回并且 HTTP 响应状态码设为 200,否则会认为通知失败进行重试。

    基本信息

    基本信息
    HTTP URL
    在解决方案配置-消息通知中指定的回调地址,配置方式参考解决方案配置文档
    HTTP Method
    POST

    请求头

    参见通用参数

    请求参数

    参数名称
    类型
    是否必填
    描述
    示例值
    msg
    string
    订单相关信息的 json 字符串
    见请求示例
    type
    string
    枚举值(支付结果回调为 payment):
      payment(支付成功/支付取消)
      refund (退款成功/退款失败)
      settle (分账成功/分账失败)
    payment
    version
    string
    固定值:"2.0"。
    回调版本,用于开发者识别回调参数的变更
    2.0

    msg 字段

    字段名
    类型
    是否必填
    描述
    示例值
    app_id
    string
    小程序 app_id
    ttcfdbb96650e33350
    status
    string
    支付结果状态,目前有两种状态:
      "SUCCESS" (支付成功 )
      "CANCEL" (支付取消)
    SUCCESS
    out_order_no
    string
    开发者系统生成的订单号,与抖音开平交易单号 order_id 唯一关联,长度 <= 64byte
    ext_order_no_164318867591
    order_id
    string
    抖音开平侧订单id,长度 <= 64byte
    ot7057416814925531429
    total_amount
    int64
    订单总金额,单位分
    支付金额为 = total_amount - discount_amount
    9900
    discount_amount
    int64
    订单优惠金额,单位分,接入营销时请关注这个字段
    1100
    pay_channel
    int32
    支付渠道枚举(支付成功时才有):
      1:微信
      2:支付宝
      3:银行卡
      10:抖音支付
    1
    channel_pay_id
    string
    渠道支付单号,如微信的支付单号,可能为空,可通过查询订单信息重新获取,长度 <= 64byte
    5304340298302398023
    cp_extra
    string
    预下单时开发者传入的透传字段(如果开发者未传,此字段为空),长度 <= 2048 byte
    whatever
    item_id
    string
    订单来源视频对应视频 id,可能为空,可通过查询订单信息重新获取,长度 <= 64byte
    122211121
    seller_uid
    string
    该笔交易卖家商户号,可能为空,可通过查询订单信息重新获取,实际存储的是int64类型的值
    1222223333
    event_time
    int64
    用户支付成功/支付取消时间戳,单位为毫秒
    1643189272388
    message
    string
    该笔交易取消原因,如:
      "USER_CANCEL":用户取消
      "TIME_OUT":超时取消
    USER_CANCEL
    delivery_type
    int
    抖音码/三方码类型:
      0:三方码,开发者自行处理券码生成及展示,通过 push_delivery 接口推送核销状态。
      1:抖音码,开平负责生券,开发者使用核销组件展示,使用验券准备和验券接口核销。
    1

    请求示例

    curl --location --request POST 'https://xxxxxxx.net/api/v2/result_callback?timestamp=1345678901234&nonce=iuy987q4htafreqw' \ --header 'Content-Type: application/json' \ --data-raw='{ "version": "2.0", //本次固定为2.0, 通过版本信息识别,用不同的结构体去解析上述关键参数 "msg": "{\"app_id\":\"tt07e371xxxxxxx\",\"status\":\"SUCCESS\",\"order_id\":\"ot7057422956397414686\",\"cp_extra\":\"xxx\",\"item_id\":\"xxxxx\",\"seller_uid\":\"xxxxxx\",\"pay_channel\":1,\"message\":\"\",\"extra\":\"{\\\"cps_info\\\":\\\"poi\\\",\\\"share_amount\\\":\\\"299\\\"}\",\"event_time\":1643185090000,\"out_order_no\":\"ext_order_no_1643185079529\",\"total_amount\":1}", "type": "payment" }'

    msg 字段内容示例

    //支付成功回调示例 { "app_id": "tt07e371xxxxxxx", "status": "SUCCESS", "order_id": "ot7057422956397414686", "cp_extra": "xxx", "item_id":"xxxxx", "seller_uid":"xxxxxx", "pay_channel": 1, "message": "", "extra": "", "event_time": 1643185090000, "out_order_no": "ext_order_no_1643185079529", "total_amount": 1, "discount_amount":0, "delivery_type":1 } //支付取消回调示例 { "app_id": "tt07e371xxxxxxx", "status": "CANCEL", "order_id": "ot7057422956397414686", "cp_extra": "xxx", "message": "TIME_OUT", "event_time": 1643185090000, "out_order_no": "ext_order_no_1643185079529", "total_amount": 1, "discount_amount":0, "delivery_type":0 }

    响应参数

    参数名称
    类型
    描述
    示例值
    err_no
    int64
    错误码
    0
    err_tips
    string
    错误提示
    success

    响应示例

    正常示例

    //正常返回响应且http状态码为200 //注意: //正常返回时一定要保证err_no和err_tips为下面标准返回方式,不然都认为失败,将会重试 { "err_no": 0, "err_tips": "success" }

    异常示例

    //异常响应或http状态码为非200, //字节服务端会不断重试 { "err_no": 1, //非0 "err_tips": "system error" //非success }