现在支付宝、微信扫码支付使用已经非常普遍。鉴于此,开发一台扫码支付服务器平台。作品集成了电子技术与软件技术与一体融合了GPRS通信,内部集成了与后台服务器的支付通信协议,对线下支付设备开发者提供了简易的接口。此外作品提供一路DTU链路,可供用户传输自由数据。
用户只需要熟悉串口通讯等通信协议,无须关心与微信支付和支付宝服务器的通信协议,只需要在服务器端设置好支付参数,就可以进行支付设备开发。大大缩短了,开发周期。目前共享设备异常火爆,这些设备都需要提供支付功能。
系统设计框图:
系统主要分为2个部分,用户串口数据的解析,和支付请求数据和支付返回数据的解析。
模块通过串口接收用户支付数据,先解析校验用户请求数据后,更具用户的支付金额等参数,生成AES加密支付报文,通过SIM800A 发送到后台服务器。
后台服务器对模块发送来的支付数据进行二次验证,验证通过后,根据需要向支付宝或者微信支付服务器发送支付请求数据。随后后台服务器将接收到微信和支付宝的支付链接数据
发送给模块,模块接收到这些数据后,经过验证,通过串口发送给用户设备。
此后,模块将进入等待支付结果状态。通过服务器的异步通知和模块定时轮休订单状况来确认当前订单的支付状态。定时将支付状态返回给用户。可以根据用户的设定,支付成功后,开启某个继电器。
总结:
本作品主要功夫主要在软件上面。涉及到支付等资金操作,对系统的稳定性可靠性要求非常高。
对每笔支付订单,需要能明确的给出支付状态,即使设备异常重启,也不能丢失订单状态。这就要服务端和设备端都要进行密切配合,对每笔订单的支付log都要落地。
在通信方面,GPRS 与服务器端的要维持长链接,通过心跳来保持连接。由于各种各种不可控,链接会中断,这就需要设备需要及时的重连的能力。设计一台优雅的重连机制非常重要。
未来产品近继续完善,加入软件远程升级能力,在协议方面会添加多种协议。
PS:该项目设计来源于立创社区,设计资料仅供学习参考。详见附件原文出处