支付路由管理

做者:王小憨
连接:https://zhuanlan.zhihu.com/p/20060139
来源:知乎
著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。
 算法

老王开了个杂货店,蒙街坊照顾,生意一直红红火火,慢慢地店面从一家到两家到三家,最后基本上有商业中心的地方都有了老王的店,而店面也从当初的几十平米的杂货店变成了几千平米的老王连锁超市。架构

店面大了,你们都喜欢来老王这边买东西,老王要管理的,要打交道的人愈来愈多,问题也多了。并发

  • 客户多了,从之前的街坊到集团大企业都来这采购,得处理的交易要好多,要可以都能交易,别临时断电断水或者人手不够,让客户买不了;
  • 合做多了,每一个种类商品都有供应商,甚至同一个商品也都有不少渠道给老王供货,这些关系都要处理好,才能拿到好折扣和给到老王更多的营销费用;
  • 要求多了,那些大客户们因为地理位置、公司规定和员工喜爱,每一个客户要求的服务都不同;
  • 天天的流水更大了,进进出出都是钱,老王那么大流水,总想可以怎么才能成本少一点?
  • 员工多了,供应商多了,环节多了,谁有个事怎么办,哪一个环节出问题了怎么办?
  • 大主顾们、一些老朋友们和一些比较重要的客人体验得照顾好,最好能记住他们常买的,经常使用的,不用说就知道喜欢什么要什么;

老王对于这些问题,有着朴素的想法,就是但愿都服务好。运维

  • 客人愈来愈多,老王去买了更多地收银台和准备了充电箱,防止排队过长和临时断电;
  • 合做的渠道愈来愈多,老王会根据合做关系、进货成本、给的营销费用以及要求,每家都进点货,维持好你们关系;
  • 大客户们的要求不太同样,老王作了好多种方案,可以根据客人的要求提供对应的打包方案,让客人们都同样;
  • 流水愈来愈大,老王会根据供应商们的提供的不一样产品和报价,每种商品选择最合适的进货渠道;好比大米用哪一种供应商的,洗发水找谁提供
  • 中间环节多了,有事了或者预计有问题了怎么办?老王多雇了些员工和多准备了供应商,而且设计了一个报表,谁有问题了,就立马找其余供应商来支持下,或者预计谁有问题了,也能自动提醒老王,让老王好提前就安排好,那个时间点应该找谁。
  • 大主顾们、老朋友和那些VIP们,一开始老王仍是小杂货铺的时候纯粹靠脑记后来大了老王给他们发了个贵宾卡,经过他们刷卡消费,老王知道他们买什么,喜欢什么,下次打电话或者刷卡的时候,老王也好店员也好都知道要买什么了,客人们也满意,老王也好提早准备。

 

这是老王开店的故事,老王的遇到的问题,朴素的想法,和坚持的处理方式,其实就是一个支付路由机制的体现,承担了一个支付的收益管理职能,致力于提高用户支付成功率,作到了自动熔断、智能分流;处理高并发、大吞吐、作到支付成本最低的选择。。。。。。高并发


那么如何实现这些了,因为一些涉及到保密,因此不便于讲的太细的请谅解 。优化

支付路由作为一个机制,它承担了一个支付的收益管理职能;而支付的收益管理追求的就是创建以用户需求满意度、支付成功率和收益率为目的,实现效益最大化的机制;而路由的实现是以通道为基础的,须要有丰富的通道。架构设计

以下图,做为一个路由的机制,创建引导模板展现控制场景支持支付方式展示和顺序,经过这个控制推荐支付从而达到影响用户支付行为的目的,而且引导模板支持不一样商家不一样展示模板,从而实现支付方式量身定制,用户支付行为记录与优化,提高用户体验,控制引导方案展现和推荐实现胡搜一最大化(里面涉及到的细节不少,不便讲的太细)。这也就是老王遇到要求的服务都不一样的问题。设计

经过交易路由规则可以作到把适合的交易推荐到合适的地方,达到下降成本的目的;自己路由规则可以控制通道维护时间处理和经过路由的运维策略实现自动熔断,也就是故障自动切换通道,保证成功率,在支付行业中“支付成功率是第一优先级”。这里面所说的就是老王如何节省成本、老王该找谁进货以及老王遇到了问题怎么办的方案。排序

因为背后通道都是对应银行,平时都要处理关系,因此不少时候须要切量且天然。 经过分流的路由规则,能够设定权重、限额,实现通道流量强制分布。以及经过流量分配算法造成或正态分布或强制策略达到各支付包装产品通道控制,甚至于在降成本的方式上使得指定交易不一样的通道类型又使得通道显得正常。这个也就是故事里面老王要处理各个供应商的关系。接口

这套机制可以走下去的前提是须要有丰富的通道,才能实现路由的分流、熔断、交易适配等等。文章里因为机密所致,不少地方只能说道浅尝即止,请你们理解。

 

做者:梁川
连接:http://www.zhihu.com/question/38278938/answer/79493500
来源:知乎
著做权归做者全部,转载请联系做者得到受权。
 

这里简单说一下第三方支付在作支付渠道路由设计的一些思路,供参考。做为商户,接入多家第三方支付,在渠道路由策略上比第三方支付的简单多。

一、支付渠道的封装层次
通常分为:银行接口->银行通道->支付渠道->支付产品->支付解决方案
银行接口指的是银行等提供的技术接口。
银行通道是对银行接口的封装,并包含了诸如具体合做银行及通道的详细信息。例如同为某家商业银行的某个支付接口,非总对总的状况,支付公司可能同时在北京分行、上海分行接入。
支付渠道是对银行通道的业务封装,包含了诸如通道成本、最低商户费率等信息。
支付产品是第三方支付对外提供的产品,例如快捷支付。
支付解决方案是针对某个行业的总体解决方案,包含了多个支付及行业定制需求。

所谓的支付渠道路由在以上的几个封装层次上均可以发生,所以如下指的“支付渠道路由”的概念是泛指,可能涉及以上各层次。

二、支付渠道路由的设计
通常采用规则引擎或相似方案(例如基于groovy),以支持对规则集灵活调整。

一个相对丑陋的支付渠道路由的设计方案(不必定很合理,仅供参考)

三、支付渠道路由的一些例子
按费率。
按业务级别。
按业务类型。
按渠道交易总额、单笔交易额、渠道限额等额度信息。
按支付渠道类型:移动支付,在线,代扣,b2b,信用卡无磁无密,游戏点卡等。
按支付渠道可靠性要求,例如支付成功率。
按商户类型。
按渠道状态,例如监控系统发现某渠道掉单率较高时候。
按照到帐时效。
按所在银行帐户的资金头寸。
按营销策略,例如某个渠道年末有营销活动。
按支付渠道优先级,能够是静态优先级,也能够是动态优先级,实际上优先级的也概念包含了以上各类路由规则。

其实支付渠道路由并没那么高大上,若是单纯只是知足企业当前的业务须要,用最丑陋的If-Else方式也能搞定。最复杂的问题是怎样让支付渠道路由的架构设计可以快速响应业务快速发展、业务模式创新的须要。

 

做者:MrColin
连接:https://zhuanlan.zhihu.com/p/21567401
来源:知乎
著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。
 

路由系统,即智能选择最优‘‘线路’’,对于支付结算系统而言,就是要智能选择入款、出款渠道,那如何体现其智能呢?咱们先看几个例子:

例子1: 现有2个渠道,渠道A的收费规则是1‰,渠道B的收费规则是2元1笔。毫无疑问,在其余条件相同的状况下,咱们更愿意使用更便宜的渠道,而手续费到底哪家便宜,会根据交易金额有所不一样。

路由,就是要实现节约成本!

例子2: 现有2个出款渠道,收费都是2元1笔,渠道A的到帐时效通常在30分钟内,渠道B的到帐时效通常在2小时内。显然,一般咱们会选择到帐时效快的。

路由, 就是要提升用户体验!

例子3:现有2个渠道,无论从成本上来讲仍是从用户体验来讲渠道A都占尽优点,但是有个硬伤,此笔交易渠道A走不通, 虽然渠道B成本高点速度慢点,可是毕竟能走通且知足用户的需求,也只好使用渠道B了。

路由,就是要确保渠道可用!

还有还有,若是某个渠道忽然瘫痪怎么办,傻傻的等到对方恢复吗?

以上,咱们对几个最基本的点进行了考虑,总结下来就是:

路由系统,在知足当前交易的前提条件下,选择咱们最但愿的结果。其中,前提条件有不少,入款和出款还不太同样,通常有单笔限额、渠道当前是否可用等,后面会详述;最但愿的结果,与公司的政策策略相关,通常可能考虑的是成本和用户体验。

咱们看下入款(支付) 、出款(提现)渠道常见的几个限制维度:

入款:单笔限额、卡种、银行、当日限额、 当月限额等;

出款:到帐时效、金额、发卡行、发起时间、帐户类型(对公、对私)等,出款这块的知识能够参考以前的一篇文章《提现业务流程》;

路由系统逻辑图能够参考下图:

相关说明:

一、按照手续费从低到高对渠道进行排序,对于手续费相同的,则再依据渠道权重进行排序;

二、按照渠道排序依次对渠道条件进行检查,若是当前渠道有任一条件不知足,则该渠道不知足条件,进行下一渠道条件检查

三、直到找出知足的渠道,若是全部渠道皆不知足,则不支持本次交易。

以上路由系统逻辑模式比较适合渠道较多,判断规则较复杂的场景,若是是出款路由,且规则相对简单,也可使用以下模型:

大体逻辑为:

一、配置N条规则及1条默认渠道

二、每条规则包含‘‘条件’’和‘‘渠道’’2个组成部分,条件由若干个条件维度组成条件集合

三、当知足此条件时使用该渠道,如此规则不知足则进入下一规则判断直到找到符合的规则

四、若是全部规则都不知足,则使用默认渠道

为了便于理解,给你们举个例子

银行A:全部出款都免费,可是到帐周期偏长;

银行B:行内转帐免费,实时到帐,跨行转帐收费;

银行C:全部业务均收费,可是5万如下实时到帐,5万以上到帐周期也较长

根据以上条件咱们设计方案为,如收款银行为B时,则使用银行B进行出款;如收款银行不为B&金额为5万内&到帐时效要求高时使用银行C出款;除以上规则外,其余全部状况使用银行A出款。

其余说明:

以上讨论的仅是简单路由系统模式,仍有许多细节没有说明,挑几个须要注意的点介绍给你们

一、每一个渠道能配置是否可用,当第三方渠道出现异常时能够进行切换

二、每条规则支持配置生效时间、失效时间,不须要进行蹲守进行变动操做

三、规则调整支持热插拨,而不是写死在代码里面,不须要重启应用

路由系统,对于出款来讲有路由系统就够了,通常不涉及产品层面的改动;可是对于入款而言,则最好有产品层面的相应调整。

入款产品层面的设计将在后期给出,本篇先作铺垫,你们也能够先行思考下。

任何问题,评论留言!

===========================

欢迎拍砖,鼓励点赞,建议关注

===========================

相关文章
相关标签/搜索