金融交易處理系統(tǒng)的交易異常處理單元及方法
【專利摘要】本發(fā)明提供一種金融交易處理系統(tǒng)的交易異常處理單元及方法,屬于金融交易處理系統(tǒng)的異常處理【技術(shù)領(lǐng)域】。該交易異常處理方法,其包括步驟:根據(jù)發(fā)生在金融交易處理系統(tǒng)的交易中的異常所處的交易階段、交易狀態(tài)、以及交易類別,在出錯(cuò)報(bào)文中映射相應(yīng)的異常處理流程標(biāo)識(shí);基于該異常處理流程標(biāo)識(shí)獲取對(duì)應(yīng)的異常處理流程;以及集中地執(zhí)行每個(gè)異常所對(duì)應(yīng)的異常處理流程。本發(fā)明的交易異常處理機(jī)制具體有擴(kuò)展性好、后期處理進(jìn)程異常處理簡單的特點(diǎn),能提高金融交易處理系統(tǒng)的速度、靈活性和可維護(hù)性。
【專利說明】金融交易處理系統(tǒng)的交易異常處理單元及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于金融交易處理系統(tǒng)的異常處理【技術(shù)領(lǐng)域】,涉及一種按照異常所處的交易階段、交易狀態(tài)、交易類別來執(zhí)行相應(yīng)異常處理流程的異常處理單元及方法。
【背景技術(shù)】
[0002]當(dāng)前的金融交易處理系統(tǒng)中,一般地采用多進(jìn)程、分階段處理的機(jī)制進(jìn)行交易處理。圖1所示為金融交易處理系統(tǒng)與外界系統(tǒng)的結(jié)構(gòu)示意圖。如圖1所示,支付終端10用于實(shí)現(xiàn)刷卡支付等支付功能,其能夠發(fā)起交易活動(dòng);上游系統(tǒng)30是指發(fā)卡方系統(tǒng)等;支付終端10與上游系統(tǒng)30均與金融交易處理系統(tǒng)的交易處理中心20連接,實(shí)現(xiàn)交易相關(guān)數(shù)據(jù)的傳遞。交易處理中心20可以進(jìn)行交易請求處理、交易應(yīng)答處理等相關(guān)操作,一般采用流水線作業(yè)方式進(jìn)行操作處理。但是在交易相關(guān)操作發(fā)生異常時(shí),交易處理中心20會(huì)進(jìn)行異常處理,從而相關(guān)交易處理被擱置,交易處理的效率因異常的發(fā)生而大大降低。
[0003]中國專利申請?zhí)枮镃N200910180854.1、名稱為“一種支付業(yè)務(wù)異常交易的處理方法及系統(tǒng)”的中國專利中,其公開的異常處理方法包括:在支付業(yè)務(wù)發(fā)生異常交易時(shí),生成包含有交易記錄必要信息的異常交易日志;根據(jù)所述異常交易日志,按照設(shè)定的異常處理規(guī)則對(duì)異常交易進(jìn)行處理。該專利中提出的異常處理方法存在以下缺點(diǎn):(一)該方法關(guān)注的支付業(yè)務(wù),處理流程較為簡單,并且僅僅關(guān)注金額、狀態(tài)是否異常;(二)該方法并不能全面的覆蓋復(fù)雜的金融類交易處理、及其發(fā)生的各種異常情況;(三)該方法的異常處理僅涉及金融交易處理系統(tǒng)內(nèi)部,不涉及與金融交易處理系統(tǒng)外部的交互的異常情況處理。因此,總體上,該異常處理系統(tǒng)的異常處理功能上較為簡單,且在靈活性、使用范圍上有較大的局限性。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的之一在于,提高異常處理的效率并使其不影響交易處理的流水線作業(yè)。
[0005]本發(fā)明的又一目的在于,提出一種適用范圍廣、可維護(hù)性好的金融交易處理機(jī)制。
[0006]為實(shí)現(xiàn)以上目的或者其他目的,本發(fā)明提供以下技術(shù)方案。
[0007]按照本發(fā)明的一方面,提供一種金融交易處理系統(tǒng)的交易異常處理方法,其包括以下步驟:
根據(jù)發(fā)生在金融交易處理系統(tǒng)的交易中的異常所處的交易階段、交易狀態(tài)以及交易類別,在出錯(cuò)報(bào)文中映射相應(yīng)的異常處理流程標(biāo)識(shí);
基于該異常處理流程標(biāo)識(shí)獲取對(duì)應(yīng)的異常處理流程;以及集中地執(zhí)行每個(gè)異常所對(duì)應(yīng)的異常處理流程。
[0008]按照本發(fā)明一實(shí)施例的交易異常處理方法,其中,所述異常處理流程由異常處理的一個(gè)或多個(gè)功能節(jié)點(diǎn)組成,所述功能節(jié)點(diǎn)按照異常處理的功能來定義。
[0009]進(jìn)一步,所述異常處理流程標(biāo)識(shí)通過參數(shù)配置的方式調(diào)用一個(gè)或多個(gè)功能節(jié)點(diǎn)以獲取相應(yīng)的異常處理流程。
[0010]按照本發(fā)明又一實(shí)施例的交易異常處理方法,其中,在所述出錯(cuò)報(bào)文中生成異常處理標(biāo)志,通過所述異常處理標(biāo)志,判斷是否對(duì)所述出錯(cuò)報(bào)文已經(jīng)進(jìn)行異常處理。
[0011]在之前所述任一實(shí)施例的交易異常處理方法,優(yōu)選地,在所述映射異常處理流程標(biāo)識(shí)之前,還包括步驟:
判斷所述出錯(cuò)報(bào)文是否成功獲取錯(cuò)誤信息碼,如果沒有成功獲取,寫入錯(cuò)誤日志表。
[0012]在之前所述任一實(shí)施例的交易異常處理方法,優(yōu)選地,如果獲取對(duì)應(yīng)的異常處理流程失敗,寫入錯(cuò)誤日志表。
[0013]在之前所述任一實(shí)施例的交易異常處理方法,優(yōu)選地,如果執(zhí)行所述異常處理流程失敗,寫入錯(cuò)誤日志表。
[0014]按照本發(fā)明還一實(shí)施例的交易異常處理方法,其中,所述出錯(cuò)報(bào)文根據(jù)所述金融交易處理系統(tǒng)中的數(shù)據(jù)庫中的交易處理表和異常處理流程映射表映射生成。
[0015]在之前所述任一實(shí)施例的交易異常處理方法,優(yōu)選地,所述交易處理表中至少地包括交易處理標(biāo)識(shí)、交易處理描述、交易類別和異常映射碼,所述異常映射碼反映所述交易類別信息。
[0016]在之前所述任一實(shí)施例的交易異常處理方法,優(yōu)選地,所述異常處理流程映射表中至少地包括異常映射碼、階段標(biāo)識(shí)、交易狀態(tài)以及異常處理流程標(biāo)識(shí);所述異常映射碼反映所述交易類別信息,所述階段標(biāo)識(shí)反映異常所處的交易階段,所述異常處理流程標(biāo)識(shí)至少地基于所述異常映射碼、階段標(biāo)識(shí)、交易狀態(tài)生成。
[0017]按照本發(fā)明的又一方面,提供一種金融交易處理系統(tǒng)的交易異常處理單元,其包括:
映射單元,其用于根據(jù)發(fā)生在金融交易處理系統(tǒng)的交易中的異常所處的交易階段、交易狀態(tài)、以及交易類別,在出錯(cuò)報(bào)文中映射相應(yīng)的異常處理流程標(biāo)識(shí);
異常處理流程獲取單元,基于該異常處理流程標(biāo)識(shí)獲取對(duì)應(yīng)的異常處理流程;
異常處理服務(wù)單元,用于集中地執(zhí)行每個(gè)異常所對(duì)應(yīng)的異常處理流程。
[0018]進(jìn)一步,所述金融交易處理系統(tǒng)包括交易處理中心,所述交易處理中心用于多進(jìn)程、分階段地處理各種交易,所述交易處理中心產(chǎn)生的出錯(cuò)報(bào)文被發(fā)送至所述交易異常處理單元進(jìn)行集中地處理。
[0019]進(jìn)一步,所述金融交易處理系統(tǒng)還包括支付終端接收解析模塊、支付終端組裝發(fā)送、上游組裝發(fā)送模塊和上游接收解析模塊。
[0020]本發(fā)明的技術(shù)效果是:(一)通過將金融交易處理系統(tǒng)中的異常處理流程集中化處理,避免了各個(gè)階段/進(jìn)程都要單獨(dú)實(shí)現(xiàn)各自的異常處理的缺點(diǎn),減小了后期處理進(jìn)程異常處理的復(fù)雜性。(二)異常處理單元集中化處理異常處理流程有利于在發(fā)生異常時(shí)解放交易處理中心等其他相關(guān)服務(wù)模塊,保證了交易的流水線作業(yè),不因處理異常而減緩其處理速度,因此金融交易處理系統(tǒng)處理速度被提高。(三)異常處理單元集中式處理大大方便了異常處理流程的增加、更改,異常處理流程的變更和擴(kuò)展只需在異常處理單元中實(shí)現(xiàn),從而提高了金融交易處理系統(tǒng)的靈活性和可維護(hù)性。(四)在獲取異常處理流程時(shí),根據(jù)交易階段、交易狀態(tài)和交易類別,即可準(zhǔn)確提供對(duì)應(yīng)的異常處理流程,該異常處理機(jī)制“交易類型弱相關(guān)”、“處理過程強(qiáng)相關(guān)”,極具擴(kuò)展性?!緦@綀D】
【附圖說明】
[0021 ] 從結(jié)合附圖的以下詳細(xì)說明中,將會(huì)使本發(fā)明的上述和其他目的及優(yōu)點(diǎn)更加完全清楚,其中,相同或相似的要素采用相同的標(biāo)號(hào)表示。
[0022]圖1是金融交易處理系統(tǒng)與外界系統(tǒng)的結(jié)構(gòu)示意圖。
[0023]圖2是本發(fā)明一實(shí)施例的金融交易處理系統(tǒng)中發(fā)生異常時(shí)進(jìn)程的調(diào)用關(guān)系示意圖。
[0024]圖3是圖2所示實(shí)施例的金融交易處理系統(tǒng)中的交易異常處理單元的模塊結(jié)構(gòu)示意圖。
[0025]圖4是按照本發(fā)明一實(shí)例的金融交易處理系統(tǒng)的交易異常處理方法流程示意圖。
[0026]圖5是按照本發(fā)明一實(shí)施例的交易異常處理方法的異常處理分析示意圖。
【具體實(shí)施方式】
[0027]下面介紹的是本發(fā)明的多個(gè)可能實(shí)施例中的一些,旨在提供對(duì)本發(fā)明的基本了解,并不旨在確認(rèn)本發(fā)明的關(guān)鍵或決定性的要素或限定所要保護(hù)的范圍。容易理解,根據(jù)本發(fā)明的技術(shù)方案,在不變更本發(fā)明的實(shí)質(zhì)精神下,本領(lǐng)域的一般技術(shù)人員可以提出可相互替換的其他實(shí)現(xiàn)方式。因此,以下【具體實(shí)施方式】以及附圖僅是對(duì)本發(fā)明的技術(shù)方案的示例性說明,而不應(yīng)當(dāng)視為本發(fā)明的全部或者視為對(duì)本發(fā)明技術(shù)方案的限定或限制。
[0028]下面的描述中,為描述的清楚和簡明,并沒有對(duì)圖中所示的所有多個(gè)部件進(jìn)行描述。附圖中示出了多個(gè)部件為本領(lǐng)域普通技術(shù)人員提供本發(fā)明的完全能夠?qū)崿F(xiàn)的公開內(nèi)容。對(duì)于本領(lǐng)域技術(shù)人員來說,許多部件的操作都是熟悉而且明顯的。
[0029]本文中,交易可以包括兩類:一類為金融類交易,是指由支付終端發(fā)起的消費(fèi)、預(yù)授權(quán)、退貨等相關(guān)活動(dòng),其為三方交易(下游的支付終端、金融交易處理系統(tǒng)、上游);另一類為管理類交易,是指為保證上游系統(tǒng)或者pos終端等下游系統(tǒng)能夠與金融交易處理系統(tǒng)正常進(jìn)行交互而發(fā)生的兩方交易。上游系統(tǒng)包括發(fā)卡方系統(tǒng)或者第三方行業(yè)的系統(tǒng)(例如煤氣公司的結(jié)算系統(tǒng))。報(bào)文是指在支付終端、金融交易處理系統(tǒng)、上游系統(tǒng)之間傳遞的交易數(shù)據(jù)包。沖正是指當(dāng)金融交易處理系統(tǒng)接收到來自上游系統(tǒng)的成功應(yīng)答后,在處理過程中發(fā)生異常情況,則在給終端發(fā)送失敗應(yīng)答的同時(shí),還需要給上游系統(tǒng)發(fā)送沖正報(bào)文,以通知上游系統(tǒng):上游系統(tǒng)成功應(yīng)答的交易,在金融交易處理系統(tǒng)處理時(shí)遭遇了處理失敗,此筆交易將沖正,使得該交易不參與相應(yīng)的扣款等操作。
[0030]圖2所示為本發(fā)明一實(shí)施例的金融交易處理系統(tǒng)中發(fā)生異常(或交易出錯(cuò))時(shí)進(jìn)程的調(diào)用關(guān)系示意圖。該實(shí)施例的金融交易處理系統(tǒng)200采用多進(jìn)程、分階段的處理的機(jī)制進(jìn)行交易處理。如圖2所示,金融交易處理系統(tǒng)基本地包括支付終端接收解析模塊220、支付終端組裝發(fā)送230、上游組裝發(fā)送模塊250、上游接收解析模塊240和交易異常處理單元260以及交易處理中心(圖2中未示出),在該示例中,交易處理中心按功能劃分為金融類交易處理模塊211、支付終端管理類交易處理模塊212和上游管理類交易處理模塊213等模塊。支付終端接收解析模塊220用于從支付終端接收并解析外部數(shù)據(jù)(即報(bào)文),交易處理中心用于進(jìn)行交易請求處理或交易應(yīng)答處理,上游組裝發(fā)送模塊250用于內(nèi)部數(shù)據(jù)(即報(bào)文)的組裝發(fā)送至上游系統(tǒng),上游接收解析模塊240用于從上游系統(tǒng)接收并解析外部數(shù)據(jù)(即報(bào)文),支付終端組裝發(fā)送230用于將內(nèi)部數(shù)據(jù)(即報(bào)文)組裝并發(fā)送至外部支付終端。交易異常處理單元260用于集中進(jìn)行異常處理,對(duì)各個(gè)模塊在執(zhí)行各進(jìn)程中發(fā)送的異常及其相關(guān)信息(例如出錯(cuò)報(bào)文)均被發(fā)送至交易異常處理單元260。對(duì)于多進(jìn)程、分階段處理機(jī)制的金融交易處理系統(tǒng)200,其異常發(fā)生的階段位置比較多,如圖2所示,各個(gè)模塊中均可以發(fā)生異常或出錯(cuò),反映在交易的階段上,各個(gè)交易階段均可以發(fā)生交易異常。
[0031]典型地,圖2所示的金融交易處理系統(tǒng)的金融類交易處理流程包括:接收、解析下游的支付終端上送的交易報(bào)文;交易請求處理(例如,其包括檢查報(bào)文合法性、增加關(guān)鍵信息、記錄交易信息到數(shù)據(jù)庫);上送交易報(bào)文給上游系統(tǒng);接收并解析上游系統(tǒng)給予的應(yīng)答;交易應(yīng)答處理(例如,其包括檢查報(bào)文合法性、更新交易信息到數(shù)據(jù)庫、增加關(guān)鍵信息);給予支付終端應(yīng)答。類似的多階段交易處理流程可以按照階段功能被劃分。因此,根據(jù)交易異常所發(fā)生的階段位置,可以對(duì)應(yīng)出其所處的交易階段信息。
[0032]同時(shí),按照交易處理流程的不同,可以對(duì)交易進(jìn)行類別劃分或定義。在本文中,需要理解的是,交易類別是對(duì)交易的范圍表示,而交易類型是個(gè)體表示,每個(gè)交易類別可以包含多種不同類型的交易:例如,消費(fèi)是一種交易類型、余額查詢也是一種交易類型,而兩者同屬于一個(gè)交易類別(如下所述的C類別)。根據(jù)金融交易處理系統(tǒng)200的多進(jìn)程處理特點(diǎn),根據(jù)異常所對(duì)應(yīng)進(jìn)程的交易處理流程特點(diǎn),同樣得出該交易異常所對(duì)應(yīng)的交易類別。在該實(shí)施例中,交易類別可以但不限于劃分為以下類別:
A類別:從支付終端到金融交易處理系統(tǒng),交易處理后,返回支付終端應(yīng)答;其中,對(duì)應(yīng)日志記錄為終端管理日志表;該交易類別為支付終端與金融交易處理系統(tǒng)之間的兩方交互,為一個(gè)半圈交易;
B類別:從支付終端到金融交易處理系統(tǒng),返給支付終端應(yīng)答,同時(shí)也將交易上送至上游系統(tǒng),再接受來自上游系統(tǒng)的應(yīng)答;其中,對(duì)應(yīng)日志為交易日志表;該交易類別為支付終端、金融交易處理系統(tǒng)與上游系統(tǒng)之間的三方交易,為兩個(gè)半圈交易;
C類別:從支付終端到金融交易處理系統(tǒng),交易(請求)處理后,將交易上送至上游系統(tǒng),待收到上游系統(tǒng)的應(yīng)答,交易(應(yīng)答)處理后,返給支付終端應(yīng)答;其中,對(duì)應(yīng)日志為交易日志表;該交易類別為支付終端、金融交易處理系統(tǒng)與上游系統(tǒng)之間的三方交易,為一個(gè)大圈交易;
D類別:從上游系統(tǒng)到金融交易處理系統(tǒng),交易處理后,返給上游系統(tǒng)應(yīng)答;其中,對(duì)應(yīng)日志為上游管理日志表。該交易類別為金融交易處理系統(tǒng)與上游系統(tǒng)之間的兩方交互,為一個(gè)半圈交易。
[0033]其中,A類別通常也稱為支付終端管理類交易,其交易處理在圖2中的支付終端管理類交易處理模塊212中完成,D類別通常也稱為上游管理類交易,其交易處理在圖2中的上游管理類交易處理模塊213中完成。
[0034]需要理解的是,交易類別是基于交易處理流程進(jìn)行劃分的,而交易類型是指按照交易的功能來劃分的,例如,消費(fèi)、余額查詢等交易類型。每組交易類型所對(duì)應(yīng)的交易類別可以在金融交易處理系統(tǒng)中進(jìn)行預(yù)定義。
[0035]交易處理的狀態(tài)包括但不限于為請求、成功應(yīng)答、失敗應(yīng)答、延遲的成功應(yīng)答、延遲的失敗應(yīng)答、重復(fù)的應(yīng)答。按照交易異常所發(fā)生的階段的狀態(tài),可以對(duì)應(yīng)得出該異常對(duì)應(yīng)的交易狀態(tài)。[0036]繼續(xù)如圖2所示,在多進(jìn)程、分階段機(jī)制的金融交易處理系統(tǒng)中,雖然每個(gè)交易異常發(fā)生時(shí)分別對(duì)應(yīng)的交易階段、交易類別、交易狀態(tài)可能各不相同,但是, 申請人:發(fā)現(xiàn),不同情況下,異常處理流程的種類相對(duì)于較少,通常地,異常處理模塊所做的異常處理流程中大致可以抽象地分類為三種補(bǔ)救動(dòng)作:
第一種為:修改或記錄出錯(cuò)交易的相關(guān)日志數(shù)據(jù);
第二種為:生成、發(fā)送拒絕報(bào)文給支付終端;
第三種為:生成、發(fā)送沖正報(bào)文給上游系統(tǒng)。
[0037]其中,每種補(bǔ)救動(dòng)作可以實(shí)現(xiàn)相應(yīng)的異常處理功能。
[0038]圖3所示為圖2所示實(shí)施例的金融交易處理系統(tǒng)中的交易異常處理單元的模塊結(jié)構(gòu)示意圖。在以下實(shí)施例中,以C類別的交易類別為例,結(jié)合圖2和圖3,對(duì)圖2所示的金融交易處理系統(tǒng)中的交易異常處理方法進(jìn)行說明。
[0039]首先地,在交易異常發(fā)生時(shí),根據(jù)發(fā)生在金融交易處理系統(tǒng)的交易中的異常所處的交易階段、交易狀態(tài)、以及交易類別,在出錯(cuò)報(bào)文中映射相應(yīng)的異常處理流程標(biāo)識(shí)。該步驟通過交易異常處理單元260的映射單元261完成。
[0040]在該實(shí)施例中,金融交易處理系統(tǒng)中可以預(yù)先設(shè)置數(shù)據(jù)庫270,數(shù)據(jù)庫270中包括交易處理表和異常處理流程映射表。對(duì)應(yīng)每個(gè)交易處理流程,在金融交易處理系統(tǒng)中會(huì)根據(jù)數(shù)據(jù)庫中的交易處理表和映射流程表生成出錯(cuò)報(bào)文。表一所示為交易處理表的定義方式,表二為異常處理流程映射表的定義方式。
[0041] 表一交易處理表
字段名稱字段類型取值說明`交易處理ID整數(shù)每種交易類型都有唯一一個(gè)與之對(duì)應(yīng)的交易處理ID交易處理描述字符串用以描述當(dāng)前交易的名稱等交易類別字符串在金融交易處理系統(tǒng)中交易處理時(shí)所屬的交易類別(例如C類別)異常映射碼整數(shù)用以標(biāo)識(shí)該交易處理對(duì)應(yīng)的異常處理碼,其至少根據(jù)處理類別生成,加上出錯(cuò)時(shí)的階段標(biāo)識(shí).交易狀態(tài),用以查找對(duì)應(yīng)交易的異常處理流程ID
如表一所示,異常映射碼本身是根據(jù)交易類別為條件而生成的;映射單元261會(huì)在交易異常發(fā)生時(shí),根據(jù)數(shù)據(jù)庫260的交易處理表,映射生成包括交易處理標(biāo)識(shí)(ID)、交易處理描述、交易類別和異常映射碼所對(duì)應(yīng)字段的出錯(cuò)報(bào)文。
[0042] 表二異常處理流程映射表
字段名稱字段類型取值說明異常映射碼整數(shù)交易處理表的異常映射碼階段標(biāo)識(shí)字符串出錯(cuò)(異常)時(shí),交易的處理階段交易狀態(tài)字符串出錯(cuò)(異常)時(shí),交易的狀態(tài)異常處理流程ID字符串當(dāng)前條件下對(duì)應(yīng)的異常處理流程標(biāo)識(shí)
如表二所示,映射單元261會(huì)在交易異常發(fā)生時(shí),根據(jù)數(shù)據(jù)庫260的異常處理流程映射表,出錯(cuò)報(bào)文進(jìn)一步映射生成包括異常映射碼、階段標(biāo)志、交易狀態(tài)、異常處理流程ID所對(duì)應(yīng)字段的出錯(cuò)報(bào)文,從而映射生成了相應(yīng)的異常處理流程標(biāo)識(shí)。
[0043]其中,表二中的異常映射碼可以根據(jù)當(dāng)前異常的交易處理ID在交易處理表中查找。以上異常映射碼是根據(jù)處理類別生成,因此,對(duì)于同類別的交易,由于處理流程相同或相似,即可以在交易處理表或異常處理流程映射表中對(duì)應(yīng)配置相同的異常映射碼。
[0044]對(duì)于異常處理流程映射表中的階段標(biāo)識(shí),在該實(shí)施例中,以C類別為例,交易大致分為以下幾個(gè)階段:終端接收及解析?交易(請求)處理?上游組裝發(fā)送?上游接收及解析?交易(應(yīng)答)處理?終端組裝及發(fā)送。并根據(jù)每個(gè)階段中是否已經(jīng)記錄或更新了該交易日志,將階段標(biāo)識(shí)定義為=PB (終端接收及解析),TXNl (交易處理,記錄日志前)、ΤΧΝ2 (交易處理,記錄日志后),CT (上游組裝及發(fā)送),CB (終端接收及解析),PTl (上游組裝及發(fā)送,記錄日志前),ΡΤ2 (上游組裝及發(fā)送,記錄日志后)等(其中,階段標(biāo)識(shí)后的括號(hào)中的內(nèi)容表示該階段標(biāo)識(shí)字符串對(duì)應(yīng)的交易階段)。金融交易處理系統(tǒng)處理超時(shí)、交易被上游拒絕等其他特殊階段也可以相應(yīng)地定義相應(yīng)的特殊階段標(biāo)識(shí)。因此,階段標(biāo)識(shí)可以標(biāo)志出交易流程的出錯(cuò)位置,階段標(biāo)志可以通過調(diào)用異常流程函數(shù)參數(shù)來獲取。需要理解的是,C類交易類別的階段標(biāo)識(shí)定義方式并不限于以上實(shí)施例;對(duì)于各種類別的交易,本領(lǐng)域技術(shù)人員,可以根據(jù)以上教導(dǎo)或啟示,對(duì)交易的各階段進(jìn)行定義或者劃分,以方便定義每個(gè)類別的異常所處的階段標(biāo)識(shí),因此,在此不再一一贅述。
[0045]對(duì)于異常處理流程映射表中的交易狀態(tài),在該實(shí)施例中,可以通過不同字符串分別地標(biāo)識(shí)以下處理狀態(tài):請求、成功應(yīng)答、失敗應(yīng)答、延遲的成功應(yīng)答、延遲的失敗應(yīng)答、重復(fù)的應(yīng)答。按照交易異常所發(fā)生的階段的處理狀態(tài),可以對(duì)應(yīng)得出該異常對(duì)應(yīng)的交易狀態(tài)。
[0046]異常處理流程ID對(duì)應(yīng)的字符串可以通過異常映射碼、階段標(biāo)識(shí)、交易狀態(tài)的關(guān)鍵字映射得到,這樣,金融交易處理系統(tǒng)中各進(jìn)程中的發(fā)生在各階段所對(duì)應(yīng)的異常處理流程標(biāo)識(shí)可以被確定。
[0047]進(jìn)一步地,基于該異常處理流程標(biāo)識(shí)獲取對(duì)應(yīng)的異常處理流程。該步驟通過交易異常處理單元260的異常處理流程獲取單元262配合金融交易處理系統(tǒng)的數(shù)據(jù)庫270來完成。相同的異常處理流程標(biāo)識(shí)對(duì)應(yīng)相同的異常處理流程,具體地,對(duì)于異常處理流程的構(gòu)成可以優(yōu)選地通過以下方法形成。
[0048]根據(jù)以上抽象出的異常處理所做的三種補(bǔ)救動(dòng)作,并結(jié)合每類交易所記錄的日志類型差異等因素,將異常處理中的各個(gè)功能分割成各自獨(dú)立的功能節(jié)點(diǎn)。其中,可以根據(jù)補(bǔ)救動(dòng)作的功能定義功能節(jié)點(diǎn)。各個(gè)異常處理流程ID可通過參數(shù)配置的方式,根據(jù)處理的需要使用對(duì)應(yīng)的一個(gè)或多個(gè)功能節(jié)點(diǎn),構(gòu)成一個(gè)可以實(shí)現(xiàn)所需目標(biāo)的異常處理流程。具體地,例如,對(duì)于每個(gè)預(yù)先定義的異常處理流程,都在金融交易處理系統(tǒng)的數(shù)據(jù)庫中通過參數(shù)配置的方式、按照一定的順序配置好其需要執(zhí)行的功能節(jié)點(diǎn),當(dāng)異常處理服務(wù)單元找到某個(gè)異常處理流程ID的異常處理流程后,就會(huì)按照該順序依次執(zhí)行各個(gè)功能節(jié)點(diǎn)以執(zhí)行該異常處理流程。這種方法機(jī)制靈活,大大方便了異常處理流程的變更和擴(kuò)展。交易異常所對(duì)應(yīng)的交易類別的不同,被定義的功能節(jié)點(diǎn)也不相同;交易異常在每種交易類別中所處的階段不同,選擇的功能節(jié)點(diǎn)可能不相同并導(dǎo)致其相應(yīng)的異常處理流程可能不相同。
[0049]對(duì)于多個(gè)功能節(jié)點(diǎn)構(gòu)成的每種異常處理流程,可以一個(gè)字符串名稱來標(biāo)識(shí),從而通過異常處理流程標(biāo)識(shí),方便地獲取異常處理流程。
[0050]進(jìn)一步地,在異常處理服務(wù)單元中集中地執(zhí)行每個(gè)異常所對(duì)應(yīng)的異常處理流程。通過將異常處理流程集中地在異常處理服務(wù)單元263中執(zhí)行,可以使金融交易處理系統(tǒng)中的交易處理中心等相關(guān)服務(wù)模塊在發(fā)生異常時(shí)不需要對(duì)其進(jìn)行異常處理,異常處理被交給獨(dú)立的異常處理服務(wù)單元263執(zhí)行,因此,交易處理中心可以繼續(xù)處理下一個(gè)事務(wù),保證了流水線作業(yè)處理不因異常的發(fā)生而減緩其處理速度。
[0051]以上處理方法過程具體地可以通過以下具體示例進(jìn)一步說明。
[0052]圖4所示為按照本發(fā)明一實(shí)例的金融交易處理系統(tǒng)的交易異常處理方法流程示意圖。以下結(jié)合圖4以及圖3進(jìn)行說明。
[0053]首先,步驟S410,檢查異常處理標(biāo)志是否為二次處理。在該實(shí)施例中,在發(fā)生交易異常時(shí),在出錯(cuò)報(bào)文中生成異常處理標(biāo)志,在交易異常處理結(jié)束后,異常處理標(biāo)志的賦值可以被改變,從而可以通過檢查異常處理標(biāo)志來判斷該異常處理是否已經(jīng)被執(zhí)行處理,也即是否為二次處理。通過該步驟410,可以防止異常處理單元260循環(huán)處理出錯(cuò)報(bào)文。
[0054]進(jìn)一步,步驟S420,判斷是否成功獲取錯(cuò)誤信息碼。如果出錯(cuò)報(bào)文中沒有獲取了錯(cuò)誤信息碼,則進(jìn)入步驟S490,寫入錯(cuò)誤日志表(即記錄或更新交易日志);如果出錯(cuò)報(bào)文中獲取了錯(cuò)誤信息碼,則進(jìn)入步驟S430。
[0055]進(jìn)一步,步驟S430,判斷是否成功獲取階段標(biāo)識(shí)。如果出錯(cuò)報(bào)文沒有成功獲取階段標(biāo)識(shí),則進(jìn)入步驟S490,寫入錯(cuò)誤日志表(即記錄或更新交易日志);如果出錯(cuò)報(bào)文中獲取了階段標(biāo)識(shí),則進(jìn)入步驟S440。
[0056]進(jìn)一步,步驟S440,判斷是否成功獲取處理狀態(tài)。如果出錯(cuò)報(bào)文沒有成功獲取處理狀態(tài),則進(jìn)入步驟S490,寫入錯(cuò)誤日志表(即記錄或更新交易日志);如果出錯(cuò)報(bào)文中獲取了處理狀態(tài),則進(jìn)入步驟S450。
[0057]進(jìn)一步,步驟S450,判斷是否成功產(chǎn)生異常映射碼。如果出錯(cuò)報(bào)文沒有成功獲取異常映射碼,則進(jìn)入步驟S490,寫入錯(cuò)誤日志表(即記錄或更新交易日志);如果出錯(cuò)報(bào)文中獲取了異常映射碼,則進(jìn)入步驟S460。
[0058]進(jìn)一步,步驟S460,映射相應(yīng)的異常處理流程標(biāo)識(shí)。根據(jù)階段標(biāo)識(shí)、處理狀態(tài)、異常映射碼所對(duì)應(yīng)關(guān)鍵字段,映射生成異常處理流程ID。
[0059]進(jìn)一步,步驟S470,判斷是否成功獲取異常處理流程。在該步驟中,根據(jù)出錯(cuò)報(bào)文中的異常處理流程ID,通過異常處理流程獲取單元262獲取異常處理流程,異常處理流程可以通過數(shù)據(jù)庫270中獲取。具體地,在獲取異常處理流程過程中,通過選擇一個(gè)或多個(gè)功能節(jié)點(diǎn)構(gòu)成相應(yīng)的異常處理流程。如果出錯(cuò)報(bào)文沒有成功獲取異常處理流程,則進(jìn)入步驟S490,寫入錯(cuò)誤日志表(即記錄或更新交易日志);如果出錯(cuò)報(bào)文中獲取了異常處理流程,則進(jìn)入步驟S480。
[0060]進(jìn)一步,步驟S480,異常處理服務(wù)單元執(zhí)行對(duì)應(yīng)異常處理流程。需要理解的是,異常處理服務(wù)單元可以同時(shí)執(zhí)行多個(gè)異常處理流程。如果處理不成功,同樣地,進(jìn)入步驟S490 ;如果處理成功,則異常處理過程結(jié)束。
[0061]需要理解的是,以上步驟S430、S440、S450三者之間的順序關(guān)系并不受如圖4所示實(shí)施例限制,這三個(gè)步驟之間的順序關(guān)系可以根據(jù)具體需要進(jìn)行隨意變更。
[0062]圖5所示為按照本發(fā)明一實(shí)施例的交易異常處理方法的異常處理分析示意圖。在該實(shí)施中,以C類別的交易為例,其中,金融交易處理系統(tǒng)中的交易流程以模塊形式示出,如圖所示,交易流程包括:
終端接收、解析:接收、解析下游的支付終端上送的交易報(bào)文,其中包括數(shù)據(jù)解析動(dòng)作(1.5),按照數(shù)據(jù)解析動(dòng)作劃分,該流程可以劃分為步驟I和步驟2 ;
交易請求處理:主要地包括記錄交易信息到數(shù)據(jù)庫動(dòng)作(即1.5記錄交易數(shù)據(jù)),按照該記錄動(dòng)作劃分,該流程可以劃分為步驟3和步驟4 ;
上游組裝、發(fā)送:上送交易報(bào)文給上游系統(tǒng),該流程也被劃分為步驟5和6 ;
上游接收、解析:接收并解析上游系統(tǒng)給予的應(yīng)答,其中包括數(shù)據(jù)解析動(dòng)作(7.5),按照數(shù)據(jù)解析動(dòng)作劃分,該流程可以劃分為步驟7和步驟8 ;
交易應(yīng)答處理:主要地包括更新交易信息到數(shù)據(jù)庫動(dòng)作(即9.5更新交易數(shù)據(jù)),按照該更新動(dòng)作劃分,該流程可以劃分為步驟9和步驟10 ;
終端組裝、發(fā)送:該流程給予終端應(yīng)答,其也被劃分為步驟11和12。
[0063]在圖5所示的交易過程中,每個(gè)步驟或動(dòng)作出錯(cuò)時(shí),如圖表三所示相應(yīng)地執(zhí)行以下異常處理流程。
[0064]表三圖5所示的異常處理流程對(duì)應(yīng)說明
【權(quán)利要求】
1.一種金融交易處理系統(tǒng)的交易異常處理方法,其特征在于,包括以下步驟:根據(jù)發(fā)生在金融交易處理系統(tǒng)的交易中的異常所處的交易階段、交易狀態(tài)以及交易類別,在出錯(cuò)報(bào)文中映射相應(yīng)的異常處理流程標(biāo)識(shí);基于該異常處理流程標(biāo)識(shí)獲取對(duì)應(yīng)的異常處理流程;以及集中地執(zhí)行每個(gè)異常所對(duì)應(yīng)的異常處理流程。
2.如權(quán)利要求1所述的方法,其特征在于,所述異常處理流程由異常處理的一個(gè)或多個(gè)功能節(jié)點(diǎn)組成,其中,所述功能節(jié)點(diǎn)按照異常處理的功能來定義。
3.如權(quán)利要求2所述的方法,其特征在于,所述異常處理流程通過參數(shù)配置的方式調(diào)用一個(gè)或多個(gè)功能節(jié)點(diǎn)以獲取相應(yīng)的異常處理流程。
4.如權(quán)利要求1所述的方法,其特征在于,在所述出錯(cuò)報(bào)文中生成異常處理標(biāo)志,通過所述異常處理標(biāo)志,判斷是否對(duì)所述出錯(cuò)報(bào)文已經(jīng)進(jìn)行異常處理。
5.如權(quán)利要求1所述的方法,其特征在于,在所述映射異常處理流程標(biāo)識(shí)之前,還包括步驟:判斷所述出錯(cuò)報(bào)文是否成功獲取錯(cuò)誤信息碼,如果沒有成功獲取,寫入錯(cuò)誤日志表。
6.如權(quán)利要求1所述的方法,其特征在于,如果獲取對(duì)應(yīng)的異常處理流程失敗,寫入錯(cuò)誤日志表。
7.如權(quán)利要求1或4或5或6所述的方法,其特征在于,如果執(zhí)行所述異常處理流程失敗,寫入錯(cuò)誤日志表。
8.如權(quán)利要求1所述的方法,其特征在于,所述出錯(cuò)報(bào)文根據(jù)所述金融交易處理系統(tǒng)中的數(shù)據(jù)庫中的交易處理表和異常處理流程映射表映射生成。
9.如權(quán)利要求8所述的方法,其特征在于,所述交易處理表中至少地包括交易處理標(biāo)識(shí)、交易處理描述、交易類別和異常映射碼,所述異常映射碼反映所述交易類別信息。
10.如權(quán)利要求8所述的方法,其特征在于,所述異常處理流程映射表中至少地包括異常映射碼、階段標(biāo)識(shí)、交易狀態(tài)以及異常處理流程標(biāo)識(shí);所述異常映射碼反映所述交易類別信息,所述階段標(biāo)識(shí)反映異常所處的交易階段,所述異常處理流程標(biāo)識(shí)至少地基于所述異常映射碼、階段標(biāo)識(shí)、交易狀態(tài)生成。
11.一種金融交易處理系統(tǒng)的交易異常處理單元,其特征在于,包括:映射單元,其用于根據(jù)發(fā)生在金融交易處理系統(tǒng)的交易中的異常所處的交易階段、交易狀態(tài)、以及交易類別,在出錯(cuò)報(bào)文中映射相應(yīng)的異常處理流程標(biāo)識(shí);異常處理流程獲取單元,基于該異常處理流程標(biāo)識(shí)獲取對(duì)應(yīng)的異常處理流程;異常處理服務(wù)單元,用于集中地執(zhí)行每個(gè)異常所對(duì)應(yīng)的異常處理流程。
12.如權(quán)利要求11所述的交易異常處理單元,其特征在于,所述金融交易處理系統(tǒng)包括交易處理中心,所述交易處理中心用于多進(jìn)程、分階段地處理各種交易,所述交易處理中心產(chǎn)生的出錯(cuò)報(bào)文被發(fā)送至所述交易異常處理單元進(jìn)行集中地處理。
13.如權(quán)利要求12所述的交易異常處理單元,其特征在于,所述金融交易處理系統(tǒng)還包括支付終端接收解析模塊、支付終端組裝發(fā)送、上游組裝發(fā)送模塊和上游接收解析模塊。
【文檔編號(hào)】G06Q40/04GK103514565SQ201210214715
【公開日】2014年1月15日 申請日期:2012年6月27日 優(yōu)先權(quán)日:2012年6月27日
【發(fā)明者】李筑埭, 葛國棟 申請人:中國銀聯(lián)股份有限公司