小额支付系统普通汇兑链路介绍及其测试分析

金融app的测试经常涉及到支付交易的测试,例如理财申购,转入转出等。在未接触到银行系统之前,对支付系统的处理认识仅仅停留在接收返回结果的层面,并不清楚其中的处理逻辑。因此,本文将以小额普通贷记业务中的汇兑往账业务为例,介绍小额支付系统的处理链路及其测试分析。

一、小额支付系统的概述

支付系统根据交易金额的大小、交易的紧急情况,将支付系统划分为大额支付系统和小额支付系统。

1.小额支付系统的特点

小额支付系统主要处理跨行同城、异地纸质凭证可以截留的借记支付业务以及金额在规定起点以下的小额贷记支付业务。根据支付指令进行实时或批量转发,净额清算。小额支付系统主要有以下特点:

    批量处理

    借记业务、规定金额起点以下贷记业务

    主要服务于社会公众日常支付等零售支付领域

7*24小时运行

    实时业务20秒

2.小额支付系统的基本业务

小额支付系统处理的业务根据业务种类,可划分为支付类、信息类、特殊交易类、对账管理类。

    支付类业务主要包括普通借贷记业务、实时借贷记业务、定期借贷记业务;信息类业务主要是提供查询类业务,比如业务状态查询等;特殊交易类业务主要是针对异常业务进行对应的冲正处理等;对账管理类主要是进行对账处理。

二、普通汇兑业务的链路介绍

1.普通汇兑介绍

普通贷记业务主要是处理主动汇款业务,其中汇兑业务为普通贷记最重要的业务之一。会对主要包括现金汇款、普通汇兑、网银支付、外汇清算等。普通汇兑的应用场景是客户通过转账方式发起的汇款业务。

2.普通汇兑的处理链路

前面说到,小额支付系统的特点为批量转发,净额清算。因此,当客户1发起一笔普通汇兑交易时,银行的小额支付系统并不会单笔转发给人行,而是根据系统自设定,按照时间或者笔数组包,以包的形式转发给人行。人行接收到小额的批量包,也不会进行逐笔清算,而是净额清算。具体举例说明一下,方便大家理解。有如下一批交易(这里以A、B两个银行为例):

    A银行向B银行发起一笔100元汇款

    A银行向B银行发起一笔300元收款

    A银行向B银行发起一笔20元汇款

1)渠道端发起汇款交易

2)A银行支付系统接收到渠道端发起的汇款交易指示后,每一笔都需要去核心系统进行记账。

3)当达到一定的时间或笔数达到一定的数量后,A银行支付系统便进行组包,并按照人行的规定的报文格式,将包以报文的格式转发给人行。

4)人行收到我行的报文后,根据报文内容,先将每笔交易记在相应银行的头寸下,汇总后,再进行清算,也就是净额清算。当批量包处理成功后,人行便将该包转发给B银行支付系统并将结果同步到A支付系统。

5)B银行收到报文后,便将对应的钱转入对应客户的账户。

6)A银行支付系统收到人行的成功回执后,再将结果返回给渠道端。

三、普通汇兑的测试分析

从上面的介绍来看,普通汇兑的处理好像并不复杂,但是涉及到钱的测试,在案例设计都需更加严谨,接下来我们就测试来进行分析。【汇兑分为汇兑往账(即从我行向他行发出的汇兑交易)、汇兑来账(他行向我行发来的汇兑交易),这里以汇兑往账为例】

1.需求分析

首先,我们先进行简要的需求分析。

支付系统接收到渠道端的交易后,对业务参数进行检查后,到核心进行记账;待柜面发起定时组包指令后,支付系统便进行组包发送人行,并等待接收人行的回执,根据回执进行对应的处理后,将结果同步返回到渠道端。需求项主要有:

    1.业务参数检查

    2.记账

    3.发送报文

    4.接收回执

    5.同步结果

2.实现逻辑分析

梳理完需求后,下面根据具体的需求与实现,我们进行逻辑的梳理,具体如下图。根据逻辑图,可从以下三块进行检查:

    1.逻辑处理检查:业务参数检查、异常处理检查、组包检查、报文发送检查、回执接收检查(拒绝、排队、清算)、冲正处理、状态更新

    2.判断分支检查:记账结果分支、大小额判断分支、发送人行结果判断、人行回执结果判断

    3.异常情况检查

3.测试点分析

根据逻辑梳理的检查项后,我们可进一步输出测试点。

输出测试点之后,有一个问题是,如何覆盖?

    为了保证流程的完整性、全面性,因此这里建议使用场景将测试点串起来的方法进行覆盖,如:“小额普通汇兑往账_扣账成功,人行拒绝_冲账成功”这一场景,即可覆盖以下这些测试点:

4.测试中的重难点

1)渠道多

    Q:发起汇兑交易的渠道有很多,比如柜面、网银、手机银行等,那么在测试设计时,我们如何判断是需要全渠道覆盖还是挑选典型渠道进行覆盖?

    A: 在考虑这个问题前,我们需清楚支付的业务处理逻辑。比如汇兑这一交易,若各个渠道调用的是支付同一个接口,那围绕支付展开的测试则只需保证这个接口的处理逻辑正确,用哪一渠道来覆盖并不重要。但围绕渠道展开的测试则不同,各渠道的参数配置、与支付的通讯方式等都各异,因此各渠道在接入支付后都需要再次测试。

    2)关联方依赖性强

    Q:在1的背景下,支付系统接收的每一笔汇兑交易假设都由渠道方来发起,那则需要关联方的配合,如果关联方配合度低,测试起来效率会很低。这种情况,应该如何解决?

 A: 由于支付百分之90的交易都可以在柜面发起,因此条件允许的话,测试人员可以安装柜面的相关环境进行交易的发起。若条件不允许,则需mock调用。

    以上两者都存在各自的优缺点:前者操作起来更加方便快捷,真实性高、连通性强,但是假设柜面环境出现问题,则会阻塞测试。后者不依赖于环境,也可以使得有效的增加覆盖,但mock会使测试失去真实性、连通性。因此哪种更合适需要实际考虑。

    3)账务检查

账务是测试中比较重要的一步,假设账务出现问题,那带来的经济损失是很严重的。所以账务的测试相当重要。

    账务有两种,一种是记账账务,一种是冲正账务。正常交易的记账账务,对该账务的金额、机构、科目号、科目名等等都需要仔细核对;异常处理产生的冲正账务,冲正账务是与错账相反的账务,此类账务在测试过程中是必须覆盖的。

    4)模拟人行报文

我们发的往账交易都需要人行的回执,测试时,人行不会根据你的测试需求,给你送你对应的异常情况。因此我们需自己模拟人行的报文进行测试,即自发自收。这对报文中的要素、逻辑需要有一定的熟悉程度。

    以上,就是小额系统普通汇兑的流程介绍以及测试相关分析。欢迎大家一起探讨,也欢迎指正。

作者:平安金融壹账通测试工程师  王思虹

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,214评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,307评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,543评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,221评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,224评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,007评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,313评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,956评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,441评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,925评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,018评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,685评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,234评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,240评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,464评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,467评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,762评论 2 345

推荐阅读更多精彩内容