微信支付开发笔记-小程序支付

2024-07-18  本文已影响0人  TerryLaravel

在做任何开发工作前都要有清晰的思路,思路不清工作就没有办法开展,就会出现到处乱撞,到处踩坑的现象,进度无法撑控,领导不满意,客户不满意等一系列问题。

一、理清思路:搞清楚在哪开通微信支付?

微信支付要在微信商户平台开通。

微信商户平台的支付业务服务于微信的各个产品,如公众号、小程序、网页支付、扫码支付等,所以还要把微信商户平台与具体业务服务关联起来,比如要想开发小程序支付,就需要在微信商户平台上添加小程序应用。
具体操作这里暂不多讲。(如有需要日后补充,或单独发文)
弄清楚了这些,我们就知道我的具体工作了:

  1. 申请开发通小程序, 在微信公众号平台开通。
  2. 申请开通微信商户号,在微信商户平台开通。
  3. 关联微信商户号和小程序。在微信商户平台操作。

二、准备工作

对于程序员开讲,开发微信支付(以小程序为例)需要账号或密钥?

字段 说明 获取方法
APP_ID 小程序id 登录小程序查看、获取。
APP_SECRET 小程序密钥 登录小程序查看、获取。
APIV3_KEY 微信支付V3 密钥 登录微信商户平台(账户中心->API安全模块)自行设置。
商户支付证书 商户支付证书 通过微信证书下载工具下载,相关说明参见微信文档。接入前准备-小程序支付
商户支付证书序列号 商户支付证书序列号 通过命令从证书中提取 openssl x509 -in apiclient_cert.pem -noout -serial
微信平台支付证书 微信平台支付证书 通过下载工具从微信平台下载。wechatpay-php

三、开发过程(代程流程)

  1. 前端小程序发起购买请求。
  2. 后端接收到请求后,根据自业务逻辑创建订单。
  3. 根据“准备工作中”的账号和证书等内容初始化一个网络请求对象(通常为http client),
  4. 按照微信接口的要求组装支付数据,调用微信统一下单接口创建微信支付订单,请求成功后得到预支付订单号ID:prepay_id。
  5. 按照微信的要求组装前端支付所需的数据,其中会需要加密,返回给前端。
  6. 前端小程序根据后端返回的支付数据,通过wx.requestPayment调起支付。
  7. 用户输入支付密码完成支付。
  8. 前端小程序在wx.requestPayment.sccess中处理支付成功的逻辑。
  9. 后端接收到微信的支付结果通知后中处理支付成功的逻辑。

四、注意事项

  1. 支付回调url是在调用微信支付时动态设置的,不是在微信商户平台里配置。
上一篇下一篇

猜你喜欢

热点阅读