APP调起支付分-确认订单

最新更新时间:2019.08.23 版本说明

商户通过调用确认订单接口打开微信支付分小程序,引导用户确认订单(APP端)

简介

App跳转支付分需要引用新的openSDK

Android openSDK下载地址(版本>=5.3.1):Android资源下载

Android 接入文档链接:openSDK说明文档

iOS openSDK下载地址(版本>=1.8.4):iOS资源下载

iOS 接入文档链接:openSDK说明文档


接口名称:WXOpenBusinessView 

接口兼容:

● iOS兼容性表现:若微信版本 >= 7.0.3,开发者可以通过此openSDK接口跳转到微信支付分小程序;若微信版本 < 7.0.3,开发者通过此openSDK接口可以跳转到微信,但不能跳转到微信支付分小程序,此时微信会提示用户可能由于应用的请求非法或者微信版本过低。

● Android兼容性表现:若微信版本>=7.0.3,开发者可以通过此openSDK接口跳转到微信支付分小程序;若微信版本< 7.0.3,开发者通过此openSDK接口不能跳转到微信,此时开发者应提示用户更新微信版本。

接口参数

Android对应对象:WXOpenBusinessView.Req

iOS对应对象:WXOpenBusinessViewReq

Object WXOpenBusinessView.Req & Object WXOpenBusinessViewReq

参数名 变量 类型[长度限制] 必填 描述
跳转类型 businessType string[1,16] 固定配置:wxpayScoreUse
示例值:wxpayScoreUse
业务参数 query string[1,2048] 使用URL的query string
方式传递参数,格式为key=value&key2=value2,其中value,value2需要进行UrlEncode处理。
示例值:见query示例
其他配置 extInfo string[1,128] 自定义ext信息,json格式,如需指定小程序版本,可填 {"miniProgramType": type},默认正式版。

type取值:
0:正式版
示例值:{"miniProgramType": 0}


mch_id=1230000109&package=XXXXXXXX&
timestamp=1530097563&
nonce_str=zyx53Nkey8o4bHpxTQvd8m7e92nG5mG2&
sign_type=HMAC-SHA256&sign=029B52F67573D7E3BE74904BF9AEA

query内部参数

参数名 变量 类型[长度限制] 必填 描述
商户号 mch_id string[1,32] 微信支付分配的商户号。
示例值:1230000109
扩展字符串 package string[1,128] 可在【创建订单】接口的返回字段package中获取。
示例值:XXXXXXXX
时间戳 timestamp string[1,32] 生成签名时间戳,单位秒。
示例值:1530097563
随机字符串 nonce_str string[1,32] 生成签名随机串。由数字、大小写字母组成,长度不超过32位。
示例值:zyx53Nkey8o4bHpxTQvd8m7e92nG5mG2
签名方式 sign_type string[1,32] 签名类型,仅支持HMAC-SHA256。
示例值:HMAC-SHA256
签名 sign string[1,64] 使用字段mch_id、package、timestamp、nonce_str、sign_type 按照签名生成算法计算得出的签名值。
示例值:029B52F67573D7E3BE74904BF9AEA

返回参数

Android 返回字段:WXOpenBusinessView.Resp

iOS返回字段:WXOpenBusinessViewResp

Object WXOpenBusinessView.Resp & Object WXOpenBusinessViewResp

参数名 变量 类型[长度限制] 必填 描述
跳转类型 businessType string
打开的业务类型。
示例值:wxpayScoreUse
返回信息 extMsg string
支付分返回的业务数据,json格式。
示例值:见extMsg示例

{"query_id":"XXXXXX","appid":"wxd8f3793ea3b935b8"}

extMsg内部参数:

参数名 变量 类型[长度限制] 必填 描述
单据查询ID query_id string[1,64] 单据查询id,对应【查询订单】接口中入参query_id。
示例值:XXXXXXXX
公众账号ID appid string[1,32] 支付分公众账号ID。
示例值:wxd8f3793ea3b935b8


WXOpenBusinessViewReq *req = [WXOpenBusinessViewReq object];
req.businessType = @"wxpayScoreUse";
req.query = @"mch_id=1230000109&package=XXXXXXXX&
timestamp=1530097563&
nonce_str=zyx53Nkey8o4bHpxTQvd8m7e92nG5mG2&sign_type=HMAC-SHA256&sign=029B52F67573D7E3BE74904BF9AEA";
req.extInfo = @"{\"miniProgramType\":0}";
[WXApi sendReq:req];

int wxSdkVersion = api.getWXAppSupportAPI();
if (wxSdkVersion >= Build.OPEN_BUSINESS_VIEW_SDK_iNT) {
  WXOpenBusinessView.Req req = new WXOpenBusinessView.Req();
  req.businessType = "wxpayScoreUse";
  req.query = "mch_id=1230000109&package=XXXXXXXX&
  timestamp=1530097563&
  nonce_str=zyx53Nkey8o4bHpxTQvd8m7e92nG5mG2&sign_type=HMAC-SHA256&sign=029B52F67573D7E3BE74904BF9AEA";
  req.extInfo = "{\"miniProgramType\": 0}";
  Boolean ret = api.sendReq(req);
} else {
  /*需提示用户升级微信版本*/
}
​
/********在WXEntryActivity的onResp里面接收回调,示例全码*******/
@Override
public void onResp(BaseResp r) {
  if (r.getType() == ConstantsAPI.COMMAND_OPEN_BUSINESS_VIEW) {
    WXOpenBusinessView.Resp launchMiniProgramResp = (WXOpenBusinessView.Resp) r;
    string
text = string
.format("nextMsg=%snerrStr=%snbusinessType=%s", resp.extMsg, resp.errStr, resp.businessType); Toast.makeText(this, text, Toast.LENGTH_lONG).show(); } }


版本说明

关闭
V1.0
2019.08.23
1. 开启/停用服务回调通知上线

技术咨询

反馈有奖