微信小程序支付(JSAPI支付坑)

一、参考文档:

  1、微信JSAPI支付官方文档:https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_3&index=1;

二、开发前准备:

   1、必须申请微信公众平台(企业用户开通);

  2、必须开通小程序平台,并与微信公众平台进行绑定;

  3、必须开通微信商户平台,并妥善保管号商户号和商户密钥;

   (值得说明的是:微信商户密钥在拿到手之后,请首先重置三次以上,具体原因不清楚,但是不重置的话,后期开发的时候,微信统一下单接口会频繁报错,而且错误信息莫名其妙,主要报错信息为:“签名错误”,即使你的参数签名在微信的签名校验工具中校验通过,也会提示你“签名错误”,但是此时你无需对接口做任何改动,只需要重置商户密钥3次以上,此问题便可解决)

  4、网站升级https协议,因为调用微信支付成功后,微信服务器会对你传值的回调地址(notify_url字段,可以理解为具体的业务逻辑处理方法路径)进行回调,(虽然目前统一下单接口可以回调http协议接口,但是仍然建议网站升级为https协议);

 

三、支付流程

  1、统一下单接口,后台通过统一下单接口,向微信请求下单支付,微信后台接到参数后,会生成一个商户订单,并将预下单id(prepay_id 这个返回字段很重要)返回给后台;

  2、后台接收微信返回值,进行二次签名,并将签名的参数返回给小程序前台;

  3、小程序端接收到签名参数后,调用 wx.requestPayment 方法,传入参数,调起收银台;

  4、用户支付后,微信服务器处理本次支付情况,并回调后台业务处理接口。

你可能感兴趣的:(thinkphp5,小结)