支付路由是什么?(这3点你需要了解)
在支付系统中,支付路由是重要的组成部分。本文作者从自身工作经验出发,分享了关于支付路由设计的相关经验,希望能帮助新人快速理解。
背景
近期在回顾以前工作项目历程的时候,我突然有感于初次做支付路由系统,对于支付路由毫无概念,同时网上资料十分匮乏,也遇到过一系列的坑,甚是十分苦恼。因此我决定将所积累的经验知识分享出来,希望可以帮助新人快速理解。
一、支付路由是什么?
基础概念:
在支付系统中,支付公司通常会给商户提供多种支付方式,而每一种支付方式,对于支付公司而言,都会接入对应的支付渠道;
支付方式:
即我们常用的个人网银支付、企业网银支付、微信支付、支付宝支付、快捷支付、无卡支付等。
支付渠道:
即支付机构背后会接入多种上游银行渠道,如各地区银联、网联等,在断直连之前还会接入建设银行、农业银行等。也就是说支持一种支付方式,背后有很多的支付渠道
而支付路由,就是根据用户所选择的支付方式(如个人网银支付)之后,支付机构通过提前配置好一系列的“规则引擎”,最后在众多支持的支付渠道后面,万里挑一选出当前最优的一条支付渠道。而这种规则引擎就是一种路由机制。
二、支付路由的价值
作为一家支付机构,其主要是给商户提供稳定、便捷的支付通道服务。因此每一家支付机构往往会接入多家支付渠道,从而避免某个支付渠道出现故障,降低用户支付体验。
那么尤其是“断直连”之前,支付公司背后的支付渠道能力参差不齐,每一家支付渠道支持的服务能力、支持的支付方式,稳定性以及价格成本均会不一样,具体表现如下:
- 稳定高的支付渠道,渠道价格会很高,同时支持的支付方式也不一定全
- 价格便宜的支付渠道,要么系统稳定性不足;
- 价格适中的支付渠道,有些支持的银行少,甚至支持的各个银行互不相同;
- 稳定性适中,服务态度较好的支付渠道,也有很多支付方式不支持;
基于以上,支付机构就需要全面考虑好去设计一套支付路由系统了,而支付路由的价值也将体现在以下几点:
- 保证渠道多样性;提高综合服务能力;提供多银行渠道;
- 保证用户体验,在支付渠道出问题时,将用户损伤降低最小,保证对外的用户体验一致性;
- 降低渠道成本,间接提高收入;
- 方便运营操作,降低人工操作成本,提供运营工作效率
三、支付路由怎么设计的?
那么要解决以上问题,就需要考虑支付路由应该怎么设计了,其实主要分为两个大的层面:① 通用路由层面。即绝大部分路由的规则是怎样的;② 单独模板路由;个别特殊的路由规则。
- 通用路由层面:即这种路由规则是属于通用的,对所有商家都生效。举例:默认交易金额为1000元以内,则优先选择支付渠道A;
- 单独模板路由:即某一些商户背后的支付路由与通用的不一样;比如通用的订单交易金额1000元以内,选择支付渠道A,但是对于商户b而言,其优先选择支付渠道为B;
接下来分别解析 通用路由设计 和 单独模板路由 的设计思路
1. 通用路由设计
要做好支付路由的设计,我们需要特别关注路由的两端:商户侧、渠道侧。其中商户侧属于路由的输入端,主要判断能传来哪些有效信息;而渠道侧则是输出端,只要判断最终可筛选的支付渠道有哪些;
那么以亲身打造的网银支付路由为例:
商户侧:
支付时间、商户编号、支付金额、支付银行(建设银行、农业银行这种);
卡类型(借记卡、信用卡),支付方式(个人网银/企业网银)
渠道侧:
支持银行;支持银行卡类型(只支持纯借记卡、借贷混合都支持);
稳定性(没法在系统配置);渠道成本(单笔、阶梯价)
(1)1. 初步满足符合当前条件的支付渠道:
- 支持当前支付银行的渠道;
- 支持当前卡类型的渠道;
- 订单金额在限额范围以内的渠道;
(2)再根据优先级判断。由于通过以上条件过滤之后,那么所选出的支付渠道均符合要求,那么就需要在已有的数据中进行设定优先级权重:
- 优先级数字越大,表示权重越大,即 最先判断;
- 优先级数字一样大,表示权重相同,则 随机选择支付渠道;
通过以上两个条件将筛选出只有一条支付渠道,而这条即为最优支付渠道;
如下示例所示:符合支付请求参数条件的渠道,只有A、C、D,但是最终将选择最优的支付渠道为A,因为通过优先级的判断条件支付渠道A最优;
2. 单独模板路由设计
当然凡是都有意外情况,并不是所有商户都适用于通用路由规则。在实际的运营过程中,我们对某一些商户单独配置特殊的路由规则,因此单独模板的路由规则应运而生。适用的场景:如果符合条件的支付渠道有A,C,D,正常情况下运营会希望优先选择渠道A ,因为该渠道比较便宜;但是针对于商户c,我们希望是以用户体验为主,所以尽管支付渠道C更贵,但还是希望优先选择渠道C而不是A;
对于这种情况,我们可以通过给商户c配置单独模板,模板里面的支付渠道是C即可,这样在整体的判断逻辑将所有调整:
- 优先判断是否有单独模板路由;
- 有单独模板则先判断模板里面是否符合条件的渠道,有的话则取优先级最高的一条支付渠道;
- 单独模板无可用渠道,则判断是否需要进行通用路由;需要的话则走通用路由选择渠道,否则的话提示“无可用的渠道”。
四、延伸思考
1. 产品方案思考
当初做支付路由的时候,缺乏参考性,导致我对最初路由思考的非常复杂,甚至把自动化切换机制考虑进去了;例如当用户请求失败超过X次的时候,则自动关闭该渠道,同时切换其他支付渠道;
从现在来看,不能说以前的想法完全错,但至少没考虑实现成本,至少是不符合ROI的。因此顺便延伸出我对产品方案的思考:一个好的产品方案首先必须是能解决当前问的是,也必须是简单的,最重要的是要符合投入产出比的。
2. 排序功能
近期我梳理电商平台人工置顶商品排序的问题,由于需要支持一次性置顶多个商品以及可调整排序的需求,我一时间竟没有想到好的方案比较苦恼;而通过回顾以前的产品设计,温故而知新,突然发现只需将“优先级”概念运用到置顶排序就可以解决排序冲突的问题。
结语
俗话说,万事开头难,无论我们是新进职场,还是切入新领域,在我们打造第一个项目或者产品的时候都会比较煎熬,总有点不知所措。但只要我们在这个过程中多思考一点、多忍受煎熬一点,同时也要敢于请教,不怕批评,最终“拨开云雾见天日,守得云开见月明”,我们所获得的成长也会是巨大的。
本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/180963.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除