微信支付流程

微信支付的前后端实现:

目录:

0:商家需要-商户平台账号,然后将小程序和商户平台账号做关联

1:前端登录获取随意code,发送到后端获取到openId

2:获取到openId之后,进行账号绑定。前端向后端请求要支付接口,获得paySign字段

3:前端调用wx支付接口

4:微信支付成功,回调api接口

 

申请微信支付

点击申请接入

点击去注册,会让你去扫码,拿商家的微信扫码下。

然后你就一步步的按微信的来,申请账号申请完成之后会得到:

mch_id:商户号

api_key:商家key

一、获取openID

https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html

  • 前端通过wx.login接口获取到code
  • 将code发送到服务端去
  • 服务端接收到code,创建请求参数,使用requests往指定的微信地址发送数据包
  • GET https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
  • requests获取到json数据,用户唯一标识 OpenID(用一个用户在不同小程序的openId是不一样的)和会话密钥 session_key。

 二、获取到paySign字段

前端调用后端接口,后端需要调用统一接口得到预支付单号prepay_id,然后再对参数进行第二次的加密。将得到的接口返回到前端

 

 

 

 

 

 

 

 

三、前端调起微信支付接口

前端拿到paySign之后,调用wx.requestPayMent接口

四、微信支付成功通知

支付之后,微信会往我们指定的通知api接口进行通知,

如果后端的接口一直是宕机的状态,微信不能通知到,微信会24小时之内不定时的进行重新发送请求。

接口返回的结果一定要按微信要求的xml格式,否则微信会认为这次通知请求是失败的

 

posted @ 2022-02-28 18:23  你是我的神奇  阅读(1122)  评论(0编辑  收藏  举报