关于appcan调用微信支付接口
关于app调用微信支付接口
操作方法
- 01
一:业务流程 1:申请微信公众号 获取微信公众号开发者id及密钥 2:申请开通微信开发者账户 在开发者管理中心,申请相关APP调用ID及密钥 3:申请开通微信商户账户 申请开通商户账户后,需要按照第二步的步骤进行资料审核,审核通过后方可进行APP支付 二:开发流程 1:注册微信 在开发者平台找到申请支付的app应用的id,进行微信注册 2:判断手机是否安装微信 3:判断是否支持微信支付 主要取决于该公众号是否已经申请微信商户号 4:调起微信预支付功能 预支付接口及相关参数说明 https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=9_1 var param1 = { appid:// 微信公众号id mch_id://微信商户号id nonce_str: //随机字符串,不长于32位 body:,//商品描述 out_trade_no:,// 商户订单号 fee_type:"CNY", // 货币类型,默认为CNY 人民币支付 total_fee:,//总金额 spbill_create_ip:,//APP和网页支付提交用户端ip notify_url:,// 接收微信支付异步通知回调地址,通知url必须为直接可访问的url,不能携带参数 trade_type:"APP", //交易类型 APP ,JSAPI等 sign: //签名 备注1 }; alert('yuzhifu:'+param1); var data1 = JSON.stringify(param1); // alert(data1+'data1'); uexWeiXin.getPrepayId(data1); //微信预支付 备注1: 将param1参数根据ascll码从小到大排序(字典序),使用url键值格式拼接成新字符串,并且加密,如: $str=” appid=x&body=x&fee_type=CNY&mch_id=x&nonce_str=x¬ify_url=x&out_trade_no=x&spbill_create_ip=x&total_fee=x&trade_type=x"; Key值设置在:账户设置-->API安全-->密钥设置 签名:sign=MD5($str.key).toUpperCase(); 其中KEY:账户设置-->API安全-->密钥设置 5:微信支付 微信支付及相关参数说明 https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=9_12&index=2 var param2 = { appid:, //公众号ID noncestr://随机数 package:"Sign=WXPay", //固定格式 partnerid:, //商户ID prepayid:, //预支付交易会话ID ,从预支付回调函数中获得 备注1 timestamp:,//时间戳 sign:qianming //签名 备注2 }; 备注1: uexWeiXin.getPrepayId(data1); 回调上面方法后,获得data1.prepayid 备注2: 签名与预支付签名算法一样,如下: str="appid= &noncestr=&package=Sign=WXPay&partnerid=&prepayid=×tamp=" sign=MD5(str.key) .toUpperCase(); 支付返回状态值: 0 :成功 -1 :可能的原因:签名错误、未注册APPID、项目设置APPID不正确、注册的APPID与设置的不匹配、其他异常等。 -2 :无需处理。发生场景:用户不支付了,点击取消,返回APP