? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
一、核心賬務(wù)的概述和術(shù)語定義
二世舰、賬務(wù)組織的業(yè)務(wù)概述
科目分級沒有固定的標(biāo)準(zhǔn)稚叹,只要是末級科目都可以直接對應(yīng)分戶焰薄,非末級科目下不可以對應(yīng)賬戶。有3個(gè)特點(diǎn):
◇?平時(shí)記賬在葉子上扒袖。
◇?葉子的余額方向向上繼承塞茅。
◇?余額向上匯總。
(2)程序設(shè)計(jì)
科目作為重要的匯總參數(shù)僚稿,是以采用科目號的形式進(jìn)行展示凡桥。使用這種方法,使得當(dāng)科目發(fā)生變化時(shí)蚀同,對金融產(chǎn)品的影響最小化缅刽,特別針對金融產(chǎn)品的各種重要參數(shù)表的調(diào)整變得更為簡單。如下:
在科目號的組成規(guī)則上蠢络,通常把一級科目號設(shè)計(jì)成4位編碼衰猛,并將旗下的二級科目號設(shè)計(jì)成6位編碼,并且前4位就等于一級科目編號刹孔,三級科目號同理啡省。實(shí)際編程時(shí)也是,在二級科目向上匯總的程序中髓霞,通常也會截取二級科目號的前4位作為一級科目卦睹。
三、銀行產(chǎn)品與銀行賬戶的關(guān)系
四方库、銀行產(chǎn)品與核算的關(guān)系與分離
(1)產(chǎn)品與總賬的關(guān)系
產(chǎn)品可以按需要與要求進(jìn)行不同粒度的分類與細(xì)分结序,總賬里與產(chǎn)品對應(yīng)的科目,也可以按需要與要求進(jìn)行不同粒度的細(xì)分纵潦,以與產(chǎn)品形成對應(yīng)關(guān)系徐鹤。
(2)產(chǎn)品與核算的分離
基于層次化、組件化設(shè)計(jì)理念邀层,會計(jì)核算系統(tǒng)內(nèi)部同樣也可考慮分層架構(gòu)設(shè)計(jì)返敬。將影響會計(jì)分錄的會計(jì)事件,按產(chǎn)品寥院、分戶賬等重要信息進(jìn)行歸納抽象劲赠,構(gòu)建會計(jì)引擎用于核算解析。
當(dāng)產(chǎn)品賬戶發(fā)生交易時(shí),會計(jì)引擎能夠根據(jù)產(chǎn)品交易事件信息凛澎,確定具體的產(chǎn)品泌绣,自動(dòng)提取與會計(jì)核算相關(guān)的信息,并根據(jù)預(yù)先設(shè)定的核算規(guī)則预厌,自動(dòng)將采集的數(shù)據(jù)轉(zhuǎn)化為會計(jì)分錄,完成賬務(wù)處理元媚。當(dāng)核算規(guī)則發(fā)生變化時(shí)轧叽,只需調(diào)整會計(jì)引擎中的參數(shù)化規(guī)則。
五刊棕、賬戶與核算科目解析自動(dòng)化
(1)客戶賬號
(2)核算編碼
核算編碼每個(gè)核算編碼對應(yīng)一具體的銀行業(yè)務(wù)產(chǎn)品炭晒,組成規(guī)則與業(yè)務(wù)人員制定核算維度有關(guān),是基于大多數(shù)的業(yè)務(wù)交易場景而抽象出來的相關(guān)核算屬性甥角,比如產(chǎn)品類型网严、期限等,這是在很多金融業(yè)務(wù)場景中都存在的共性維度嗤无。舉例:
(3)核算科目解析自動(dòng)化
該方案下震束,業(yè)務(wù)交易層與會計(jì)核算還是有一點(diǎn)耦合,只是耦合度相對方案一來說更弱一些当犯;另外垢村,該方案對輔助項(xiàng)的考慮有所缺失,基本不支持輔助項(xiàng)的靈活設(shè)置嚎卫。
(4)內(nèi)部賬戶體系
六嘉栓、記賬核心實(shí)現(xiàn)方法和基本思路圖
(1)總體設(shè)計(jì)思路
(2)會計(jì)分錄接口
(3)總賬處理模式
(4)總賬匯總口徑
(5)賬務(wù)批量處理
七、淺談會計(jì)分錄解析
在4.2和5.3中我們介紹了兩種生產(chǎn)會計(jì)分錄的方式拓诸,分別是交易直接生產(chǎn)會計(jì)方式和核算科目解析自動(dòng)化侵佃,接下來我們談?wù)劮桨溉颇颗c金額解析自動(dòng)化:
◇解析原理:
會計(jì)核算平臺接收上游各個(gè)業(yè)務(wù)系統(tǒng)產(chǎn)生的通用交易流水奠支,并根據(jù)會計(jì)場景的匹配條件馋辈,篩選出符合條件的會計(jì)場景,從而獲取到該交易流水對應(yīng)的會計(jì)分錄配置胚宦,最后根據(jù)會計(jì)分錄各配置項(xiàng)的取值規(guī)則首有,即可生成對應(yīng)的會計(jì)分錄。
◇關(guān)鍵詞:通用交易流水枢劝、會計(jì)場景井联、匹配條件、會計(jì)分錄配置
◇先對以上關(guān)鍵詞做一個(gè)簡要說明:
通用交易流水:指會計(jì)核算平臺與上游的各個(gè)業(yè)務(wù)交易系統(tǒng)您旁,按照約定的字段結(jié)構(gòu)烙常,生成的交易流水,一般來說,會盡量讓上游生成的交易流水結(jié)構(gòu)保持一致蚕脏,即各業(yè)務(wù)交易系統(tǒng)都是按相同的字段結(jié)構(gòu)生成交易流水侦副,所以才稱之為“通用交易流水”。
而會計(jì)核算平臺原則上只處理該通用交易流水驼鞭,這樣可以使得會計(jì)核算平臺的職責(zé)更為專注清晰秦驯,從而更為通用, 提升會計(jì)核算平臺的擴(kuò)展性挣棕。即使未來有新的業(yè)務(wù)交易系統(tǒng)需要接入译隘,則該新系統(tǒng)只需要按照相同的字段結(jié)構(gòu)生成通用交易流水即可,對于會計(jì)核算平臺來說是完全透明的洛心,無需改動(dòng)固耘,因?yàn)閷τ跁?jì)核算平臺來說,接收處理該新系統(tǒng)的交易流水词身,與接收處理其他系統(tǒng)的交易流水厅目,都是相同的流水結(jié)構(gòu)。
當(dāng)然法严,由于上游的業(yè)務(wù)交易系統(tǒng)眾多损敷, 一份通用交易流水結(jié)構(gòu)可能不一定都能適用滿足,當(dāng)現(xiàn)有的這份通用交易流水字段套用在這不同上游系統(tǒng)中渐夸,若存在流水字段的復(fù)用率較低時(shí)嗤锉,則要重新審視通用交易流水結(jié)構(gòu)的設(shè)計(jì)。
比如通用交易流水共包含了10個(gè)字段墓塌,有2類系統(tǒng)用到的相同字段還不到3個(gè)瘟忱,即字段復(fù)用率還不到30%時(shí),此時(shí)再強(qiáng)制要求這2類系統(tǒng)使用同一份流水結(jié)構(gòu)時(shí)苫幢,可能就與“通用”二字的初衷相背離了访诱。
造成這種情況一般有2種原因:
1、對于通用交易流水的各個(gè)屬性沒有抽象好韩肝,這是屬于設(shè)計(jì)缺陷触菜。
2、這2類系統(tǒng)業(yè)務(wù)差異實(shí)在太大哀峻,共性的業(yè)務(wù)維度太少涡相,比如只有一兩個(gè)共性維度在這2類系統(tǒng)中才都存在,剩余維度都不相同剩蟀。
◇應(yīng)對辦法:
針對前者催蝗,建議進(jìn)一步梳理分析現(xiàn)有業(yè)務(wù)場景,識別出其共性維度育特。流水字段復(fù)用率不求百分百丙号,但建議要達(dá)到70%以上。
針對后者,可能需要考慮新抽象出另一種通用交易流水結(jié)構(gòu)犬缨,以滿足這類業(yè)務(wù)交易的特點(diǎn)喳魏,也即需要2套通用交易流水結(jié)構(gòu),例如支付類的交易數(shù)據(jù)與業(yè)務(wù)類交易數(shù)據(jù)怀薛,在共性維度上是比較少的刺彩,此時(shí)可考慮設(shè)計(jì)2套通用流水結(jié)構(gòu):
1、通用業(yè)務(wù)交易流水枝恋,包括產(chǎn)品類型迂苛、產(chǎn)品碼、交易資金類型等鼓择;
2、通用支付交易流水就漾,包括轉(zhuǎn)入賬號呐能、轉(zhuǎn)出賬號等;
當(dāng)然抑堡,建議控制好通用交易流水的種類數(shù)目摆出,不要設(shè)計(jì)太多種類的“通用交易流水”,這會導(dǎo)致系統(tǒng)的復(fù)雜度直線上升首妖,尤其是對系統(tǒng)的可維護(hù)性和擴(kuò)展性造成挑戰(zhàn)偎漫。原則上建議盡量復(fù)用同一套流水結(jié)構(gòu)。
◇會計(jì)場景
在會計(jì)核算平臺中需配置好各個(gè)會計(jì)場景有缆,一個(gè)會計(jì)場景主要由3部分構(gòu)成:
1象踊、基本信息,如場景碼棚壁、場景名稱等
2杯矩、匹配條件,即滿足哪些條件袖外,才算是屬于本會計(jì)場景
3史隆、會計(jì)分錄,包括核算科目曼验、借貸方向泌射、分錄金額、輔助項(xiàng)等
以上3部分鬓照,只有“匹配條件”與交易流水直接相關(guān)熔酷,即匹配條件的設(shè)計(jì)依賴于交易流水的設(shè)計(jì)。
下面對會計(jì)場景的關(guān)鍵點(diǎn)做進(jìn)一步的說明:
(1)會計(jì)場景的匹配條件
匹配條件是連接 通用交易流水與會計(jì)分錄的橋梁,因此會計(jì)場景的匹配條件的設(shè)計(jì)是會計(jì)分錄解析中的關(guān)鍵。
由于會計(jì)核算平臺只面向通用交易流水進(jìn)行會計(jì)分錄的解析属拾,因此午衰,匹配條件也只能來自于通用交易流水中君旦。
事實(shí)上戈擒,這里的匹配條件與方案二中的“業(yè)務(wù)維度”是類似的思路苞慢,本質(zhì)上都是對已知業(yè)務(wù)場景的通用業(yè)務(wù)屬性的抽象申鱼,只不過方案二在業(yè)務(wù)維度的基礎(chǔ)上阴颖,還抽象出了一個(gè)“業(yè)務(wù)編碼”活喊,使業(yè)務(wù)維度與余額屬性得以解耦,使得即使在沒有共性業(yè)務(wù)維度的場景下也能復(fù)用量愧。當(dāng)然方案二的“業(yè)務(wù)維度”钾菊,也可以進(jìn)一步拆分為“業(yè)務(wù)維度串 + 業(yè)務(wù)事件”。但無論是如何拆解偎肃,匹配條件都必須源自通用交易流水煞烫。
(2)會計(jì)分錄配置
只要確定了會計(jì)場景的匹配條件,則會計(jì)分錄的配置就很簡單了累颂,剩下的就是會計(jì)分錄各個(gè)配置項(xiàng)的取值規(guī)則的設(shè)計(jì)滞详。
會計(jì)分錄的主要配置項(xiàng),或者說主要的構(gòu)成有?核算科目紊馏、借貸反向料饥、記賬金額、輔助項(xiàng)這4個(gè)屬性朱监。
其中岸啡,核算科目與借貸方向可直接按照財(cái)務(wù)會計(jì)同事確認(rèn)的會計(jì)分錄來配置,記賬金額可以基于交易流水中的交易金額設(shè)置赫编,輔助項(xiàng)則可結(jié)合科目配置與交易流水來設(shè)置巡蘸。
(3)會計(jì)分錄配置
可考慮為每條分錄中的記賬金額配置一個(gè)取值表達(dá)式,該取值表達(dá)式為固定值擂送、操作符赡若、數(shù)值3者的組合:
1、固定值:一般默認(rèn)為交易流水中的交易金額团甲,也可以為金額屬性名逾冬;
2、操作符:如:加減乘除躺苦、括號身腻、負(fù)號等;
3匹厘、數(shù)值:也可稱為系數(shù)嘀趟,是個(gè)自然數(shù);
以上3者通過操作符自由組合愈诚,比如:
1她按、固定值*1.5*0.1 ?或
2牛隅、(金額字段A-金額表字段B*1.5)*0.1
這里說下“固定值”的設(shè)計(jì),一般是默認(rèn)為通用交易流水中的交易金額酌泰,但如果通用交易流水中有多個(gè)金額屬性字段時(shí)媒佣,可考慮使用金額屬性名的方式來設(shè)置固定值,當(dāng)然該方式會造成分錄配置與通用交易流水部分屬性的過于耦合陵刹,即需要在配置中綁定通用交易流水的部分屬性名默伍,采用這種方式需考慮維護(hù)性與擴(kuò)展性上的成本。
(4)會計(jì)分錄的輔助項(xiàng)設(shè)置
可基于會計(jì)科目配置的科目輔助項(xiàng)與通用交易流水的相關(guān)字段的矩陣來生成衰琐,可使用Java的反射來實(shí)現(xiàn)也糊。該方式同樣也需要在科目配置中耦合通用交易流水的部分屬性。
(5)小結(jié)
以上第3點(diǎn)與第4點(diǎn)都提到需要在配置(分錄配置羡宙、科目配置)中綁定通用交易流水的部分屬性狸剃,雖然也可以再拆出一層配置來銜接兩者,讓兩者解耦狗热,但本質(zhì)上依舊是相當(dāng)于要在配置中綁定DB表字段名捕捂,一旦DB表結(jié)構(gòu)有變化,則會影響到解析規(guī)則的穩(wěn)定性斗搞。
當(dāng)然了,一般來說慷妙,系統(tǒng)設(shè)計(jì)開發(fā)好后僻焚,核心實(shí)體模型一般可視為穩(wěn)定的,所以核心的DB表的變化還是很少的(不考慮系統(tǒng)重構(gòu)情況)膝擂,因此將核心實(shí)體的部分屬性直接放在配置中也可接受虑啤。總之架馋,是否應(yīng)該采用這種方式見仁見智狞山,還請各位小伙伴提出更好的思路。
(6)方案3總結(jié)
該方案從分錄科目叉寂、借貸方向萍启、記賬金額、輔助項(xiàng)上都完全實(shí)現(xiàn)了徹底的配置化屏鳍,配置化程度較高勘纯,尤其是對會計(jì)分錄配置可統(tǒng)一管理,維護(hù)性較好钓瞭;同時(shí)也使得上游業(yè)務(wù)交易系統(tǒng)與會計(jì)核算平的各自職責(zé)更為清晰單一驳遵,更加符合“低耦合高內(nèi)聚”的設(shè)計(jì)原則。
該方案下大致可分為如下3步進(jìn)行:
1.同步交易流水:即外圍業(yè)務(wù)系統(tǒng)只需要按照約定的結(jié)構(gòu)山涡,生成對應(yīng)的通用交易流水堤结,并同步至?xí)?jì)核算平臺
2.確定會計(jì)場景:即會計(jì)核算平臺針對接收到的通用交易流水唆迁,與所配置的會計(jì)場景進(jìn)行匹配篩選,獲取到對應(yīng)的會計(jì)分錄配置
3.生成會計(jì)分錄:在獲取到分錄配置后竞穷,根據(jù)會計(jì)分錄各配置項(xiàng)的取值規(guī)則唐责,即可生成會計(jì)分錄。
但該方案對通用交易流水的抽象要求較高来庭,因?yàn)榻尤氲耐鈬鷺I(yè)務(wù)系統(tǒng)眾多妒蔚,可能需要抽象出多個(gè)通用交易流水結(jié)構(gòu)(比如信貸核心產(chǎn)生的業(yè)務(wù)交易流水與 支付平臺產(chǎn)生的 網(wǎng)銀收付款流水 差異巨大,復(fù)用的業(yè)務(wù)屬性很少月弛,很難歸類到同一種通用交易流水結(jié)構(gòu))肴盏,且后續(xù)可能會不斷有新的業(yè)務(wù)場景或者新系統(tǒng)接入。
在設(shè)計(jì)之初帽衙,要確定一個(gè)較為穩(wěn)定的流水結(jié)構(gòu)菜皂,難度會比較大,非忱髀埽考驗(yàn)架構(gòu)師或產(chǎn)品經(jīng)理對目前自己所在公司的所有業(yè)務(wù)場景的熟悉理解程度以及抽象分析能力恍飘,因此,如何保證通用交易流水的通用性與擴(kuò)展性是一個(gè)不小的挑戰(zhàn)谴垫。
八章母、聊聊雙邊分錄
系統(tǒng)中除了表外科目可以使用單邊分錄外,所有記帳都使用雙邊分錄翩剪,達(dá)到每筆交易的自平衡乳怎。如果存在業(yè)務(wù)上的交易動(dòng)作分離情況,將使用系統(tǒng)統(tǒng)一的機(jī)構(gòu)掛帳戶進(jìn)行過渡處理前弯,在進(jìn)行過渡處理時(shí)蚪缀,系統(tǒng)除了記錄該賬戶的分錄,還需記錄柜員臨時(shí)存欠登記簿恕出,登記簿采用銷賬方式管理询枚。
與丁種帳不同之處在于,該賬戶的銷賬允許部分銷賬浙巫,解決一借多貸或一貸多借情況金蜀,如果存在多借多貸情況,原則上必須自平衡或通過中間臨時(shí)存欠賬戶管理的畴,轉(zhuǎn)換為上述兩種情況廉油。
機(jī)構(gòu)掛帳戶記賬規(guī)則:
1、采用機(jī)構(gòu)掛帳戶進(jìn)行處理苗傅。
2抒线、在正常交易情況下,每日賬戶余額應(yīng)為0渣慕,但在特殊情況下嘶炭,如:機(jī)構(gòu)網(wǎng)絡(luò)中斷情況抱慌,該賬戶有可能存在余額不為0的情況。
3眨猎、為避免虛增對機(jī)構(gòu)掛帳戶的發(fā)生額抑进,規(guī)定對該賬戶的記賬為轉(zhuǎn)賬、借貸標(biāo)志只為借睡陪,也即交易時(shí)可能的分錄為借方藍(lán)字或借方紅字寺渗。
4、在記錄機(jī)構(gòu)掛賬戶時(shí)需要同時(shí)進(jìn)行柜員臨時(shí)存欠登記簿的登記兰迫。
5信殊、柜員在簽退時(shí),除了上繳尾箱汁果、進(jìn)行柜員軋帳外涡拘,還需檢查柜員臨時(shí)存欠登記簿,檢查柜員有無關(guān)聯(lián)交易未完成据德。
6鳄乏、在交易進(jìn)行抹帳處理時(shí),必須首先檢查該交易是否已被核銷棘利,若已被核銷橱野,首先對核銷交易進(jìn)行抹帳處理,或通過沖正交易完成對交易的調(diào)整善玫。
九水援、結(jié)束語
銀行核心系統(tǒng)作為銀行IT系統(tǒng)中的“心臟”系統(tǒng),起著對整個(gè)銀行的運(yùn)行支撐的作用蝌焚,而其中的賬務(wù)處理,更是銀行的血脈誓斥,融會貫通整個(gè)銀行的核心系統(tǒng)只洒。再回到我們最開始提到的三個(gè)關(guān)鍵詞:產(chǎn)品、賬戶劳坑、科目毕谴,層層深入,每一層都有很多細(xì)節(jié)上的關(guān)注點(diǎn)距芬,每深入一層都能有新的收獲涝开,每一層都值得深究,每一層都需要一整篇章來介紹框仔。因?yàn)橹挥羞@樣的深入分析和總結(jié)舀武,業(yè)務(wù)才會更嚴(yán)謹(jǐn),系統(tǒng)才會更完善离斩。所以作為一個(gè)初步的梳理银舱,可能還有更關(guān)鍵點(diǎn)有遺漏瘪匿,歡迎各位小伙伴補(bǔ)充,一起探討寻馏。