鸿蒙
更新时间:2026.07.17||
提示:本功能目前处于灰度测试阶段、暂未开放使用,待全量开放后将通过文档门户公告同步,感谢您的理解。 商户通过申请二级商户充值接口获取充值的必要参数package_info后,可使用微信支付提供的openSDK调起微信充值到商户账户页面,引导用户充值到指定商户账户。
openSDK资源下载及说明
App调起微信充值SDK需引用版本号>=1.0.5的openSDK(建议使用最新版本的openSDK)
HarmonyOS Next openSDK下载地址(版本>=1.0.5):鸿蒙资源下载
HarmonyOS Next 接入文档链接:openSDK说明文档
| HarmonyOS Next兼容性表现:若微信版本 >= 8.0.11.34,开发者可以通过此openSDK接口跳转到微信充值到商户账户页面;若微信版本 < 8.0.11.34,开发者通过此openSDK接口不能跳转到微信或跳转微信后无法拉起充值到商户账户页面,此时开发者应在拉起微信前提示用户更新微信版本。 |
|
接口对象:OpenBusinessViewReq
字段说明
请求参数
businessType 必填 string(32)
【业务类型】固定配置:requestMerchantRecharge
query 必填 string(2048)
【查询参数】使用URL的query string方式传递参数,格式为key=value&key2=value2,其中value、value2需要进行UrlEncode处理。
 | 属性 |
| mchid 必填 string(32) 【商户号】平台商户号,由微信支付生成并下发,发起充值的指令方商户号。
subMchid 必填 string(32) 【二级商户号】商户号,由微信支付生成并下发,出资商户号。
packageInfo 必填 string(1024) 【package信息】对应申请二级商户充值接口返回的package_info,用于唤起微信充值到商户账户页面。 |
调用示例
HarmonyOS Next示例

1import * as wxopensdk from '@tencent/wechat_open_sdk';
2
3export const WXApi = wxopensdk.WXAPIFactory.createWXAPI(APP_ID);
4
5
6async sendRequestMerchantTransfer() {
7 let req = new wxopensdk.OpenBusinessViewReq
8 req.businessType = "requestMerchantRecharge";
9 req.query = "mchid=1230000000&subMchid=1230000003&packageInfo=affffddafdfafddffda%3D%3D";
10 let finished = await WXApi.sendReq(getContext(this) as common.UIAbilityContext, req);
11}返回参数
返回对象:OpenBusinessViewResp
| 成功回调不代表充值成功,应根据返回码判断充值是否成功。 |
|
businessType 必填 string(32)
【业务类型】打开的业务类型。
extMsg 必填 string
【扩展信息】返回的业务数据,格式为JSON字符串。具体内部字段如下
 | 属性 |
| result 必填 string 固定值:success
data 必填 string 【业务数据】  | 属性 | | code 必填 string(32) 【返回码】 SUCCESS:充值成功。
USER_CANCEL:用户取消或充值失败。
PARAM_ERROR:参数错误,请检查传入参数格式是否正确。
INVALID_REQUEST:请求失败,参数格式正确,但不符合业务规则,请查看失败原因。
message 选填 string(1024) 【失败原因】不建议展示给用户,仅用于商户的开发人员定位失败原因。 |
|

1
2
3onResp(resp: wxopensdk.BaseResp): void {
4 if (resp instanceof wxopensdk.OpenBusinessViewResp) {
5 if ("requestMerchantRecharge" === resp.businessType) {
6
7 }
8 }
9}回调参数示例

1{
2 businessType: 'requestMerchantRecharge'
3 extMsg: {
4 result: 'success',
5 data: {
6 code: 'SUCCESS' | 'USER_CANCEL' | 'PARAM_ERROR' | 'INVALID_REQUEST',
7 message: '...'
8 }
9 }
10}