前言
在APP中接入微信支付其实很简单,大部分工作主要都是后台完成,客户端只需要调用后台,得到后台返回的字符串后在调用微信的api即可。但是会有些坑,稍不注意就会掉坑里,下面会讲到。
一. 接入流程
在微信开发平台上有详细介绍,这个就不多说了。
交互时序图
交互图
商户系统和微信支付系统主要交互说明:
用户在商户APP中选择商品,提交订单,选择微信支付。
商户后台收到用户支付单,调用微信支付统一下单接口(后台处理,客户端不需要做)
统一下单接口返回正常的prepay_id,再按签名规范重新生成签名后,将数据传输给APP。参与签名的字段名为appId,partnerId,prepayId,nonceStr,timeStamp,package。注意:package的值格式为Sign=WXPay 。客户端拿到这些字段后就可以发起支付了。
二. APP端开发步骤
在调用api之前需要向微信注册你的appid,代码如下:
{ IWXAPI api; api= WXAPIFactory.createWXAPI(this, null); IWXAPI msgApi = WXAPIFactory.createWXAPI(context, null);
//xxx为你的appid
msgApi.reg