抖音开放平台Logo
开发者文档
“/”唤起搜索
控制台
  • JS API 列表
  • 基础
  • TTML
  • 网络
  • 媒体
  • 地图
  • 文件
  • 数据缓存
  • 地理位置
  • 设备
  • 画布
  • 界面
  • 页面导航
  • 开放接口
  • 行业开放
  • 通用交易系统
  • 通用交易系统接入问题汇总
  • 交易下单
  • tt.requestOrder
  • tt.getOrderPayment
  • 履约
  • 交易系统
  • 交易工具
  • 第三方平台
  • 其它
  • 生活服务
  • 基础库 2.74.0 开始支持本方法,这是一个异步方法。

    拉起用户支付收银台。

    前提条件
    业务背景
    使用限制

    最低支持版本上注明行业 SDK ,表示仅在行业 SDK 上才支持,需要在代码中配置行业 SDK 的权限:行业 SDK 的权限配置。当完成行业 SDK 的权限配置后,可通过 tt.canIUse('getOrderPayment') 判断该 API 是否可用。

    注意事项

    成功回调(success 回调)仅代表 js_api 调用成功,不可用于判断用户实际支付成功,支付成功判断请开发者以服务端支付成功回调为准。

    支持沙盒
    相关教程

    语法

    tt.getOrderPayment(options)

    参数说明

    options 为 object 类型,属性如下:

    属性名类型默认值必填说明最低支持版本
    orderIdstring

    抖音开放平台内部的交易订单号,len(orderId) <= 64byte,示例:motb37468756987

    2.74.0
    successfunction
    接口调用成功的回调函数
    2.74.0
    failfunction
    接口调用失败的回调函数
    2.74.0
    completefunction
    接口调用结束的回调函数(调用成功、失败都会执行)
    2.74.0

    回调成功

    object 类型,属性如下:

    属性名类型说明最低支持版本
    orderIdstring

    抖音开放平台内部的交易订单号,len(orderId) <= 64byte,示例:motb37468756987

    2.74.0
    logIdstring

    可供服务端排查问题

    2.74.0

    回调失败

    object 类型,属性如下:

    属性名类型说明最低支持版本
    errNostring

    错误码,对应信息可查看 errNo 说明

    2.74.0
    errMsgstring

    错误信息提示

    2.74.0
    logIdstring

    当请求支付失败时会提供该数据,可供服务端排查问题

    2.74.0

    错误码

    errNoerrMsg说明最低支持版本
    10000getOrderPayment:fail 参数错误

    参数错误

    2.74.0
    10401getOrderPayment:fail internal error

    请求异常,可重试或升级APP

    2.74.0
    11001getOrderPayment:fail 访问未授权

    访问未授权

    2.74.0
    12002getOrderPayment:fail 账号行为异常

    账号行为异常

    2.74.0
    13000getOrderPayment:fail 系统错误

    系统错误

    2.74.0
    20000getOrderPayment:fail 订单不存在

    订单不存在

    2.74.0
    21012getOrderPayment:fail 创建订单失败,请稍后重试

    创建订单失败,请稍后重试

    2.74.0
    21046getOrderPayment:fail 订单收款商户号不合法

    订单收款商户号不合法

    2.74.0
    21550getOrderPayment:fail not login

    请用真机调试或者参考常见问题

    2.74.0
    26001getOrderPayment:fail 当前订单状态不可支付

    当前订单状态不可支付

    2.74.0
    26003getOrderPayment:fail 小程序违规,支付能力被封禁

    小程序违规,支付能力被封禁

    2.74.0
    26005getOrderPayment:fail 无可用支付方式

    无可用支付方式

    2.74.0
    26006getOrderPayment:fail 商户号与小程序的支付产品不一致

    商户号与小程序的支付产品不一致

    2.74.0
    1getOrderPayment:fail payment timeout

    支付超时

    2.74.0
    2getOrderPayment:fail payment fail

    支付失败

    2.74.0
    3getOrderPayment:fail payment closure

    支付关闭

    2.74.0
    4getOrderPayment:fail payment cancellation

    支付取消

    2.74.0
    9getOrderPayment:fail order status should be obtained by the developer

    建议开发者自行通过服务端的订单查询接口获取订单状态

    2.74.0

    代码示例

    index.js文件中引入示例

    Page({ data: {}, pay() { tt.getOrderPayment({ orderId: "123", // 替换为抖音开放平台内部的交易订单号 success: (res) => { console.log("支付成功", res); tt.showToast({ icon: "success", title: "支付成功", }); }, fail: (res) => { console.error("支付失败", res); const { errNo, errMsg } = res; tt.showToast({ icon: "fail", title: "支付失败", }); }, }); }, });

    Bug & Tip

    失败回调返回 errNo 为 9 ,一定要进行兜底处理。
    某些极端情况下,会导致 JSAPI 无法返回正确的支付结果,此时 JSAPI 会触发失败回调,并返回 errNo = 9,那么就需要开发者自行通过服务端的订单查询接口获取订单状态。
    伪代码如下:
    tt.getOrderPayment({ // ...必要参数 success() { // 成功处理函数 // this.handlePaySuccess() }, fail(err) { if (err.errNo === 9) { // 自行通过服务端接口查询订单支付状态 // 若订单支付状态为成功,那么正常调用成功处理函数 // this.handlePaySuccess() } } })