本發明涉及電子支付技術領域,尤其涉及一種統一支付報文的數據處理方法及系統。
背景技術:
現有企業和金融機構的支付結算業務系統遵循如下邏輯:
支付體系和支付清算渠道類型眾多,銀行卡網絡、第三方支付、本地清算網絡、國際支付網絡為企業和金融機構的接入帶來了復雜性和差異性,企業通常構建不同的支付軟件系統分別支持不同的支付服務商或支付清算網絡業務,甚至分別構建不同的支付系統支持特定的支付清算網絡,如人行二代接入、超級網銀接入、農信銀接入以及同城接入等。
企業和金融機構的業務條線在交易過程中需要調用支付服務,需要根據不同的場景對接不同的支付系統,且交互的信息模型及服務接口定義均不相同。不同支付系統對支付清算業務存在復雜性和差異性的特點,在未能高度歸納和抽象的條件下,不能設計出統一的信息模型和業務邏輯處理模塊,因此導致了支付軟件系統的構建多樣化。支付業務處理邏輯在多支付系統和渠道的條件下,需要分別設計和實施,并無相同或相似的信息模型來構建統一的業務處理模塊,分別針對不同的支付業務需求設計不同的業務處理模塊。支付服務標準不統一,支付系統多樣化導致各業務和產品條線系統對接支付的難度更高,帶來了巨大成本。
需要提供標準化的支付服務標準與規范,簡化業務端的對接,并支持業務端對支付服務能力不斷提升的需求。
技術實現要素:
鑒于上述的分析,本發明旨在提供一種統一支付報文的數據處理方法及系統,用以解決現有支付服務標準不統一、支付系統多樣化所導致的各業務和產品條線系統對接支付的難度高、成本巨大的問題。
本發明的目的主要是通過以下技術方案實現的:
一種統一支付報文的數據處理系統,其特征在于,所述數據處理系統包括渠道接入模塊、網關、業務處理模塊、統一報文組包模塊、統一報文存儲模塊和統一報文查詢展示模塊;
所述渠道接入模塊包括屬于不同支付體系的多個渠道接入終端及多個配置于該渠道接入終端的渠道接入終端服務器,所述渠道接入終端服務器將對應渠道接入終端的操作生成支付清算報文,通過網關發送給業務處理模塊;
所述業務處理模塊接收來自不同支付體系的支付清算報文,根據其報文規范,提取所述報文中的數據并發送給統一報文組包模塊;
所述統一報文組包模塊對接收的數據進行組包處理,生成統一報文數據包并輸出;
所述統一報文存儲模塊,用于將統一報文組包模塊生成的統一報文數據包存儲到XML數據庫中,采用關系型存儲,結合整體報文存儲方式,對常用字段統一進行存儲和管理,對非常用字段利用XML的高可拓展性進行存儲;
統一報文查詢展示模塊,根據用戶輸入的查詢字段,從數據庫中查找并讀取統一報文。
所述報文規范包括:渠道系統、支付相關系統、支付相關信息、本地清算網絡提交的不同報文。
所述統一報文組包模塊進一步包括依次連接的邏輯層生成模塊、業務條件層生成模塊、內容生成模塊;
所述邏輯層生成模塊生成邏輯層數據,進一步包括元數據層和報文邏輯字段層;所述報文邏輯字段層用于對報文內容中各字段的詳細描述;
所述業務條件層生成模塊生成業務條件層數據。
所述內容生成模塊進一步包括:
報文頭生成模塊、通用信息項生成模塊、可修復報文項生成模塊、參考信息項生成模塊、交易狀態項生成模塊、報文關聯項生成模塊、附屬信息項生成模塊。
所述內容生成模塊生成的報文頭項、通用信息項、可修復報文項、參考信息項、交易狀態項、報文關聯項、附屬信息項加入到統一報文組包模塊輸出的統一報文數據包中。
所述統一報文存儲模塊在存儲統一報文的同時,會保留多份報文在備用數據庫中,包括原始報文、最終報文、報文修復及變更日志。
所述查詢字段包括MID、20場、21場、BIC、報文狀態、幣種、日期、賬號字段。
所述統一報文查詢展示模塊將統一報文根據業務類報文和非業務類報文分別進行展示,采用分頁方式展示其不同內容項。
所述統一報文查詢展示模塊根據支付清算報文的格式要求,選擇所需的數據發送給業務處理模塊轉換為對應的支付清算報文,通過網關發送給對應的渠道接入模塊。
一種統一支付報文數據處理方法,其特征在于,包括以下步驟:
步驟101:屬于不同支付體系的渠道接入終端服務器將對應渠道接入終端的操作生成支付清算報文;
步驟102:對于來自不同支付體系的支付清算報文,根據其報文規范,提取所述報文中的數據;
步驟103:對提取的數據進行組包處理,生成統一報文數據包并輸出;
步驟104:將生成的統一報文數據包存儲到XML數據庫中;
步驟105:根據用戶輸入的查詢字段以及支付清算報文的格式要求,從數據庫中查找所需的數據,將其轉換為對應的支付清算報文并進行展示。
本發明有益效果如下:
通過統一支付報文定義了統一的信息交互方式和信息標準,簡化了與支付清算網絡、金融機構對接的難度,實現了統一支付處理的基本條件,提供標準化統一的支付服務接口和規范。
通過統一支付報文組件對于元數據(枚舉/常量)定義與設計,進一步規范企業信息架構及數據管理,形成企業的信息標準。
統一支付報文抽象了不同的支付清算網絡,將支付清算業務的運營管理流程與邏輯標準化、簡易化,運營業務人員不需要理解不同支付清算體系和網絡的差異性,通過規范化的統一支付報文理解并管理支付與清算業務,大大降低了運營與管理成本,提高了業務管理效率。
基于統一的數據模型,同時提供了基于邏輯規則可配置、流程可配置的可能,使支付交易處理的流程與規則能夠配置化、參數化,系統更加靈活,擴展性更強。
統一支付報文標準降低了外圍系統、業務調用端的集成成本。
本發明的其他特征和優點將在隨后的說明書中闡述,并且,部分的從說明書中變得顯而易見,或者通過實施本發明而了解。本發明的目的和其他優點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現和獲得。
附圖說明
附圖僅用于示出具體實施例的目的,而并不認為是對本發明的限制,在整個附圖中,相同的參考符號表示相同的部件。
圖1為本發明具體實施例公開的統一支付報文數據處理系統的結構示意圖;
圖2為本發明具體實施例公開的統一報文組包模塊的結構示意圖;
圖3為本發明具體實施例公開的內容生成模塊的結構示意圖;
圖4為本發明具體實施例公開的統一支付報文數據處理方法的流程圖。
具體實施方式
下面結合附圖來具體描述本發明的優選實施例,其中,附圖構成本申請一部分,并與本發明的實施例一起用于闡釋本發明的原理。
本發明具體實施例公開了一種統一支付報文數據處理系統,如圖1所示,包括渠道接入模塊,網關,業務處理模塊,統一報文組包模塊,統一報文存儲模塊和統一報文查詢展示模塊。
所述渠道接入模塊包括多個渠道接入終端及多個配置于該渠道接入終端的渠道接入終端服務器,所述渠道接入終端服務器將對應渠道接入終端的操作生成支付清算報文,通過網關發送給業務處理模塊;
所述業務處理模塊接收來自不同支付體系的支付清算報文,根據其報文規范,提取所述報文中的數據并發送給統一報文組包模塊。具體地,所述報文規范包括:
渠道系統、支付相關系統、支付相關信息、本地清算網絡提交的不同報文。
所述統一報文組包模塊對接收的數據進行組包處理,生成統一報文數據包并輸出;如圖2所示,具體包括依次連接的邏輯層生成模塊、業務條件層生成模塊、內容生成模塊。
邏輯層生成模塊生成邏輯層數據,進一步包括元數據層和報文邏輯字段層;報文邏輯字段層用于對報文內容中各字段的詳細描述。
業務條件層生成模塊生成業務條件(限制條件)層數據;
所述內容生成模塊,如圖3所示,包括:
報文頭生成模塊,讀取接收數據中的報頭數據,包括:收發銀行信息、報文類型、報文ID、網絡標識、校驗信息;生成報文頭,并加入到統一報文組包模塊輸出的統一報文數據包中。
通用信息項生成模塊,讀取接收數據中的通用信息,包括:渠道信息、操作員ID、客戶賬號、客戶名稱;生成通用信息項,并加入到統一報文組包模塊輸出的統一報文數據包中。
可修復報文項生成模塊,當報頭數據中的報文類型為業務類報文時,讀取接收數據中的借記/貸記清算賬號、客戶地址、幣種(基礎貨幣、結算貨幣)、貸方支付路徑、簽約信息;生成可修復報文項,并加入到統一報文組包模塊輸出的統一報文數據包中。
參考信息項生成模塊,當報頭數據中的報文類型為業務類報文時,讀取接收數據中的賬戶聯機查詢信息(定/活期賬戶、賬戶注銷、賬戶鎖定、賬戶幣種、賬戶戶名等)、客戶聯機查詢信息(VIP客戶、客戶屬性等)、匯率聯機查詢信息(優惠匯率、實時匯率等);生成參考信息項,并加入到統一報文組包模塊輸出的統一報文數據包中。
交易狀態項生成模塊,當報頭數據中的報文類型為業務類報文時,讀取接收數據中的報文狀態(收到、修改、命中反洗錢、疑似命中發洗錢、復核、等待頭寸匹配、等待賬戶查詢結果、等待記賬反饋、NAK、等待MT012、請求撤銷、確認撤銷、完成等)、查詢查復狀態(發起查詢、調查中、收到查詢結果等)、記賬狀態(成功、部分成功、失敗);生成交易狀態項,并加入到統一報文組包模塊輸出的統一報文數據包中。當報頭數據中的報文類型為非業務類報文時,讀取接收數據中的報文狀態(收到、修改、復核、NAK、完成等);生成交易狀態項,并加入到統一報文組包模塊輸出的統一報文數據包中。
報文關聯項生成模塊,當報頭數據中的報文類型為業務類報文時,讀取接收數據中的原始報文、記賬條目、相關報文(MT202/202COV/910/900/940/950/191/192/999、Pacs.004/007、Camt.056等)、關聯文件、關聯組包、響應信息(ACK/NAK、MT012/019)、審計信息或費用(借方總費用,貸方總費用,折扣標記,費用折扣優惠,費用明細等);生成報文關聯項,并加入到統一報文組包模塊輸出的統一報文數據包中。當報頭數據中的報文類型為非業務類報文時,讀取接收數據中的交易類報文(如MT103/202)、關聯文件、關聯組包、響應信息(ACK/NAK)、審計信息;生成報文關聯項,并加入到統一報文組包模塊輸出的統一報文數據包中。
附屬信息項生成模塊,當報頭數據中的報文類型為業務類報文時,讀取接收數據中的備注信息、外部其他信息等;生成附屬信息項,并加入到統一報文組包模塊輸出的統一報文數據包中。當報頭數據中的報文類型為非業務類報文時,讀取接收數據中的備注信息等;生成附屬信息項,并加入到統一報文組包模塊輸出的統一報文數據包中。
統一報文存儲模塊,用于將統一報文組包模塊生成的統一報文數據包存儲到XML數據庫中,采用關系型存儲,結合整體報文存儲方式,對常用字段統一進行存儲和管理,對非常用字段利用XML的高可拓展性進行存儲。
進一步的,統一報文存儲模塊在存儲統一報文的同時,會保留多份報文在備用數據庫中,包括原始報文、最終報文、報文修復及變更日志。
統一報文查詢展示模塊,根據用戶輸入的查詢字段,從數據庫中查找并讀取統一報文,
具體地,所述查詢字段包括MID、20場、21場、BIC、報文狀態、幣種、日期、賬號字段。
所述統一報文查詢展示模塊將統一報文根據業務類報文和非業務類報文分別進行展示,采用分頁(TABS)方式展示其不同內容項。例如:
業務類報文的報文頭、通用信息項、交易狀態項、報文關聯項、附屬信息項和非業務類報文的報文頭、通用信息項、交易狀態項、報文關聯項、附屬信息項采用分頁(TABS)方式分別進行顯示。
進一步的,所述統一報文查詢展示模塊根據支付清算報文的格式要求,選擇所需的數據發送給業務處理模塊轉換為對應的支付清算報文,通過網關發送給對應的渠道接入模塊。
本發明具體實施例還公開了一種統一支付報文數據處理方法,如圖4所示,包括如下步驟:
步驟101:配置于多個渠道接入終端的渠道接入終端服務器將對應渠道接入終端的操作生成支付清算報文。
步驟102:對于來自不同支付體系的支付清算報文,根據其報文規范,提取所述報文中的數據。
具體地,所述報文規范包括:渠道系統、支付相關系統、支付相關信息、本地清算網絡提交的不同報文。
步驟103:對提取的數據進行組包處理,生成統一報文數據包并輸出;
具體包括:
生成邏輯層數據,進一步包括元數據層和報文邏輯字段層;報文邏輯字段層用于對報文內容中各字段的詳細描述;
生成業務條件(限制條件)層數據;
讀取接收數據中的報頭數據,包括:收發銀行信息、報文類型、報文ID、網絡標識、校驗信息,生成報文頭,并加入到統一報文數據包中;
讀取接收數據中的通用信息,包括:渠道信息、操作員ID、客戶賬號、客戶名稱,生成通用信息項,并加入到統一報文數據包中;
當報頭數據中的報文類型為業務類報文時,讀取接收數據中的借記/貸記清算賬號、客戶地址、幣種(基礎貨幣、結算貨幣)、貸方支付路徑、簽約信息,生成可修復報文項,并加入到統一報文數據包中。
當報頭數據中的報文類型為業務類報文時,讀取接收數據中的賬戶聯機查詢信息(定/活期賬戶、賬戶注銷、賬戶鎖定、賬戶幣種、賬戶戶名等)、客戶聯機查詢信息(VIP客戶、客戶屬性等)、匯率聯機查詢信息(優惠匯率、實時匯率等),生成參考信息項,并加入到統一報文數據包中。
當報頭數據中的報文類型為業務類報文時,讀取接收數據中的報文狀態(收到、修改、命中反洗錢、疑似命中發洗錢、復核、等待頭寸匹配、等待賬戶查詢結果、等待記賬反饋、NAK、等待MT012、請求撤銷、確認撤銷、完成等)、查詢查復狀態(發起查詢、調查中、收到查詢結果等)、記賬狀態(成功、部分成功、失敗),生成交易狀態項,并加入到統一報文組包模塊輸出的統一報文數據包中;當報頭數據中的報文類型為非業務類報文時,讀取接收數據中的報文狀態(收到、修改、復核、NAK、完成等),生成交易狀態項,并加入到統一報文數據包中。
當報頭數據中的報文類型為業務類報文時,讀取接收數據中的原始報文、記賬條目、相關報文(MT202/202COV/910/900/940/950/191/192/999、Pacs.004/007、Camt.056等)、關聯文件、關聯組包、響應信息(ACK/NAK、MT012/019)、審計信息或費用(借方總費用,貸方總費用,折扣標記,費用折扣優惠,費用明細等),生成報文關聯項,并加入到統一報文組包模塊輸出的統一報文數據包中;當報頭數據中的報文類型為非業務類報文時,讀取接收數據中的交易類報文(如MT103/202)、關聯文件、關聯組包、響應信息(ACK/NAK)、審計信息,生成報文關聯項,并加入到統一報文數據包中。
當報頭數據中的報文類型為業務類報文時,讀取接收數據中的備注信息、外部其他信息等,生成附屬信息項,并加入到統一報文組包模塊輸出的統一報文數據包中;當報頭數據中的報文類型為非業務類報文時,讀取接收數據中的備注信息等,生成附屬信息項,并加入統一報文數據包中。
步驟104:將生成的統一報文數據包存儲到XML數據庫中,采用關系型存儲,結合整體報文存儲方式,對常用字段統一進行存儲和管理,對非常用字段利用XML的高可拓展性進行存儲。
進一步的,在存儲統一報文的同時,會保留多份報文在備用數據庫中,包括原始報文、最終報文、報文修復及變更日志。
步驟105:根據用戶輸入的查詢字段以及支付清算報文的格式要求,從數據庫中查找并選擇所需的數據,將其轉換為對應的支付清算報文并進行展示。
具體地,所述查詢字段包括MID、20場、21場、BIC、報文狀態、幣種、日期、賬號字段。
優選地,將統一報文根據業務類報文和非業務類報文分別進行展示,采用分頁(TABS)方式展示其不同內容項。例如:
業務類報文的報文頭、通用信息項、交易狀態項、報文關聯項、附屬信息項和非業務類報文的報文頭、通用信息項、交易狀態項、報文關聯項、附屬信息項采用分頁(TABS)方式分別進行顯示。
本發明有益效果在于:
通過統一支付報文定義了統一的信息交互方式和信息標準,簡化了與支付清算網絡、金融機構對接的難度,實現了統一支付處理的基本條件,提供標準化統一的支付服務接口和規范。
通過統一支付報文組件對于元數據(枚舉/常量)定義與設計,進一步規范企業信息架構及數據管理,形成企業的信息標準。
統一支付報文抽象了不同的支付清算網絡,將支付清算業務的運營管理流程與邏輯標準化、簡易化,運營業務人員不需要理解不同支付清算體系和網絡的差異性,通過規范化的統一支付報文理解并管理支付與清算業務,大大降低了運營與管理成本,提高了業務管理效率。
基于統一的數據模型,同時提供了基于邏輯規則可配置、流程可配置的可能,使支付交易處理的流程與規則能夠配置化、參數化,系統更加靈活,擴展性更強。
統一支付報文標準降低了外圍系統、業務調用端的集成成本。
本領域技術人員可以理解,實現上述實施例方法的全部或部分流程,可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于計算機可讀存儲介質中。其中,所述計算機可讀存儲介質為磁盤、光盤、只讀存儲記憶體或隨機存儲記憶體等。
以上所述,僅為本發明較佳的具體實施方式,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發明的保護范圍之內。