我一直对支付很感兴趣。2015年,因为工作需要,我接触过好多第三方支付公司,做过支付路由,也处理了很多支付异常情况。但是支付中的清算部分我一直不太理解,不知道银联在联结各方的时候是如何发挥作用的。最近和银行IT圈子的校友们聚会,偷偷向工行和民生负责渠道、银联对接的同学请教了。所以有了这篇总结,供希望了解支付清算的朋友们参考。
中国的支付清算有两套体系中国现代化支付清算系统和第三方支付清算系统。
当你去ATM取钱时,用的是央行的CNAPS(中国现代化支付清算系统)
当你用支付宝买买买时,用的是第三方支付的清算系统
这里先介绍第一部分:CNAPS。
当你在ATM取钱时,银行都做了什么我们先拿一个ATM取钱的例子来说明跨行业务的过程。
假如你拿着一张工行卡去建行的ATM取了100元,这时候就发生了跨行业务。
这个过程非常简单:
建行系统告诉工行系统,有个工行用户要在我这儿取100元,能不能让他取?
工行说,他的工行账户够扣100元,你先帮我给了吧!
建行ATM就吐出100元给你;
于是,你拿到了现金,同时你的工行账户也减少了100元。对你而言,整个交易就已经结束了。但是,建行先替工行给了你100元,这里形成了一个银行间的债务关系:工行欠建行100元。这100元何时还,怎么还,虽说是银行之间的事,但是只有等这100元还清了,银行才会把这笔交易当做是真的完结了。可见,银行的一次跨行取款可以分为支付和清算两个步骤。
支付和清算就是信息流和资金流从你塞卡到ATM吐出钞票,这个过程称为支付(Payment)
工行还给建行100元,这个过程称为清算(Clearing)
支付反映的是交易的信息流,一般都是实时的。当你在建行ATM取款时,工商银行层面只是在它内部账户做了一次记账而已,工商银行的资金并未减少。但是建行和工行之间一定会发生实际的资金划转以清偿债权债务关系,所以清算反映的是交易的资金流。银行之间可以每天清算一次,也可以隔一段时间再清算,不过大多数情况下的清算都是非实时的。
现代社会的几乎所有商业行为,最终都会产生交易。而所有的交易,除了物物交换,最终都体现在银行账户间的资金划拨上,因此一个国家的支付清算系统(Payment and Clearing System)是最基础的工程。这个系统涉及两个问题:
信息流如何传递——即建行和工行之间以什么方式通信?
资金流如何清算——即工行什么时候,以什么方式还给建行100块?
这两个问题的解决方案,就是我们要介绍的CNAPS(中国现代化支付清算系统)。CNAPS是逐渐演化而来的,在这个方案出来之前,为了解决信息流和资金流问题,我们经历了古代的票号,近代的手工联行系统,以及电子联行系统EIS。所以在介绍CNAPS之前,先让我们回到古代,看看古人是如何用票号和镖局来解决这两个问题的。
晋商的票号和镖局早在清道光(1823年)年间,山西平遥商人就创立了“日升昌”等专门办理汇款业务的票号(古代的票号、钱庄就是现代银行的雏形)。著名的红顶商人胡雪岩就是做票号生意起家的。
当时的票号支持异地汇款业务:
客户来日升昌汇款,交了银子之后,票号就开出汇票给客户。跟银行一样,票号也有总号和分号,客户可以携带汇票或者把票寄给亲人,只要凭票就可以到日升昌全国各地的分号兑出银子,分号给客户兑换之后先记内部账,日后再和总号清算债务。
从此之后,商人在城市之间贸易可以不用携带大量的银子。而汇票在不同城市的各个分号之间流转也形成了很多债务,有大量的银子需要周转,镖局就专为票号来运送银子以及为商人运送票据,有点类似于现在为银行押钞的威豹,不过镖局的手续费可是高达5%!
在这个时期,信息流和资金流如下:
汇票+账本(手工记账)是票号在支付环节的信息载体,解决了信息流问题;
镖局替票号运送资金,解决了资金流的问题。
联行信件和邮电局到现代银行出现后,银行间开始了一套基于“同业头寸”的清算方式。
我们摘录网上的一段清算科普:
从两百年前老罗斯柴尔德打通不同银行间银票的通兑开始,银行间清算业务就一直延续到现在。当年,老罗斯柴尔德拉拢一帮银庄的掌柜跟他们商量,“以后我的客户拿着我家的银票可以到你家取金币,然后你再拿着银票到我家取金币,作为回报我也允许你的客户到我家取金币”。从这个时候开始,标志着现代银行的通存通兑业务就开始了。由于大多时候双方客户都有交叉,实际需要相互取的金币并不多:比如你的客户在我这里取了1000金币,我的客户在你那里取了800金币,然后我们两家一比对账本双方认可,你再给我200金币。再把银票一交换,我们双方的账就清了,这个过程就叫清算,其中比对账本的过程就是对账。
这段科普描述了银行间通存通兑的业务原理,其中有一些细节需要说明:
A银行怕B银行的客户在A这儿取了钱之后,B不认账。所以为了保险起见,银行之间会要求对方银行先来开个户并且存一部分钱进来作为备付金,或者叫存款准备金。这个备付金账户是专门用于清算的同业头寸户;
A银行需要在所有银行都开户,才能实现通存通兑;
我们国内的银行显然也参照了这一套来实现跨行交易,银行之间互相都开了备付金账户。此时,每家银行都是一个清算机构,为银行间的资金往来做清算。
▲图片说明:银行之间的备付金账户
一直到1984年中国人民银行专门行使中央银行职能之后,我们国家确立了法定存款准备金制度。央行的备付金系统正式确立。此时,银行跨行的资金清算有两种选择:
• 用老办法,在所有有往来的银行开立清算账户清算
• 所有金融机构都在央行开立清算账户,由央行为商业银行统一清算
▲图片说明:央行备付金系统
显然大家都想用第二个方案。然而在那个时代,央行能承担的职责是很有限的,各银行内部数据还没有集中,没有电子化的记账系统,国内甚至都还没有银行卡,客户要转账也没有满大街的ATM。总之一句话,国内的金融环境还没有达到让央行推行全国统一结算制度的客观条件。
为了满足跨行结算的需求,央行当时提出商业银行要“自成联行系统,跨行直接通汇,相互发报移卡,及时清算资金”。也就是说同一家银行的总行及分支机构称为“联行系统”。同一联行内的资金结算,由联行总行自己做。这样,建行深圳分行和建行北京分行之
本文来源:不详 作者:佚名