微信支付从零到完成流程

 

随着移动业务的广泛使用,作为一个phper多少得懂些支付相关的技术。下面就为大家梳理一个PHP版本的支付的流程。

1. 微信公众平台的配置

1.1登录 https://mp.weixin.qq.com

开通微信支付(300元)

 

2. 商户配置

2.1 登录商户平台

https://pay.weixin.qq.com/index.php/partner/public/home

如果商户平台登录用户绑定了微信号就会出现:

 

2.2基本配置

 

 

支付可能遇到的配置选项。

 

 

 

 

安装证书

 

 

2.3配置安全API(开发必须)

 

 

 

设置一个32长度的API密钥。

 

下载证书(前提是已经安装了控件和证书)

 

3. 开发Demo(ThinkPHP,根据官方版本修改)

3.1 目录结构

 

3.2文件详情(lib库)

 

3.2.1配置文件

 

 

3.2.2代码调用

3.2.2.1在控制器的构造函数中引入

 

3.2.2.2 代码请求生成二维码

 

 

3.2.2.3处理回调

 

回调的具体处理的逻辑是在核心库里面,如果支付完成了,修改数据库中订单的状态为1。(微信的回调)

 

3.2.2.3 自定义回调检测订单状态

生成二维码之后,用户是否支付我们没有办法直接判断,通过在微信的回调函数中的订单的状态值我们可以判断,如果为1则支付成功,这时候就可以自定义操作了。

 

 

后台查询订单的状态,

 

 

 

                                                    

 

 

 

 

 

 

 

 

 

 

 

 

微信支付商家转账到零钱的功能通常涉及到第三方支付API的集成,比如微信支付提供的商户SDK。在Java中实现这个功能,你需要按照以下步骤操作: 1. **注册并获取API权限**: - 首先,需要在微信公众平台上注册成为服务商,并申请获取支付相关的API密钥和证书。 2. **引入微信支付库**: - 下载官方提供的微信支付Java SDK(如Wechat Pay Java SDK),将它添加到项目依赖中。 3. **创建订单**: - 创建一个包含交易信息的对象,如金额、订单描述等,然后通过SDK生成支付请求的统一下单接口调用。 ```java WxPayUnifiedOrder unifiedOrder = new WxPayUnifiedOrder(); unifiedOrder.setBody("转账说明"); unifiedOrder.setOutTradeNo("交易订单号"); unifiedOrder.setTotalFee("转账金额"); // 设置其他必要的参数,如openId、notifyUrl等 Map<String, String> result = unifiedOrder统一支付下单(); ``` 4. **用户授权并发起转账**: - 用户点击支付链接,会跳转到微信客户端进行身份验证并确认转账操作。 5. **处理回调通知**: - 商家服务器需要设置接收微信支付异步通知的URL,当转账完成或有状态变更时,微信会发送通知到该地址。 6. **检查结果和更新数据库**: - 接收到通知后,解析返回的数据,判断支付状态,成功则更新用户账户余额和交易记录。 注意:这只是一个基础流程概述,实际开发中还需处理异常、加密传输敏感数据以及遵循微信支付的安全策略。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闲不住的程序员

您的打赏将是我最大的鼓励感谢

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值