現(xiàn)在支付寶、微信掃碼支付使用已經(jīng)非常普遍。鑒于此,開發(fā)一臺掃碼支付服務(wù)器平臺。作品集成了電子技術(shù)與軟件技術(shù)與一體融合了GPRS通信,內(nèi)部集成了與后臺服務(wù)器的支付通信協(xié)議,對線下支付設(shè)備開發(fā)者提供了簡易的接口。此外作品提供一路DTU鏈路,可供用戶傳輸自由數(shù)據(jù)。
用戶只需要熟悉串口通訊等通信協(xié)議,無須關(guān)心與微信支付和支付寶服務(wù)器的通信協(xié)議,只需要在服務(wù)器端設(shè)置好支付參數(shù),就可以進(jìn)行支付設(shè)備開發(fā)。大大縮短了,開發(fā)周期。目前共享設(shè)備異?;鸨@些設(shè)備都需要提供支付功能。
系統(tǒng)設(shè)計框圖:
系統(tǒng)主要分為2個部分,用戶串口數(shù)據(jù)的解析,和支付請求數(shù)據(jù)和支付返回數(shù)據(jù)的解析。
模塊通過串口接收用戶支付數(shù)據(jù),先解析校驗用戶請求數(shù)據(jù)后,更具用戶的支付金額等參數(shù),生成AES加密支付報文,通過SIM800A 發(fā)送到后臺服務(wù)器。
后臺服務(wù)器對模塊發(fā)送來的支付數(shù)據(jù)進(jìn)行二次驗證,驗證通過后,根據(jù)需要向支付寶或者微信支付服務(wù)器發(fā)送支付請求數(shù)據(jù)。隨后后臺服務(wù)器將接收到微信和支付寶的支付鏈接數(shù)據(jù)
發(fā)送給模塊,模塊接收到這些數(shù)據(jù)后,經(jīng)過驗證,通過串口發(fā)送給用戶設(shè)備。
此后,模塊將進(jìn)入等待支付結(jié)果狀態(tài)。通過服務(wù)器的異步通知和模塊定時輪休訂單狀況來確認(rèn)當(dāng)前訂單的支付狀態(tài)。定時將支付狀態(tài)返回給用戶。可以根據(jù)用戶的設(shè)定,支付成功后,開啟某個繼電器。
總結(jié):
本作品主要功夫主要在軟件上面。涉及到支付等資金操作,對系統(tǒng)的穩(wěn)定性可靠性要求非常高。
對每筆支付訂單,需要能明確的給出支付狀態(tài),即使設(shè)備異常重啟,也不能丟失訂單狀態(tài)。這就要服務(wù)端和設(shè)備端都要進(jìn)行密切配合,對每筆訂單的支付log都要落地。
在通信方面,GPRS 與服務(wù)器端的要維持長鏈接,通過心跳來保持連接。由于各種各種不可控,鏈接會中斷,這就需要設(shè)備需要及時的重連的能力。設(shè)計一臺優(yōu)雅的重連機(jī)制非常重要。
未來產(chǎn)品近繼續(xù)完善,加入軟件遠(yuǎn)程升級能力,在協(xié)議方面會添加多種協(xié)議。
PS:該項目設(shè)計來源于立創(chuàng)社區(qū),設(shè)計資料僅供學(xué)習(xí)參考。詳見附件原文出處