个人网站即时到账收款解决方案
时间:2023-05-22 07:40:01 | 来源:网站运营
时间:2023-05-22 07:40:01 来源:网站运营
个人网站即时到账收款解决方案:原文发表于我的博客: https://blog.xu42.cn/
开源:
https://github.com/xu42/pay演示:
https://pay.xu42.cn/
个人开发者要想给自己的产品(网站、APP等)接入支付宝、微信的即时到账接口,是有一定的门槛的,一般是需要公司资质,这也就阻碍了不少个人开发者的兴趣。市面上也有一些第三方聚合支付,但往往费率较高或是信赖度低。本文要介绍的就是一种个人可以接入的基于有赞云的解决方案。
前置条件
注册开发者
只需在 有赞云 进行个人开发者身份注册就可以了。
店铺授权
- 创建可授权店铺: 微商城店铺 或者 有赞微小店 都可以。前者面向商家提供功能完善的线上商城,后者面向个人提供分销商品和自营工具可免费使用;
- 应用授权: 创建完店铺后,再登录到有赞云控制台创建自用型应用并授权刚创建的店铺;
- 设置推送网址: 在有赞云控制台-推送服务 进行推送网址的设置,有赞云会将支付信息推送到这里设定的网址;
至此,完成前置条件,下面是开发相关的。
开发
依赖接口
依赖有赞云的两个接口和消息推送.
- 创建收款二维码
- 获取单笔交易信息
- 交易信息推送简要流程
简单介绍下开发流程/思路。
- 开发者在需要向用户展示收款链接或二维码的时候,调用
创建收款二维码
接口(可创建可多次使用和仅能使用一次等多类型二维码),接口返回二维码信息(唯一id、链接和二维码),开发者需要自行创建用户身份和该二维码之间的关联关系; - 当用户扫码后点击微信支付/支付宝支付,会收到
WAIT_BUYER_PAY
等待支付事件消息,待用户完成支付会收到TRADE_SUCCESS
支付成功事件消息(更多事件消息可点击交易信息推送进行了解); - 开发者收到的交易信息中的
id
可理解为订单号,接着用此id
调用获取单笔交易信息
接口,该接口返回的信息TradeDetail 比较多,我们需要关心的是qr_id
字段,对应到第一步创建的收款二维码的唯一id,开发者即可关联到用户的支付状态并进行后续处理;
至此,了解了开发的流程,下面是一个简单的Demo。
Demo
基于上述分析,开发了一个简单的收款Demo。
前端:HTML5 WebSocket + Vue
后端:PHP + WorkerMan
开源: xu42/pay
点此来体验一把~
欢迎留言交流~