# ks.pay

更新时间:2024-09-19 14:44:23

基础库1.26.1开始支持,低版本需做兼容处理

开发者工具1.22.0开始支持 (MOCK),真实场景请使用真机调试

发起担保支付。详见 担保支付接入指南

# pay(originOptions: PayOptions): Promise<void>

# 参数

参数 类型 必填
originOptions PayOptions

# PayOptions

属性
属性 类型 必填 说明 最低版本
serviceId string 服务类型 id(固定值为 '1' -
orderInfo PaymentOrderInfo 订单数据 -
paymentChannel PaymentChannel 支付渠道信息(来自 payment-list组件) 1.35.0
payType 'IAPPurchase' 支付类型(仅IAP(苹果支付)场景下传递) -
success (result: void) => void 接口调用成功的回调函数 -
fail (error: APIError) => void 接口调用失败的回调函数 -
complete (resultOrError: void | APIError) => void 接口调用结束的回调函数(调用成功、失败都会执行) -
PaymentOrderInfo
属性
属性 类型 必填 说明
order_no string 订单号
order_info_token string 订单 token
PaymentChannel
属性
属性 类型 必填 说明
provider string 通道类型
provider_channel_type string 金融渠道的通道类型

# 返回值

# Promise<void>

# 错误信息

错误信息 错误说明
系统检测到当前用户触发每日消费限制,暂不提供充值打赏功能
系统检测到疑似未成年,暂不提供充值打赏功能
没有支付权限

# 使用方式

Page({
    data: {
        payment: {
            provider: '',
            provider_channel_type: '',
        },
    },
    async pay() {
        const paymentChannel = this.data.payment;
        // 执行预下单逻辑
        await this.doPreOrder(payment);
        // 执行支付
        ks.pay({
            serviceId,
            orderInfo,
            paymentChannel,
            success,
            fail,
        })
    }
})

# Bug & Tip

Tip:请严格遵循以下使用方式:

  1. 使用支付渠道列表组件

    a. 支付渠道列表组件初始化成功,则需要在预下单ks.pay 接口处提供相应的 paymentChannel结构

    b. 支付渠道列表组件初始化失败,则在预下单ks.pay 接口无需提供paymentChannel结构,ks.pay 会 fallback 到默认的拉起

  2. 未使用,则在预下单ks.pay 接口无需提供paymentChannel结构,ks.pay 会 fallback 到默认的拉起收银台的方式

# 示例代码

Copyright ©2024, All Rights Reserved