Android
更新时间:2025.07.02||
简介
商家转账用户确认模式下,商户通过在移动端应用APP中集成开放SDK调起微信请求用户确认收款。
接入前注意事项
接口说明
| Android兼容性表现:若微信版本>=8.0.45.51,开发者可以通过此openSDK接口调起用户确认收款页面;若微信版本< 8.0.45.51,开发者通过此openSDK接口不能跳转到微信或跳转微信后无法拉起用户确认收款页面,此时开发者应在拉起微信前提示用户更新微信版本。 |
|
接口参数
Android对应对象:WXOpenBusinessView.Req
请求参数
businessType 必填 string(16)
【业务类型】固定配置:requestMerchantTransfer
query 必填 string(2048)
【查询参数】使用URL的query string方式传递参数,格式为key=value&key2=value2,其中value、value2需要进行UrlEncode处理。
 | 属性 |
| mchId 必填 string(32) 【商户号】商户号,由微信支付生成并下发,和发起转账传入的mchid必须是同一个
subMchId 必填 string(32) 【子商户号】子商户号,由微信支付生成并下发,和发起转账传入的sub_mchid必须是同一个
appId 必填 string(32) 【商户AppID】微信开放平台审核通过的移动应用appid,和发起转账传入的appid必须是同一个
package 必填 string(1024) 【package信息】对应发起转账接口应答参数中的package_info(仅当转账单据状态为WAIT_USER_CONFIRM: 待收款用户确认时才返回),用于唤起用户确认收款页面。
subAppId 选填 string(1024) 【子商户AppID】微信开放平台审核通过的移动应用appid,如发起转账传入sub_appid,则需要传入,必须与发起转账时传入的值是同一个。 |
调用示例
Android示例

1int wxSdkVersion = api.getWXAppSupportAPI();
2if (wxSdkVersion >= 0x28002d33) {
3 WXOpenBusinessView.Req req = new WXOpenBusinessView.Req();
4 req.businessType = "requestMerchantTransfer";
5 req.query = "mchId=1230000000&appId=wx8888888888888888&subMchId=190000000&subAppId=wx8888888888888888&package=affffddafdfafddffda%3D%3D";
6 Boolean ret = api.sendReq(req);
7} else {
8
9}返回参数
Android对应对象:WXOpenBusinessView.Resp
businessType 必填 string(16)
【业务类型】打开的业务类型。
extMsg 必填 string
【扩展信息】返回的业务数据,格式为JSON字符串,如 {"result":"success"}。具体内部字段如下
 | 属性 |
| result 必填 string 【结果信息】 success:展示页面成功。
fail:展示页面失败。
cancel:用户取消。发生场景:用户未确认收款,点击取消,返回APP
|
返回示例

1
2resp.businessType == "requestMerchantTransfer"
3resp.extMsg == "{\"result\": \"success\"}" | 带有返回结果信息不代表订单确认成功,具体状态需以接口查询的结果为准。 |
|