外幣卡收單系統的設計和實現

2021-05-22 20:54:24 字數 4235 閱讀 7793

隨著我國對外交往的不斷擴大,到我國旅遊和從事商務活動的外籍人士將越來越多,這對我國的銀行卡受理環境提出了更高的要求。另外,只有改善外幣卡受理環境,積極參與國際業務,才能積累豐富的國際金融業務經驗,進一步提高金融服務水平。因此,商業銀行提高對外幣卡的受理能力變得愈加重要,開發、建設功能強大的外幣卡收單系統是提公升外幣卡受理能力的重要途徑之一。抓住建設銀行對全行自助裝置進行統一整合並擴充功能的機會,可充分利用總行提供的資源,對建設銀行雲南省分行(以下簡稱我行)的科技產品進行大力創新。在這樣的背景下,我行完成了外幣卡收單系統專案。

一、設計思想

這裡的外幣卡包括:與建設銀行簽訂受理協議的visa卡、mastercard卡、american ex-press卡、diners club卡、jcb卡等在境外發行的外幣卡,以及中國境內所有銀行的國際借記卡和貸記卡。

外幣卡收單系統是繼龍卡業務系統、銀行卡聯網聯合系統、貸記卡收單業務系統之後的另一銀行卡業務系統,可實現取款/查詢交易、自動沖正、安全控制、清算/清分對賬,差錯處理/調賬、系統配置管理和統計分析等功能。

根據我行現有硬體資源和網路結構的實際情況,外幣卡收單系統必須對原有投資進行保護,充分利用現有的網路資源。必須遵循簡單、實用、低投入、高產出的原則。

在技術方面,實現交換平台到外卡中心以及外卡中心到交換平台的交易**。在交換平台和外幣卡收單系統介面之間採用訊息佇列的通訊方法,在外幣卡收單系統介面和外卡中心之間採用tcp/ip通訊協議。

二,系統結構

外幣卡收單系統實現了總/分結構的設計目標,各分行的外幣卡交易可通過外卡總中心**至國際組織,通過外卡總中心將國際組織返回的清算檔案清分至各分行清算。系統採用資料全集中模式,實現了資料的集中管理。同時,外卡分中心可以通過該系統提供的web介面處理相關業務。這種設計方式與建設銀行資料大集中的方向是一致的,有利於將來系統的移植改造甲。

三.通訊介面

基於上述基本架構,外卡總中心與各接入行分中心之間提供基於tcp/ip協議的通訊軟體介面,以保證各接入行能快速經濟地與外卡總中心進行報文交換。

1.全雙工套接字連線

通訊軟體介面在初始化時即連線單個套接字,此套接字同時用於傳送和接收報文,初始化結束後即可進行報文交換。採用通訊軟體介面使用乙個套接字同時傳送與接收報文的方式。節省了套接字的數量,提高了其使用效率,節省了有限的系統資源。由於軟體介面只使用乙個套接字,時序問題比較簡單,服務方接到報文的順序和客戶方傳送的順序相同,不會出現對交易的沖正建議先於原交易到達的情況。

2.通訊軟體介面的長連線性和可設定性

利用通訊軟體介面的長連線特性,可省去每條報文前的通訊連線過程,從而使報文交換速度加快。該種介面適用於中介**為不按時間收費的通訊網路的情況。利用通訊軟體介面的可設定性,外卡總中心發布工作ip位址和埠號以及測試ip位址和埠號給接入行,各接入行只能連線到給定的ip位址/埠號。

3.通訊軟體的流程要求

在通訊軟體介面的基礎上,外卡總中心對通訊軟體的內部流程做出一定的規範(如8583報文

規範等),以避免一些不必要的爭議,方便各接入行軟體的編制。

4.通訊連線的建立

通訊鏈路的建立是訊息包交換的必要條件,而鏈路的建立過程是乙個服務方(server)對客戶方(client)做出響應的過程。外卡分中心總是作為服務方等待各接入行的atm前置機發起連線。而外卡分中心又作為客戶方主動向外卡總中心的主機發起連線。

5.報文的交換

套接字初始化過程結束以後,雙方即可開始報文的交換,線路上傳輸的訊息包不但滿足

tcp/ip協議的特性,也符合外卡總中心的特殊規範和業務流程的要求。

6.長度頭的使用

由於tcp/ip訊息包是乙個位元組流的慨念,外卡總中心會要求在每個訊息包中包含整個包的長度資訊,訊息包長度以4位ascii碼格式表示的4位十進位制整數提供,高位缺位以「o」表示。整個訊息包的格式如下:前4個位元組作為乙個ascii字串,指明訊息內容的長度(不包含上述4個位元組)。緊接著便是規範的is08583報文。先讀進4個位元組後,根據其長度再接收後繼的is08583報文,並對報文進行業務流程處理。

7.訊息合法性的驗證

通訊程序接收到訊息包後,即可對訊息包進行解讀,發現某些情況時即認為通訊異常從而轉入差錯處理。外卡總中心認為的異常包括:一是,收到零長度的訊息包(注意,並非訊息包的長度域為零),則認為對方關閉套接字;二是,套接字自動消失則被認為是鏈路層出現問題;三是,訊息包的長度域若不是ascii編碼的十進位制數字,則認為訊息交換過程中出現亂碼。各接入行的異常判別除以上幾點外還有:收到訊息包的長度域為零、收到的訊息包無法解讀、訊息包的長度與被解讀的長度不符。

8.差錯處理

通訊異常發生後,由於不希望人工干預的經常性介入,出錯後的恢復機制就顯得尤為重要。在我們所採用的通訊架構的約束下,當套接字發生異常時,通訊程序關閉套接字,並重新進入初始化階段。若有訊息包在應用層等待傳送,通訊程序則根據業務邏輯決定是返回原始傳送方錯誤響應,還是把其保留下來,並在出錯恢復完成後嘗試重發或丟棄。

四. 功能模組

1.取款/查詢交易

atm發起的交易請求都是經atm前置機、外卡分中心和外卡總中心處理後發向國際信用組

織。國際信用卡組織將應答傳送給外卡總中心,由外卡總中心**給外卡分中心,再由外卡分中心**給atm前置機。當atm前置機收到國際組織的應答後,向後台核心傳送請求;當atm前置機收到後台核心的應答後,向atm傳送指令。

2.異常交易自動沖正

為保證賬務的一致性,完整性和準確性,對交易還設定了配套的沖正機制,無需人工干涉,由系統自動發起。對所有的異常情況,如宕機、應用出錯、報文丟失、網路節點線路不通、單方拒絕請求和響應都給予相應的自動沖正。

3.安全控制

目前,外卡介面的安全控制主要是對ping lock進行轉加密,在交易發起時,此工作是在ets主控中完成的。對於每筆交易的ping lock,要求所有的atm和前置加密機通過3des演算法、128位金鑰進行加密,確保系統滿足國際組織的要求。

4.清算/清分對帳

總中心將清算資料(總數和流水)傳給收單行,並劃美元款到收單行國際業務部。系統為了

保障資金交易的有效性,提供了兩類對賬過程其一,和國際組織的對賬過程;其二,和交易收單行的對賬過程。通過對賬發現並處理差錯和生成清算憑證,由財務部門根據生成並列印的財務憑證進行清算。

5.差錯處理/調賬

適用於對賬不平後的差錯處理。如果發現對賬不平,在差錯平台上可以請款、調整、一次退單、再請款、二次退單。如果我行和國際組織仍然對錯賬存有爭議,則可完全參照國際組織的規定進行,包括仲裁的流程和手續。由收單行/區域中心向總中心提請,如果為內部事宜,按《建設銀行爭議處理辦法》解決,如果為國際組織事宜。由外卡總中心集中向國際組織提請。

6.系統監控/配置管理

資訊配置管理模組是用於對系統的引數、指令碼進行配置處理,其主要功能是:通訊線略檢測、系統簽到/簽退、系統金鑰交換、配置系統引數(如卡bin,功能列表等)。並為操作人員提供配置格式轉換指令碼和路由指令碼的介面。同時,系統交易情況和裝置狀態的詳細資訊也可以定製,從而有選擇地進行日常執行維護。

7.統計分析

收單行處理交易的收益是相當可觀的,取款交易約有1.25美元的回傭,非取款交易約有.25美元的回傭,如果沒收偽造卡還有100美元的獎勵。因此,必須本著「誰受理,誰受益」的原則,將其細分給**網點。通過這樣的方式,促成積極開拓外幣卡市場的良性迴圈,從而使我行的外幣卡收單市場日益擴大。基於以上原因,外幣卡收單系統按日生成清算結果報表,以此和國際業務部劃轉的實有資金進行核對軋差。並且,每月對外幣卡收單業務的交易筆數和金額進行統計,產生報表,以此為根據,為發生外幣卡收單業務的網點劃撥服務費。

五.系統效能

為了保證系統的高效性、靈活性、穩定性和可用性,在設計中不僅借用了現代化管理中的流水線手段,還借用了網路中的交換概念。

為保證系統能夠以流水線的方式進行交易處理,系統各模組之間的通訊採用了新晨q的郵箱機制。各個模組從自己分配的郵箱中獲得工作任務,處理完成後,發至下乙個工作模組的郵箱中,然後再從自己的郵箱中讀取另乙個工作任務。這樣的處理方式保證了系統的非同步處理能力。由於郵箱是基於訊息佇列、共享記憶體和檔案綜合運用的基礎而產生的,故可為系統提供比訊息佇列、共享記憶體更大的使用空間、更安全的操作方式和比檔案更靈活、高效的處理方式。能夠確保資訊得到足夠的緩衝,大大提高了工作效率和抗衝擊性,也提高了系統的穩定性。

為了保證交易的靈活性,首先,在交易的處理過程中,通過定義交易的各個過程,對每個過程配置不同的交易函式,這些函教都放在連線庫中,通過配置介面和交易關聯起來。這樣,對於任何乙個交易的處理都可以通過配置來決定其具體的處理方式,可保證交易的靈活性。其次,通過可配置格式轉換器、交易路由等工具,使整個交易能夠在靈活狀態下進行增加、修改和刪除操作。再次,在報文轉換方面,充分利用了新晨公司的格式轉換器,以保證系統的靈活性。

自2023年11月系統投產以來。到目前為止,已實現外幣卡收單交易近1000筆,交易金額達100多萬美元。在系統的有力支援下,我行的外幣卡收單業務呈加速上公升態勢,帶來了豐厚的中間業務收入。

外幣卡收單系統的設計和實現

隨著我國對外交往的不斷擴大,到我國旅遊和從事商務活動的外籍人士將越來越多,這對我國的銀行卡受理環境提出了更高的要求。另外,只有改善外幣卡受理環境,積極參與國際業務,才能積累豐富的國際金融業務經驗,進一步提高金融服務水平。因此,商業銀行提高對外幣卡的受理能力變得愈加重要,開發 建設功能強大的外幣卡收單...

工單系統表的設計

from django.contrib.auth.models import abstractuser from django.db import models create your models here.使用者表 class user abstractuser mobile models.ch...

卡牌遊戲戰鬥系統的設計和實現(二)

在一篇文章中,我更多的是從遊戲理論的角度,討論了戰鬥的系統的設計。這篇文章中,我將從程式的角度,以一款航海類遊戲為例,實現戰鬥系統。在航海類遊戲中,戰鬥角色是出海的船隻,一次出海的船隻的數量有限定,船隻可以裝配火炮,護甲,船帆等裝備,船隻還可以通過裝配船長來獲取技能。技能的發動是有概率的。戰鬥規則是...