Android
更新时间:2026.07.17||
提示:本功能目前处于灰度测试阶段、暂未开放使用,待全量开放后将通过文档门户公告同步,感谢您的理解。 商户通过申请二级商户充值接口获取充值的必要参数package_info后,可使用微信支付提供的openSDK调起微信充值到商户账户页面,引导用户充值到指定商户账户。
openSDK资源下载及说明
App调起微信充值SDK需引用版本号>=5.3.1的openSDK(建议使用最新版本的openSDK)
| 若微信版本 >= 8.0.45.51,开发者可以通过此openSDK接口跳转到微信充值到商户账户页面;若微信版本 < 8.0.45.51,开发者通过此openSDK接口不能跳转到微信,此时开发者应提示用户更新微信版本。 |
|
接口说明
接口对象: WXOpenBusinessView.Req
字段说明
请求参数
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,用于唤起微信充值到商户账户页面。 |
示例代码

1int wxSdkVersion = api.getWXAppSupportAPI();
2if (wxSdkVersion >= 0x28002d33) {
3 WXOpenBusinessView.Req req = new WXOpenBusinessView.Req();
4 req.businessType = "requestMerchantRecharge";
5 req.query = "mchid=1230000000&subMchid=1230000003&packageInfo=affffddafdfafddffda%3D%3D";
6 Boolean ret = api.sendReq(req);
7} else {
8
9}返回参数
返回对象: WXOpenBusinessView.Resp
| 注意 成功回调不代表充值成功,应根据返回码判断充值是否成功。 |
|
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@Override
3public void onResp(BaseResp r) {
4 if (r.getType() == ConstantsAPI.COMMAND_OPEN_BUSINESS_VIEW) {
5 WXOpenBusinessView.Resp launchMiniProgramResp = (WXOpenBusinessView.Resp) r;
6 string
7 text = string
8.format("nextMsg=%snerrStr=%snbusinessType=%s",
9 resp.extMsg, resp.errStr, resp.businessType);
10 Toast.makeText(this, text, Toast.LENGTH_lONG).show();
11 }
12}回调参数示例

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}