一種金融交易管理系統的製作方法
2023-10-17 18:44:34 1
本發明涉及一種管理系統,尤其涉及一種金融交易管理系統。
背景技術:
在現有的金融交易管理系統,在商戶端的櫃面佔用較大,商戶端費用開支多,交易步驟繁瑣,不便於商戶端統一收銀及管理。現有的收銀系統客戶端,由於客戶量眾多(紅旗連鎖+舞東風就有4000餘家,還加上其他商戶),如果軟體有什麼問題,讓維護人員跑4000個店來更換系統,成本非常高。現有類似於qq、瀏覽器等軟體,均是提示用戶手動升級,不能做到對用戶100%透明,這對於收銀員來講是額外負擔。例如出現了更新,要求收銀員去重啟程序甚至收銀機,是較難實現的,一來她們可能不會操作,二來可能權限不足。
技術實現要素:
本發明的目的就在於提供一種解決了上述問題的金融交易管理系統。
為了實現上述目的,本發明採用的技術方案是:一種金融交易管理系統,系統採用C/S結構,主要由一個服務端和若干客戶端組成,
所述客戶端從操作界面收集到必要的數據之後,在後臺通過動態庫來組包解包再由伺服器端執行實際的交易業務處理,並藉由sp30硬體密鑰存儲和加解密設備,對交易過程中敏感數據加密解密,實現交易防篡改和破解,由sp30加密組包返回給動態庫,再由動態庫請求至服務端進行處理,動態庫收到服務端反饋的消息後,傳送給sp30,sp30獲取交易結果信息,從交易信息中獲取必要信息進行列印,並將最終結果反饋給動態庫,動態庫再將數據反饋至界面;
所述服務端接收到客戶端上送報文時,先取出pkg_type區分報文的協議格式,若為8583協議報文則繼續取出appType,然後根據appType查找相應的8583域屬性配置,根據此配置解析收到的報文,再組裝成交易系統報文,上送至交易系統處理並等待返回結果,服務端收到交易系統處理結果後,解析交易系統返回的報文並記錄數據,然後組裝成客戶端報文反饋至SP30。
作為優選,所述客戶端採用windows圖形設備接口編程進行界面開發。
作為優選,所述服務端採用java實現,系統啟動時根據appType值將配置有不同8583域屬性的配置加載至內存。
作為優選,所述服務端採用了JDK1.7的AIO異步非阻塞IO模型進行數據收發提高並發效率。
作為優選,所述pkg_type區分報文的協議格式,若為自定義報文協議,即進行客戶端軟體自動升級。
所述客戶端軟體自動升級的方法步驟如下,
a.維護人員將配置,程序的版本號,升級程序文件等維護到服務端,
b.客戶端啟動時更新線程,線程中每間隔一段時間向伺服器獲取最新版本號;
c.比較伺服器版本號和本機版本號,如果有差異,則需要升級更新;
d.如果需要升級,則開始向伺服器請求文件數據,開始下載;
e.下載的數據存放在臨時文件中,下載完成後向伺服器獲取文件校驗,驗證下載是否正確;
f.驗證下載正確之後將交易業務加鎖,然後釋放之前的交易業務動態庫;
g.將臨時文件改名為正式文件,正式文件刪除;
h.重新加載新的動態庫,並導出接口;
i.釋放交易業務的鎖,並通知伺服器更新完成。
作為優選,步驟b中,客戶端和伺服器的通信採用自定義協議,報文頭+包體組成,報文頭採用固定的格式,包體採用TLV格式,其中數據欄位採用二進位形式傳遞。
作為優選,客戶端採用分包的方式逐步下載。
作為優選,維護人員將配置,程序的版本號,升級程序文件等維護到服務端,客戶端會在啟動時或定時向服務端獲取相應版本,如果有更新則啟動更新向服務端發送報文獲取升級程序,客戶端採用分包的方式逐步下載,以臨時文件對升級包進行下載存儲,然後在下載完成後,在後臺瞬間替換完成升級。
與現有技術相比,本發明的優點在於:本發明實現了收銀一體化操作,減少和信通受理環境在商戶端的櫃面佔用,減少商戶端不必要的費用開支(網絡等),減少繁瑣的交易步驟,便於商戶端統一收銀及管理。進行透明化的自動升級,避免了外派維護人員去門店進行人工維護的麻煩。
附圖說明
圖1為本發明原理框圖;
圖2為客戶端軟體自動升級的流程框圖。
具體實施方式
下面將對本發明作進一步說明。
實施例:參見圖1,一種金融交易管理系統,系統採用C/S結構,主要由一個服務端和若干客戶端組成,
所述客戶端採用windows圖形設備接口編程進行界面開發,從操作界面收集到必要的數據之後,在後臺通過動態庫來組包解包再由伺服器端執行實際的交易業務處理,動態庫將用戶的交易請求封裝成自定義協議包傳向底層,底層解析客戶端的交易,並封裝成SP30的消息包,發向SP30進行密鑰加密,並藉由sp30硬體密鑰存儲和加解密設備,對交易過程中敏感數據加密解密,實現交易防篡改和破解,由sp30加密組包返回給動態庫,再由動態庫請求至服務端進行處理,動態庫收到服務端反饋的消息後,傳送給sp30,sp30獲取交易結果信息,從交易信息中獲取必要信息進行列印,並將最終結果反饋給動態庫,動態庫再將數據反饋至界面;
電腦端以軟體的方式,來取代POS機的絕大部分功能,除了刷卡和輸入密碼本身無法被代替,將多個支付渠道的多個POS機融合成一臺SP30設備,減少了每個渠道部署的POS機在櫃面的佔用,也減少了每個渠道的網絡部署開支。
具體方法為:
電腦端軟體界面採用GDI繪圖的方式進行創建,用滑鼠或者鍵盤選擇的方式,來代替POS機上面的功能選擇;用鍵盤的數字鍵輸入的方式,代替POS機上面的數據輸入(比如金額等數字型數據)。對於POS機的系統設置,例如伺服器地址等等,在電腦軟體端採取配置的方式進行管理。需要預先配置好各項參數,然後再啟動軟體。軟體啟動後會從配置文件讀取各項參數,將程序初始化,然後就可以正常進行交易功能。
交易過程中,電腦軟體端收集所有交易所需的數據(例如交易金額、二維碼號碼等等),然後後臺會把這些數據組成數據包,傳遞給sp30,SP30會根據交易,提示用戶操作(例如提示刷卡,或者提示其他信息),操作完成後,SP30會把數據進行加密,並且按照ISO8583協議對數據進行組包,然後返回給電腦軟體端;軟體端接收到SP30返回的數據之後,直接傳遞給伺服器(伺服器地址和埠等信息都在上述配置文件中),然後伺服器會反饋交易結果,此時將交易結果的數據包傳遞給SP30,SP30解密之後,判斷交易結果(成功、失敗、密碼錯誤等信息),並將交易結果顯示在自己的屏幕上,然後再將交易結果按照和電腦軟體端協定好的協議,反饋到軟體端,軟體根據sp30的返回結果,在界面上提示用戶(成功、失敗、密碼錯誤等信息)。
交易完成後,會有小票的列印,此時軟體端會驅動熱敏印表機,進行列印。該過程是採用了印表機廠商提供的驅動接口進行的。這個功能也是取代了POS機的列印小票的功能。
客戶端是在商戶收銀機中相對獨立的軟體模塊,為動態庫或獨立運行的程序,客戶端主要負責三方面的通訊:
1、與收銀系統交換必要的參數,如:交易金額,交易類型等。
2、與MIS-POS進行會話式通信,採集金融交易的必要信息,如:二磁軌信息等。
3、與服務端通信,傳送和接收金融交易報文等信息。
所述服務端採用java實現,系統啟動時根據appType值將配置有不同8583域屬性的配置加載至內存,有利於提高運行效率。系統啟動時加載至內存,之後使用配置時不用從硬碟讀取,而是直接內存讀取,提高讀取效率;配置文件被修改後也不會影響正常交易,同步至內存後,新的交易才會使用新的配置。所述服務端採用了JDK1.7的AIO模型進行數據並發處理,提高並發效率;
所述服務端接收到客戶端上送報文時,先取出pkg_type區分報文的協議格式:若為8583協議報文則繼續取出appType,然後根據appType查找相應的8583域屬性配置,根據此配置解析收到的報文,再組裝成交易系統報文,上送至交易系統處理並等待返回結果,服務端收到交易系統處理結果後,解析交易系統返回的報文並記錄數據,然後組裝成客戶端報文反饋至SP30。交易系統處理採用POSP處理。
服務端存在於商戶收銀網絡中,通過電信專線與和信通支付網絡相連接,負責與客戶之間的通訊,服務端接收到來自客戶端的金融交易報文後,進行相應的存儲並將報文(或經處理後)通過專線發送至和信通成都在線支付中心,並等待應答。並記錄收銀一體化系統的所有交易,提供整個商戶的交易查詢和報表等功能。
pkg_type區分報文的協議格式,若為自定義報文協議,即進行客戶端軟體自動升級。
客戶端軟體自動升級的方法步驟如下,如圖2
a.維護人員將配置,程序的版本號,升級程序文件等維護到服務端,
b.客戶端啟動時或定時更新線程,向服務端獲取相應版本,如果有更新則啟動更新向服務端發送報文獲取升級程序,線程中每間隔一段時間向伺服器獲取最新版本號,客戶端和伺服器的通信採用自定義協議,報文頭+包體組成,報文頭採用固定的格式,包體採用TLV格式,其中數據欄位採用二進位形式傳遞;
c.比較伺服器版本號和本機版本號,如果有差異,則需要升級更新;
d.如果需要升級,則開始向伺服器請求文件數據,開始下載;
e.下載的數據存放在臨時文件中,下載完成後向伺服器獲取文件校驗,驗證下載是否正確;
f.驗證下載正確之後將交易業務加鎖,然後釋放之前的交易業務動態庫;
g.將臨時文件改名為正式文件,正式文件刪除;
h.重新加載新的動態庫,並導出接口;
i.釋放交易業務的鎖,並通知伺服器更新完成。
客戶端採用分包的方式逐步下載,以臨時文件對升級包進行下載存儲,然後在下載完成後,在後臺瞬間替換完成升級,升級邏輯完全對用戶透明,無需專業人員到客戶端進行上門更新。傳統的升級過成,一般來說要求用戶重啟軟體,甚至手動點擊更新,然後經過漫長的等待。我們採用的是以臨時文件對升級包進行下載存儲,然後在下載完成後,在後臺瞬間替換完成升級,使步驟e至f的過程僅需要毫秒級別(甚至更低)的時間來進行,因此針對收銀員和待付款的顧客而言,幾乎可以忽略這種時間消耗,從而達成對用戶幾乎透明的效果,完全不會對用戶以及收銀員而言完全沒有負擔。自動升級實現之後,避免了外派維護人員去幾千家門店進行人工維護的麻煩,也極大減小了人力成本。
以上對本發明所提供的一種金融交易管理系統進行了詳盡介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式及應用範圍上均會有改變之處,對本發明的變更和改進將是可能的,而不會超出附加權利要求所規定的構思和範圍,綜上所述,本說明書內容不應理解為對本發明的限制。