招行支付插件说明
【wx】gaogaoEagle
插件集成准备
- 从招行获得appid和appScheme
- manifest.json中App原生插件配置,云端插件选择试用或购买的插件,并配置Android端的appScheme
- manifest.json中App常用其他设置 下拉找到iOS设置,在UrlSchemes中配置iOS端的appScheme,如有多个用","号分隔。注:不能在Android设置的UrlSchemes里配置appScheme。
- 制作uniapp自定义调试基座,运行到手机设备进行调试。
注:
1: appScheme如有更改,必需要重新制作自定义基座,
2: 基座打包完成后,建议卸载基座后重新运行安装基座调试。
插件接口调用
插件对象
var CMBPayApi = uni.requireNativePlugin('CMB-Pay');
接口及参数
接口调用请事先准备好招行的appid和scheme
招行app是否安装 isCMBAPPInstalled()
var ret = CMBPayApi.isCMBAPPInstalled();
支付 cmbPay(json,callback)
CMBPayApi.cmbPay({
appid:"",//商户在招商银行相应的业务功能商户系统中的appid,即:4位分行号+6位商户号。
requestData:"",//支付、协议、领券等业务功能等请求参数,具体内容由业务功能给出具体内容,SDK透传,会将该字段信息Post给对应功能页面
CMBJumpAppUrl:"",
CMBH5Url:"",
method:"pay"//(可选)业务功能类型,SDK透传,支付默认上送pay
}, function(res){
console.log(res);
});
1)CMBH5Url与CMBJumpAppUrl至少有一个赋值。
2)若只赋值CMBH5Url则SDK只打开h5页面不跳转招商银行APP。
3)若只赋值CMBJumpAppUrl则只跳转招商银行APP。如果用户没有安装招商银行APP,方法返回false。
4)若CMBH5Url和CMBJumpAppUrl均赋值,则SDK先检查用户手机设备有没有安装招商银行APP,已安装则跳转招商银行APP,未安装则打开H5业务功能页面。
回调响应 res:
{
"type":"onPayResult",
"data":{
"respCode":0,
"respMsg":"支付成功"
}
}
respCode 对照表(来自招行开放文档)
返回值 | 描述 |
---|---|
-3 | 支付状态未知 |
-2 | 参数不正确 |
-1 | 支付失败 |
0 | 支付成功 |
1 | 签约成功 |
2 | 签约失败 |
3 | 签约状态未知 |
8 | 用户取消 |
9 | 网络异常 |
常见问题
招行appid是什么,从哪里获得来
商户在招商银行相应的业务功能商户系统中的appid,即:4位分行号+6位商户号
scheme是什么,从哪里获得
招商银行会给每个商户分配独一无二的商户scheme。当用户在招商银行APP内完成支付后,凭scheme跳转回商户应用。uni中的配置请看本文的“集成准备”
扫描二维码关注公众号,回复:
15511450 查看本文章
测试方法
集成插件后,如果招行给的是测试appid,需要下载招行的测试版本app
招行测试app(ios和Android)下载
测试app启动后选择 "uat"环境