两个用户通过银行转账的资金流过程简析

本示例显示了客户A准备用自己的工行卡给客户B的农行卡转一笔钱的各个机构之间的信息流和资金流交互过程。有任何疑问欢迎指正。

participant 工行(客户A的开户行)
participant 银行卡组织(清算机构)
participant 农行(客户B的开户行)
participant 中央银行(结算机构)

工行(客户A的开户行) ->> 中央银行(结算机构): 工行在央行开户,并上缴存款准备金
农行(客户B的开户行) ->> 中央银行(结算机构): 农行在央行开户,并上缴存款准备金

工行(客户A的开户行) ->> 工行(客户A的开户行): 客户A在工行开户,并存入至少1w块钱
农行(客户B的开户行) ->> 农行(客户B的开户行): 客户B在工行开户
note over 工行(客户A的开户行): 客户A准备用自己的工行卡给客户B的农行卡转一笔钱,1w。

工行(客户A的开户行) ->> 工行(客户A的开户行): 检查客户A的资金是否足够,如果够,直接扣减1w
工行(客户A的开户行) ->> 银行卡组织(清算机构): 发起支付指令

银行卡组织(清算机构) ->> 农行(客户B的开户行): 支付指令
农行(客户B的开户行) ->> 农行(客户B的开户行): 农行先检查客户B的账号、姓名是否匹配
农行(客户B的开户行) ->> 农行(客户B的开户行): 客户B的账户余额增加1w
农行(客户B的开户行) -->> 银行卡组织(清算机构): 成功
银行卡组织(清算机构) -->> 工行(客户A的开户行): 成功
 
note over 银行卡组织(清算机构): 第二天日终清算。假设这两个银行仅仅只发生这一笔交易

银行卡组织(清算机构) ->> 银行卡组织(清算机构): 内部清算 

银行卡组织(清算机构) ->> 中央银行(结算机构): 支付指令:工行头寸减少1w
中央银行(结算机构) ->> 中央银行(结算机构): 工行头寸减少1w
中央银行(结算机构) -->> 银行卡组织(清算机构): 成功
银行卡组织(清算机构) ->> 中央银行(结算机构): 支付指令:农行头寸增加1w
中央银行(结算机构) ->> 中央银行(结算机构): 农行头寸增加1w
中央银行(结算机构) -->> 银行卡组织(清算机构): 成功