什么是支付通道,一篇文章了解支付通道理念
一、什么是支付通道?
我没有去百度和维基“通道“”这个词。“道“”,人走路用的,从一个地点通向另一个地点。
金融系统的通道也是这样,不过道上的不是人,是资金流。所谓通道,就是一个能把金钱从一个卡转移到另一个卡的方式。
当然,通道的理解也应该有个角度问题,不同的系统,不同的角色,看懂的通道是截然不同的。
如果你是某金融平台支付系统开发人员,你看到的、需要的通道,可以是某些具有支付牌照的第三方公司(支付宝、微信支付还有一些XX宝之类的支付公司)。或者,有足够的能力,能直连银行系统,或者银联和网联系统,这些也是你支付系统的一种通道选择。
如果你是某个具有支付牌照,对外提供支付能力的第三方公司。你需要的通道就是那些金融机构:银行、网联、银联。他们都是你的大腿,靠接通他们的核心系统,你间接具有转移资金的能力。
如果你是金融机构(银行),央行就是你的通道。跨行、结算、清算都是央行的职责。你关心的是央行的大小额系统、超级网银系统,这也是是金融活动的根基。
通道是分层次的,下层为上层服务。监管机构也在严格执行这套体制,各司其职,每一层的角色都有不同的监管标准和要求。我们能做的就是在合理合法的基础上,为用户提供更低成本成功率高的支付能力。
二、自己的一些支付对接经验
本人担任过一些金融系统的开发工作,尤其是支付系统参与的也比较多。P2P,消费金融,证券交易等业务都或多或少涉及过。
开发过程中,接入过众多通道。第三方支付公司:支付宝、微信支付是最主要的。其他第三方支付公司:某付宝、X卡通、XX支付,也有十几家。对于银行系统,有幸也参加过,通过专线对接某大行,银联等金融机构。
对于央行,请教过央行结算司的同学,查各种资料,系统的了解过央行的结算和清算过程。
今天就简单总结一下,自己对接过程中遇到的各种奇葩问题。
三、曾经遇到的各种坑
3.1 不要全部相信支付公司的文档
当商务和支付机构谈成合作后,对方会提供接入的文档。这个文档就是一份对方的接口功能介绍和使用说明。先告诉你结论,不全信,任何接口确定后使用。
这里给大家介绍个经验。和对方人员沟通时,可以先问问其他公司怎么接入系统的,使用了哪些接口。千万不要使自己成为第一个吃螃蟹的,不做线上新功能的小白鼠,资金系统可不是闹着玩的。
用哪些接口
一般支付公司为了支持众多使用者,提供的接口较多,同一个功能也有多个实现。所以先确定自己的功能需求,把这个跟对方讲清楚。往往,对方开发人员会比你更了解,对于使用哪些接口,他们很快就能帮你找到最优接口使用方案。
不仅节约了你的时间,代码安全上也有保证,谁都会推荐自己觉得靠谱的接口的。
参数问题
每一个参数,及时后面有备注,也要多问问。比如必传,非必传就有一定的时效性,对方可能改了代码,但是说明文档没有及时更新。
时间,起始时间,截止时间
对于查询类,一定要把是时间控制好,不是所有系统都支持全类型查询的。时间的格式也要符合要求,记得有一次就没传查询时间,对方也没有参数校验,导致了一个严重的全表查询,效率极低。
时间点也要控制好,尤其是起始时间、截止时间是否包含当天。这些小问题往往能引起大的问题。
业务码返回不准确
对方的返回值和返回码很重要,一定要和对方确定好是以码为准,还是以描述为准。不要笑,真的有支付公司系统以描述为准的。
还有一点,返回码和描述的内容和你理解的差距有时很大,问清楚具体含义。有的支付公司的,接口返回值描述的都是“系统异常”,这个就**了,你需要自己和对方去甄别。
3.2 友商系统变化
系统发布,升级服务
一定沟通好对方的发布时间点,金融系统都会有定期的发版周期。在发版时间内要观察系统是否受到影响。这些公司,时不时的就会遇到发布新功能但是带着伤,你必须不要被友商拖死,他们可以发公告“由于网络原因。。。”,你怎么办 ?
IP 地址变更
金融系统都会对安全要求很高,对IP有严格的限制。去请求合作方,合作方去请求你,都会有直接使用IP的场景。此时要及时通知双方IP变化。记得有一次,合作方的域名解析改变,这么大的事情我们没有收到通知,入金充值请求根本无法使用,都在排查系统原因,没有想到IP会变化。
Https证书升级
支付都是HTTPS请求,难免会遇到证书变化,证书升级。这个也要注意。
通讯协议变更
接口的加解密也要注意,即使同一个文档上的不同接口,协议也有可能变化。合作方的有时会更新一部分接口,你以为全部接口协议没有变化,一旦上线,定时大错。
限额根本不准确
支付公司的通道一般受银行的影响,有的公司能及时动态调整,有的做的不尽如意。我们需在把握合理的阈值,保持金额略低于对方提供值,或者失败后动态调整限额。达到更好的入金充值效果。
3.3 自己的系统出现矛盾
对账文件和日间数据不一致
对接过支付公司程序员会知道,有日间数据和日终数据两种。但是同样是一家公司的系统,日间和日终数据也会出现差异,一定要和产品同学、合作方沟通好,以哪个数据为准。
不同的问题,对应不同的解决方案。记得有一次合作方提供的日终数据为空,代表着什么啊?我们白天做的可能都是错的,当时慌得一比,幸好及时和合作方确定是他们的系统问题。
不要频繁的请求合作方
开发前,确定好合作方的QPS和TPS。不要去频繁请求合作方,真的有可能挂掉的。
四、总结
今天只是抛砖引玉,对接支付公司是一件让你怀疑人生的一件事,问题五花八门,墨菲定律,你担心的总会发生。你没想到的也会发生。
最后,及时的要到对方的紧急联系人,这是最重要的。这是最有效的快速解决的一个前提。
什么是支付通道,一篇文章了解支付通道理念相关推荐
- 闪聚支付 第3章-微信支付接入指南
支付产品 产品列表 微信为普通商户提供如下支付产品: 产品介绍详见:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=2_1 1.付款码 ...
- 闪聚支付 第3章-C扫B支付
需求分析 C扫B的概念 C扫B,即顾客(Customer)扫描商户(Business)提供的二维码来完成支付.下图是支付宝提供的C扫B业务流程: 商家出示付款二维码 客户打开支付宝或微信的扫一扫,扫描 ...
- 用虚拟信用卡支付的时候经常出现交易失败、无法付款?一篇文章帮你解决这些问题
经常会有一些新客户反馈使用虚拟信用卡支付的时候会出现很多问题,就会开始怀疑是不是虚拟卡有问题,但其实用实体卡也会出现这些问题的.海外支付为什么这么容易交易失败呢? 一.系统原因 1.缺少客户熟悉的支付 ...
- 一篇文章讲清楚,最近流行的“一码付”、“聚合支付”到底是个什么鬼?
"你永远不知道意外和明天哪个先到",这句话应该是很多中小企业的生存现状. 中国每年约有100万家企业倒闭,平均每分钟就有2家企业倒闭!中国4000多万中小企业,存活5年以上的不到7 ...
- 2022年最新微信小程序支付后端代码通俗易懂一篇文章让你了解微信支付
一.获取客户资料(百度很简单) #1.微信支付API秘钥 appsecret: d1056292feb*******439f32a0179baf918#2.微信商户IDmchid: 1618****6 ...
- 学习状态通道,Part-1:支付通道
在我的上一篇博文中,我简单地讨论了状态通道,以及为什么我认为它对于开启以太坊的大规模可用性来说,是至关重要的.在此,我打算通过几篇博文来推进一步,这些博文对 L4 团队用 Countfactual 做 ...
- 闪聚支付-第1章-项目介绍
项目介绍 项目背景 随着移动支付的盛行,商业银行.第三方支付公司.其它清算机构.消费金融公司等众多类型的机构,都在为商户提供网络(移动)支付解决方案.另一方面,用户的支付需求繁多,支付渠道已呈&quo ...
- 第六章、支付结算业务的核算
第六章.支付结算业务的核算 第一节.概述 1.支付结算的意义 定义:支付结算是指单位或个人在经济活动中使用票据.信用卡.汇兑.托收承付.委托收款等结算方式进行货币给付及资金清算的行为.(无论哪一类经济 ...
- 95epay支付通道种类:3D通道,实时非3D通道,高级延时非3D通道,高级实
◆|95epay支付通道种类:3D通道,实时非3D通道,高级延时非3D通道,高级实 时非3D通道,高级4S通道.(国内通道最优,商家有保障性) ◆|功能.优势:VISA + MASTERCARD + ...
最新文章
- 马斯克晒特斯拉Autopilot疯狂驾驶模式,称还要开发“极速惊魂”模式
- 计算机林中鸟歌曲,励志歌曲曲-林中鸟
- 如何更好地利用Pmd、Findbugs和CheckStyle分析结果
- Ubuntu之bashrc:成功解决Ubuntu系统内出现的conda:未找到命令
- Java后台调用Flex自定义类型 (Java和AS类型转换问题)
- 数据结构与算法 / B- Tree 和 B+ Tree
- HP proliant服务器从usb启动
- windows7使用Sphinx+PHP+MySQL详细介绍
- 组建内存双通道的条件
- 你们还留恋windows什么呢?
- SQL对字符串进行排序
- CNN 总结 模型归类
- matlab zxing ean13,【zxing】Ean13 Contents do not pass checksum
- 内网安全“小迪安全课堂笔记”域横向
- flashpaper实现百度文库、豆丁网文档预览功能 - 坑
- pytorch中的学习率调整函数
- Linux高级命令find,grep,sed,awk
- 弱水三千,只取一瓢,当图像搜索遇见PostgreSQL(Haar wavelet)
- 阿里巴巴的AI价值观,以及“ET大脑”战略
- win18系统如何打开c语言,控制面板在哪里打开(Windows打开控制面板的方法)