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