更新记录

1.0.7(2025-12-23)

本次更新完成了鸿蒙端的完整适配,现在插件已支持:

  • ✅ 安卓(Android 5.0+)
  • ✅ iOS(iOS 12.0+)
  • ✅ 鸿蒙(HarmonyOS NEXT)

    三端统一 API,无缝切换,开箱即用!

1.0.6(2025-11-16)

更新银联线上收银台最新版SDK

1.0.5(2025-02-08)

修复了ios下支付宝支付闪退的问题

查看更多

平台兼容性

uni-app(4.21)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - - - 5.0 12
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - -

银联线上收银台控件

SDK版本

安卓 版本号: 3.5.17(20250911) 更新时间: 2025-09-11 15:21:41

IOS 版本号: 3.6.3(20250911) 更新时间: 2025-09-11 15:17:11

鸿蒙 版本号: 3.2 更新时间: 2025-12-23

接口说明

调起支付控件,发起支付

startPay(options):void

// 发起支付参数
type options {
    tn : string         // 交易流水号,商户后台向银联后台提交订单信息后,由银联后台生成并下发给商户后台的交易凭证;
    mode : string       // "00"代表接入生产环境(正式版本需要);"01"代表接入开发测试环境(测试版本需要);
    scheme ?: string    // IOS必填,鸿蒙不需要; 商户自定义协议,商户在调用支付接口完成支付后,用于引导支付控件返回而定义的协议
    seType ?: string    // 可选项(仅安卓可用);手机 pay 支付类别
    result : (response : Response) => void   // 支付回调
}

// 支付回调参数(回调参数仅供前端参考使用,以后台请求订单状态为准)
type Response = {
    status : string // 支付状态码,枚举值:SUCCESS:支付成功; FAIL:支付失败; CANCEL:支付取消
    sign ?: string //  sign字段用于后台验证,也可以不使用该数据,直接去后台请求当前订单状态
}

检测是否安装云闪付

checkAppInstalled():boolean//返回值,true:已安装,false:未安装.在发起支付前自行判断场景

使用说明

通用使用方式

// 引入插件方法
import { startPay, checkAppInstalled } from '@/uni_modules/zz-unionpay';

// 检测云闪付是否安装
if(!checkAppInstalled()) {
    uni.showToast({ title: '请先安装云闪付App', icon: 'none' })
    return
}

// 从后端接口中获取交易流水号(tn)
const tn = "从后端获取的交易流水号"

// 发起支付
startPay({
    tn,
    mode: "00", // "00"生产环境, "01"测试环境
    // 注意: scheme 参数仅 iOS 必填,鸿蒙不需要
    // 在manifest.json->安卓/IOS常用其他设置->UrlSchemes中设置scheme
    scheme: "unionpayConsider", // iOS必填,此处unionpayConsider替换为自己的Schemes
    result: (res) => {
        console.log('支付结果:', res.status)

        if (res.status === "SUCCESS") {
            uni.showToast({ title: '支付成功' })
            // 处理支付成功逻辑
            // res.sign 包含签名数据,可用于后台验证
        } else if (res.status === "CANCEL") {
            uni.showToast({ title: '支付已取消', icon: 'none' })
        } else {
            uni.showToast({ title: '支付失败', icon: 'none' })
        }
    }
})

平台差异说明

参数 安卓 iOS 鸿蒙 说明
tn ✅ 必填 ✅ 必填 ✅ 必填 交易流水号
mode ✅ 必填 ✅ 必填 ✅ 必填 支付模式
scheme ❌ 不需要 ✅ 必填 ❌ 不需要 URL Scheme
seType ✅ 可选 ❌ 不支持 ❌ 不支持 手机pay类别
result ✅ 必填 ✅ 必填 ✅ 必填 支付回调

鸿蒙端特别说明

  1. 无需配置 URL Scheme:鸿蒙端通过 UPPayResultCallback 回调处理支付结果,不需要配置 URL Scheme
  2. 回调方式:支付结果直接通过 callback 返回,无需监听应用生命周期
  3. SDK 版本:基于银联鸿蒙 SDK v3.2 实现
  4. 支持功能
    • ✅ 发起支付 (startPay)
    • ✅ 检测云闪付安装 (checkAppInstalled)
    • ❌ 直通模式 (暂不支持)
    • ❌ 获取手机信息 (暂不支持)

平台配置说明

iOS 配置

  1. 配置 URL Scheme:在 manifest.json -> iOS常用其他设置 -> UrlSchemes 中添加自定义 scheme
  2. 配置白名单:在 manifest.json -> iOS常用其他设置 -> urlschemewhitelist 中添加以下白名单:
    • uppaysdk
    • uppaywallet
    • upwallet
    • upopen
    • upcommon
    • uppayx1
    • uppayx2
    • uppayx3
  3. 如果使用直通模式,需要添加相应银行的白名单

安卓配置

  1. 权限配置:插件已自动配置所需权限
    • android.permission.INTERNET
    • android.permission.QUERY_ALL_PACKAGES
  2. 如果使用直通模式,需要添加相应银行的白名单

鸿蒙配置

  1. 无需额外配置:鸿蒙端无需配置 URL Scheme
  2. SDK 依赖:插件已包含 libuppayment.har (v3.2)
  3. 最低版本:HarmonyOS NEXT

其他说明

  1. 后续功能预告:getDirectApps() 检查已安装的支持直通模式的银行app列表;getPayInfo() 获取手机信息(安卓可用)
  2. 鸿蒙支持:✅ 已完成鸿蒙端适配,基于银联鸿蒙 SDK v3.2 实现
  3. 测试阶段:目前插件处于测试阶段,欢迎试用。有问题或有其他需求可随时与我沟通
  4. 回调说明:支付回调参数仅供前端参考使用,实际订单状态请以后台查询结果为准
  5. 更多信息:请参见中国银联开放平台

隐私、权限声明

1. 本插件需要申请的系统权限列表:

<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率: