鸿蒙原生支付:7 张图搞懂聚合支付与数字人民币接入
很多开发者一听到“接入支付”,第一反应往往是头大:微信 SDK 要接一套,支付宝 SDK 要接一套,现在鸿蒙原生应用来了,是不是又得再来一套?
说实话,刚开始看文档我也这么想。但深入研究了 HarmonyOS Payment Kit(鸿蒙支付服务) 后,我发现华为这次下的棋有点大。它不仅仅是一个简单的“钱包”,更像是一个系统级的支付聚合器。
简单说,你接了 Payment Kit,不仅能用华为支付(Huawei Pay),还能直接在鸿蒙系统里拉起微信、支付宝,甚至直接调用数字人民币。对于咱们做业务开发的,这意味着能用一套代码逻辑,覆盖市面上主流的支付渠道,这波“造轮子”我给满分。
今天咱们就扒一扒鸿蒙支付接入流程和核心业务流程,别整那些虚头巴脑的概念,直接看图说话。
华为支付通用收银台纯外部支付接入流程
官方文档:接入支付服务
华为支付收银台
华为支付当前提供三种接入商户模型:商户(即直连商户)、平台类商户、服务商。开发者可根据实际业务模式选择适用的合作身份。
多样化的支付能力
-
单次支付:用户选购商品后,商户通过接入单次支付来完成用户订单的创建与支付。
支持:直连商户、平台类商户、服务商。
-
合单支付:通过合单支付,商户可将不同商户的一个或多个订单合并到同一个订单完成支付。
支持:平台类商户。
-
支付并签约:用户支付完成后可与商户签订协议,完成相关业务自动扣款。
支持:直连商户、服务商。
-
签约代扣:商户可主动发起与用户签订相关协议,完成相关业务自动扣款(如水电费预缴,自动充值代扣等),简化相关业务操作流程。
支持:直连商户、服务商。
华为支付收银台对接方案
官方文档:
华为支付收银台
鸿蒙支付服务
鸿蒙支付服务
Payment Kit(鸿蒙支付服务)提供了方便、安全和快捷的支付方式,开发者在开发的商户应用/元服务中接入支付服务便捷且快速。
商户应用/元服务接入Payment Kit后,可在商户的应用/元服务内通过拉起华为支付收银台来完成订单的支付并展示支付结果以及完成用户对实体商品或服务(例如酒店服务、出行服务、充值缴费服务等)的购买。
Payment Kit还提供了用户身份验证服务,包括实名信息验证、实名信息授权和人脸核身实人验证以及数字人民币支付能力,商户通过接入数字人民币支付能力,可在商户的应用/元服务调用开放API接口,拉起数字人民币收银台来完成订单支付。
场景介绍
用户在商户的应用/元服务选购完不同的商品后,可以直接在商户的应用/元服务里完成下单和支付。
接入场景:商户基础支付场景、平台类商户合单支付场景、通用收银台支付相关场景。
用户在商户APP应用/元服务选购完商品或主动点击商户提供的签约选项后,商户的应用/元服务可拉起华为支付签约收银台,用户完成签约后,后续再次购买商品时,商户可以直接发起代扣,减少用户拉起收银台、输入支付密码等相关操作。
接入场景:支付并签约场景、签约代扣场景。
用户在商户APP应用/元服务进行话费充值,选好充值金额后发起支付,商户的应用/元服务通过拉起数字人民币收银台完成订单支付以及话费充值的操作。
接入场景:数字人民币支付场景。
政务、金融、医疗等类型应用/元服务在用户进行登录、预约等操作时需要核对用户信息,或核对用户是否本人。
接入场景:实名信息验证/授权场景、人脸核身实人验证场景。
官方文档:Payment Kit(鸿蒙支付服务)
一、 核心支付模式解析
鸿蒙支付不仅支持普通的单次支付,还搞定了电商平台最头疼的“合单支付”和订阅制的“自动续费”。咱们一个个来看。
1. 商户基础支付(直连模式)
这是最经典的场景:用户买个东西,点击支付,拉起收银台,输密码,完事。
👨💻 专家解读:
- 核心逻辑:和微信/支付宝的流程非常像,核心差异在于验签方式。鸿蒙这里强制使用了 SM2 国密算法进行验签(步骤 13),安全性更高,但后端同学对接时得注意证书配置,别拿 RSA 的老套路去套,否则验签必挂。
- 避坑点:步骤 4 返回的
orderStr 是拉起收银台的关键,千万别在客户端拼接这玩意儿,必须在服务端组装好,防止篡改。
2. 平台类商户合单支付
如果你做的是像美团、京东这样的平台,购物车里可能有好几家不同商户的商品,这时候就需要“合单支付”。
👨💻 专家解读:
- 场景:用户一次支付,后台自动分账给子商户。
- 关键点:注意看步骤 1,这里创建的是“合单支付订单”。Payment Kit 会在后端处理复杂的资金流向,前端对于用户来说,依然只是一次支付动作。这大大降低了前端开发的复杂度,不用自己去写循环调起支付的恶心代码了。
3. 免密支付与签约
视频会员、打车软件自动扣费,靠的就是这个。
👨💻 专家解读:
- 二合一:注意步骤 7,这是一个原子操作“支付并签约”。很多老系统是先支付,成功后再弹个窗让用户签约,转化率极低。Payment Kit 把它合并了,用户体验顺滑很多。
- 双重回调:后端会收到两次回调(步骤 9 和 11),一个是扣款成功,一个是签约成功。千万别只处理一个,否则会导致业务状态不一致(比如扣了钱但没开通自动续费)。
4. 签约代扣(纯签约)
如果你只是想让用户先签个协议(比如水电费代扣),不涉及当场付款。
👨💻 专家解读:
- 流程分离:这个流程分为“签约”(前 13 步)和“代扣”(后 4 步)。签约是用户交互的,代扣是服务器后台静默发起的。
- 风控:步骤 14 发起代扣时,如果金额较大或频率异常,Payment Kit 服务端可能会拒绝,业务逻辑里要做好失败重试或降级处理(发短信提醒用户手动缴费)。
5. 数字人民币支付
这可是鸿蒙的一大杀手锏,原生支持央行数字货币。
👨💻 专家解读:
- 极简集成:你看这个图,比前面的都要简单。因为它是系统底层集成的。
- 加密差异:注意步骤 3,返回的是“订单加密信息”,数字人民币的安全性要求极高,数据传输全程加密,调试时候如果抓包看到一堆乱码别慌,那是正常的。
6. 混合支付(聚合模式)
最骚的操作来了。Payment Kit 收银台不仅能付华为支付,还能当一个“路由”,把支付请求转发给微信或支付宝。
👨💻 专家解读:
- 逻辑分支:这个图稍微有点绕。关键在步骤 6,收银台展示了所有选项。如果用户选了“微信支付”(场景 2),Payment Kit 不会自己处理资金,而是把控制权交还给你的 App(步骤 2 返回三方支付方式),然后你的 App 再去调微信的接口。
- 体验优化:虽然底层还是调的三方,但对用户来说,UI 是统一的。
7. 纯外部支付(只用收银台 UI)
如果你不想接华为支付的资金能力,只想蹭它的收银台 UI,也是可以的。
👨💻 专家解读:
- 空壳模式:这里的 Payment Kit 纯粹就是个 UI 皮肤。
- URL 跳转:注意步骤 6,对于 H5 支付或 URL Scheme 跳转的支付方式,Payment Kit 提供了封装,不用你自己去处理 WebView 的重定向逻辑,这点还是挺省心的。
二、 灵魂拷问:微信 vs 支付宝 vs 鸿蒙支付
都 2026 年了,咱们技术选型得看本质。这三家到底有啥区别?
| 维度 |
微信支付 |
支付宝 |
鸿蒙支付 (Payment Kit) |
| 定位 |
社交应用内置钱包 |
专业金融工具 |
系统级支付基础设施 |
| 接入形态 |
独立 SDK (App/JSAPI/H5) |
独立 SDK (App/Wap/Page) |
Unified Kit (聚合 SDK) |
| 核心优势 |
社交粘性大,用户覆盖率 99% |
金融属性强,信用支付完善 |
原生流畅、数字人民币、聚合能力 |
| 支付体验 |
需跳转微信 App |
需跳转支付宝 App |
系统内拉起,部分场景免跳转 |
| 特色功能 |
社交红包、公众号支付 |
花呗、芝麻信用 |
人脸核身(系统级)、华为账号绑定 |
| 跨端能力 |
依赖微信客户端 |
依赖支付宝客户端 |
分布式能力(手机付电视订单) |
| 验签方式 |
MD5/HMAC-SHA256/RSA |
RSA/RSA2 |
SM2 (国密) |
异同点总结:
- 同:都是基于 OAuth 2.0 的授权逻辑,都有“预下单 -> 拉起收银台 -> 异步回调”的标准三板斧。
- 异:鸿蒙支付最大的不同在于**“聚合”**。它不是要取代微信支付宝,而是把它们“包”进来。对于鸿蒙原生应用开发者来说,接一个 Payment Kit 约等于接了全家桶,而且还能享受到系统级的安全验证(如系统级人脸识别,不需要 App 自己搞一套活体检测)。
附:微信支付/支付宝支付
微信支付
APP支付业务流程
官方文档:微信APP支付
JSAPI支付业务流程
官方文档:微信JSAPI支付
H5支付业务流程
官方文档:微信H5支付
Native支付业务流程
官方文档:微信Native支付
小程序支付业务流程
官方文档:微信小程序支付
微信付款码免密支付业务流程
官方文档:微信付款码免密支付
微信付款码验密支付业务流程
官方文档:微信付款码验密支付
微信支付示例工程:微信支付示例工程
支付宝支付
APP支付业务流程
官方文档:APP支付
当面付业务流程
官方文档:当面付
付款码支付业务流程
手机网站支付业务流程
官方文档:手机网站支付
电脑网站支付业务流程
官方文档:电脑网站支付
刷脸支付业务流程
官方文档:刷脸支付
写在最后
看完这些流程图,相信你对鸿蒙支付的“套路”已经心里有数了。
在我看来,Payment Kit 最香的地方不在于它多了一个支付渠道,而在于它标准化了支付流程。以前我们在 App 里要写一堆 if (channel == WECHAT) { ... } else if (channel == ALIPAY) { ... } 的胶水代码。现在,这层脏活累活华为系统帮你干了。
对于开发者来说,赶紧把 SM2 国密验签 和 异步回调处理 这两块硬骨头啃下来,剩下的就是调 API 的事儿了。趁着鸿蒙生态还在爆发期,把支付这一环打通,绝对是提升应用转化率的关键一步。
加油,打工人!🚀
所有评论(0)