支持多種支付通道的統一支付接入網關的制作方法
【技術領域】
[0001]本發明屬于電子支付技術領域,更為具體地講,涉及一種支持多種支付通道的統一支付接入網關。
【背景技術】
[0002]隨著互聯網的逐漸普及,電子商務技術得以發展,使其逐步成為了互連網應用的最大熱點。為適應電子商務這一市場潮流,電子支付隨之發展起來。電子支付是指電子交易的當事人,包括消費者、廠商和金融機構,使用安全電子支付手段,通過網絡進行的貨幣支付或資金流轉。電子支付是電子商務系統的重要組成部分。電子支付的業務類型按電子支付指令發起方式分為網上支付、電話支付、移動支付、銷售點終端交易、自動柜員機交易和其他電子支付。電子支付服務可以由銀行提供,也可以由第三方支付平臺來提供。
[0003]由于電子支付的大力發展,電子支付已經從線上擴展到了線下。除了網絡商家,許多實體商戶(例如商場、超市、零售商等)也開始采用電子支付,為消費者提供更為靈活的支付方式。在眾多的電子支付服務商中,實體商戶通常為滿足其消費支付款需求,會選擇幾種。這是因為各電子支付服務商具有各自的電子支付平臺,如果像網絡商家一樣盡可能多地涵蓋各種電子支付方式,實體商戶就需要安裝很多電子支付軟件或電子支付設備,會給支付和結算帶來許多不便。
【發明內容】
[0004]本發明的目的在于克服現有技術的不足,提供一種支持多種支付通道的統一支付接入網關,為接入商戶提供一點接入多點支付的服務。
[0005]為實現上述發明目的,本發明包括統一支付接口、解密處理模塊、協議適配模塊、支付處理模塊,其中:
[0006]統一支付接口接收來自接入商戶客戶端的包含支付模式編碼的支付請求報文和支付驗證報文,驗證報文格式的合法性和格式,驗證正確后將報文發送給解密處理模塊;接收支付處理模塊發送的反饋報文,發送給接入商戶客戶端;
[0007]解密處理模塊接收統一支付接口轉發的支付請求報文和支付驗證報文,如果與接入商戶客戶端的通信模式為加密模式,則對報文進行解密然后進行驗簽,否則直接進行驗簽,驗簽成功后將報文數據發送給協議適配模塊;
[0008]協議適配模塊從解密后的支付請求報文和支付驗證報文提取出支付模式編碼,在預存的支付方式編碼表中查詢得到該報文對應的支付模式和對應的第三方支付接口,將原始的支付請求報文和支付驗證報文按照對應的第三方支付接口的所規定的報文格式轉換為重構報文,將支付模式、第三方支付接口編號和重構報文發送到支付處理模塊;
[0009]支付處理模塊在接收到協議適配模塊發送的支付模式、第三方支付接口編號和重構報文后,首先根據用戶預設的業務對本次請求進行預處理,包括記錄支付記錄、發送支付通知,然后判斷本次請求的支付模式是前臺模式還是后臺模式,并按照對應的第三方支付接口報文加密規則對重構報文進行加密,然后通過第三方支付接口將加密后報文發送給第三方支付平臺;接收第三方支付平臺反饋的處理結果報文,進行解密和解析,如果本次請求的支付模式是前臺模式,則從處理結果報文中提取出頁面地址,根據與統一支付接口通信的報文格式構建反饋報文,發送給統一支付接口,如果本次請求的支付模式是后臺模式,則將處理結果報文根據與統一支付接口通信的報文格式構建反饋報文,發送給統一支付接
□ ο
[0010]進一步地,統一支付接口采用無線通信方式收發信息。
[0011]進一步地,報文格式轉換的方法為:將統一支付接口報文中的各個字段與第三方支付平臺的報文字段一一對應,不能完全對應的字段采用預編碼的方式設置固定數據值或固定算法賦值。
[0012]進一步地,支付處理模塊在提取出支付處理結果的有效信息后,如果支付處理結果為支付成功,則根據交易流水號在支付請求記錄中提取出對應的支付請求,發送給賬務處理系統。
[0013]本發明支持多種支付通道的統一支付接入網關,包括統一支付接口、解密處理模塊、協議適配模塊、支付處理模塊,統一支付接口接收由客戶端發送的包括支付模式編碼的支付請求和支付驗證信息,轉發給解密處理模塊進行解密,協議適配模塊從解密后的支付請求中提取出支付模式編碼和對應第三方支付接口信息,查詢得到支付模式,支付處理模塊重新封裝報文發送給第三方支付平臺,接收到第三方支付平臺的處理結果報文后根據支付模式的執行模式構建反饋報文,發送給客戶端。
[0014]本發明通過協議適配模塊進行支付模式識別,然后按照支付模式相應的報文格式和執行模式完成支付請求與處理,從而使客戶端通過本發明只需使用一套標準的交易請求報文對接統一支付接入網關實現多種支付模式和多種第三方支付平臺的對接,為接入商戶客戶端提供一點接入多點支付的服務,簡化了客戶端的操作和代碼開發工作。
【附圖說明】
[0015]圖1是本發明支持多種支付通道的統一支付接入網關的結構圖;
[0016]圖2是米用本發明進行B2C支付的流程圖。
【具體實施方式】
[0017]下面結合附圖對本發明的【具體實施方式】進行描述,以便本領域的技術人員更好地理解本發明。需要特別提醒注意的是,在以下的描述中,當已知功能和設計的詳細描述也許會淡化本發明的主要內容時,這些描述在這里將被忽略。
[0018]圖1是本發明支持多種支付通道的統一支付接入網關的結構圖。如圖1所示,本發明支持多種支付通道的統一支付接入網關包括統一支付接口 1、解密處理模塊2、協議適配模塊3、支付處理模塊4。
[0019]統一支付接口 1作為接入商戶客戶端與統一支付接入網關的接口,接入商戶的各種支付請求報文或支付驗證報文都由客戶端生成,通過統一支付接口 1發送給統一支付接入網關。統一支付的接口 1把從接入商戶客戶端接收到的支付請求報文和支付驗證報文發送給解密處理模塊2。為了使統一支付接入網關完成對各種支付服務平臺的協議適配,統一支付接口 1需要驗證請求報文的合法性以及格式是否正確,基本的交易要素是否完整。交易要素應該包含商戶編號、支付計劃ID(用于賬務處理系統計算費率)、交易流水號、訂單金額等常規支付信息外,還需要包括支付模式編碼以及一般需要經過加密的交易結果通知地址、交易結果返回地址、數字簽名等密文信息。
[0020]解密處理模塊2負責統一支付網關與接入商戶客戶端之間消息的解密,即接收支付請求報文和支付訂單信息報文進行解密和驗簽。解密功能可以根據實際的通信模式進行開啟或關閉,如果與接入商戶客戶端的通信模式為加密模式,則對報文進行解密然后進行驗簽,否則直接進行驗簽,驗簽成功后將報文數據發送給協議適配模塊3。本實施例中,采用統一支付接入網關的128位私鑰進行解密,然后使用商戶端在統一支付接入網關上預留的128位公鑰進行驗簽。
[0021]協議適配模塊3在接收到解密后的支付請求信息后,從解密后的支付請求信息提取出支付模式編碼,在預存的支付方式編碼表中查詢得到該支付請求對應的支付模式和對應的第三方支付接口,按照對應的報文協議轉換算法將原始的支付請求報文和支付驗證報文按照對應的第三方支付接口所規定的報文格式轉換為重構報文,將支付模式、第三方支付接口編號和重構報文發送到支付處理模塊4。
[0022]目前較多使用的支付通道有支付寶、微信支付、連連支付、銀聯線上支付等,較流行的支付模式包括B2C支付、快捷支付、銀行代扣、掃碼支付、WAP支付等。在進行報文格式轉換時,本實施例中采用的報文格式轉換算法為:將統一支付接口報文字段與對應的第三方支付平臺中支付接口的請求報文字段建立對應關系,對于無法對應的字段,如:數字簽名字段、消息通知等,采用預編碼形式設置固定數據值或固定算法,從而實現協議轉換。
[0023]支付處理模塊4負責對統一支付網關從客戶端和第三方支付平臺接收的支付信息進行處理與發送,主要包括:
[0024](1)支付預處理:在接收到支付模式、第三方支付接口編號和重構報文后,根據用戶預設的業務對本次請求進行處理,例如向接入客戶端或相關業務系統發送支付通知,預先寫入支付記錄等;
[0025](2)判斷支付模式的執行模式,并按照對應的第三方支付接口報