Madlifer 发表于 2018-2-11 14:27:35

一种实现个人微信二维码收款接口的方法

只有企业资质才能申请微信支付接口,作为一名程序员要想实现自动收款除了想办法搞到企业资质申请官方的微信支付接口外还可以想办法通过个人收款码来实现。

个人二维码收款码里面除了可以设计金额外还可以设置收款方的备注,这个收款方的备注在识别是哪个用户付款的时候会用到,需要与付款方的备注区分。


https://i.loli.net/2018/02/11/5a7fdffcdcebc.png

同一个金额按照不同的收款备注设置多个,然后保存到服务端,那么数据库有张表就保存了 收款备注,收款金额,收款二维码图片地址 ,收款状态这四个字段。姑且称之为收款码表。

如果有一个用户要付款,就从收款码表中找到一个金额匹配且收款状态为可收款状态的二维码,这个二维码给到用户的同时需要把对应收款状态设置为支付中状态。

在前台用户支付成功后,我们通过微信收款辅助工具(这个工具后面详细讲解),就可以获取到收款方备注,金额等信息。讲是收款方备注传给服务器,通过收款方备注服务器可以知道是哪个用户支付的。

为了避免一个用户长时间占这某个二维码不支付,我们需要在前后台都控制每隔5分钟设置收款状态为可支付状态。

这种实现办法适合小额,支付频率不高的场景。比如说我针对 1元这个金额生成了100个有不同收款备注信息的二维码,那么也就是说5分钟内最多只能有100个人同时支付,1分钟内20个同时支付。对于一些小网站可以满足需求。

接下来说一下微信收款辅助工具,这个工具主要的功能是,当接收到通知栏里面有微信收款通知的时候打开通知信息,获取收款信息,然后把收款信息发送给服务器去处理。

也就是说需要有一台手机24小时联网开着,实时的监听手机通知栏的信息。

作者:程序员Hani
链接:https://www.jianshu.com/p/7af43e25a955
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

可乐呀 发表于 2018-2-11 14:30:14

我知道支付宝有类似的,

京东 发表于 2018-2-11 14:32:13

技术类的 喷不了

youth 发表于 2018-2-11 14:34:46

貌似我签名就是通过这个实现的通过备注识别

wco789 发表于 2018-2-11 15:09:30

战略性马克

cmse 发表于 2018-2-11 15:54:55

是否可以不填写备注。直接通过付款金额来判断,程序自动添加金额尾数,必须10。12,以尾数着为区别

456 发表于 2018-2-11 15:56:15

所以没看到工具在哪里

fw2you 发表于 2018-2-11 15:59:05

可以生成金额为100.01,100.02...这样的一百的个金额?

黑壳虾 发表于 2018-2-11 16:26:15


fw2you 发表于 2018-2-11 15:59

可以生成金额为100.01,100.02...这样的一百的个金额?
那估计得用99.0199.02   多给的哪怕1分钱都会有人BB

spanfkyous 发表于 2018-2-11 15:59:00


static/image/smiley/default/lol.gif
量多的日子里,你自己都看的头晕,那么多订单
页: [1]
查看完整版本: 一种实现个人微信二维码收款接口的方法