深入解析支付系统:用户购物流程与资金流向全揭秘

2025-03-10
来源:网络整理

背景

最近,我正在研究付款系统,因此我借了资源并创造了付款系统设计的记录。

概述

支付系统是连接消费者,商人(或平台)和金融机构,管理付款数据,呼叫第三方支付平台接口,记录付款信息(相应订单号,付款金额等),金额和解和其他职能的桥梁。根据不同公司付款业务的不同定位,大约有几个阶段:

1。支付系统

让我们首先看一下用户完成购物需要做的操作:

通常,消费者将在移动应用程序或网站中涉及与付款相关的业务方案。用户只需单击付款按钮即可输入付款密码即可完成整个付款过程。因此,我将研究设计完整的付款系统时需要考虑哪些功能和问题。

从上图来看,我们可以看到真正的资金流动。首先,当用户参与付款行为时,资金从用户端流向付款系统,而退还时,相反的是从付款系统到用户方面。因此,在整个交易过程中,用户端和支付系统是双向资金流动的。对于付款系统,资金进出。从支付系统到商人相对简单。清算完成后,付款系统负责将收集的资金解决给商人。通常,结算操作可以在线完成(使用付款公司付款接口或银行 - 企业直接连接端口),也可以通过离线手动转移来完成该公司的融资。因此,这种资本流程方法是单向的。对于财务安全考虑,大多数公司通常会脱机实施此部分。

实际资本流由付款公司根据约定的期限(通常是t+1)解决,然后平台公司根据交易详细信息进行二次清算,并将其解决到相应的商人。

应用程序管理:支持公司的多个业务系统可以同时连接。

商人管理:支持商人定居,商人需要向平台提供相关信息。

渠道管理:支持微信,支付宝,,JD付款和其他渠道。

帐户管理:渠道帐户管理,支持共享帐户(个人商人)和自己的帐户。

付款交易:生成预付款订单并提供退款服务。

对帐管理:使用第三方支付渠道的交易详细信息(通常是t+1)实施支付系统的交易数据的自动验证,以确保交易数据的准确性和一致性。

清算管理:计算收款交易中商家的应收和支付系统收入。

和解管理:根据清算结果,资金分配给商人的相应基金帐户。

2。核心过程

支付系统有几个关键的核心流程:付款过程,对帐过程和结算流程

2.1付款过程

用户在购物中心购买商品并启动付款请求;

购物中心通过B2C网关付款收集接口将付款订单传输到付款网关;

用户选择在线银行付款和银行业务,付款平台将订单转发到指定的银行网关接口;

当用户的付款完成后,银行将处理结果并将处理结果返回到平台;

支付平台接收处理结果,实施处理并将结果归还给商人;

购物中心从付款公司收到回报结果,将其处理在地面上(更改订单状态)并通知用户。

商城支付功能实现_商银支付_城商行支付系统

一般而言,付款系统将设置一个“可用余额”帐户,并为商人设置“无法解决”帐户;该系统将实施银行收到的付款成功信息。一方面,它将更改相应的订单状态,另一方面,它将记录商人等待和解帐户中的金额;该系统将使用“可用余额”帐户的结算期。

用户在商家平台上启动退款申请,商人验证退款信息和应用程序;

商人通过付款公司提供的退款界面登录到付款平台帐户/或启动退还付款平台;

付款系统将验证退款信息(原始订单是否已成功支付的退款订单对应?退款金额小于或等于原始订单金额?),验证商家帐户余额是否足够等等。如果验证失败,则退款将无法退款;

付款系统从商家的可用余额帐户中扣除金额,并将退款订单发送给银行,银行完成了退款业务。注意:对于网关收取的订单退款,每个银行都有不同的要求。一些银行提供的退款界面要求原始订单有效期为90或180天,而某些银行不提供退款界面;对于超过截止日期或不支持接口退款的订单,支付公司通过付款渠道完成了退款操作。

对于尚未解决的订单,并且仍在“定居”帐户中,如果发生退款,则业务流程类似于上述过程,而扣除仅是从结算帐户进行的。

2.2对帐过程

阐明

我们通常称之为混合的对帐包括付款系统中的两个对帐:

付款系统之间的对帐通常是分配的,整个支付系统被分为多个子系统,例如事务系统,帐户系统,会计系统和帐户系统。每个子系统都在处理自己的业务。系统之间的对帐是对上述系统的验证,用于纠正内部系统的数据不一致。

支付系统和渠道之间的对帐是指为付款系统提供付款服务的所有渠道,例如:第三方支付公司,银行,清算中心,互联网连接,等。

支付系统与渠道之间的对帐

系统之间的对帐更容易理解。在这里,我们主要谈论支付系统与渠道之间的对帐。支付系统和渠道之间的对帐包括两个维度:

信息流检查:也就是说,业务和解/交易对帐,主要是为了串通收款交易的付款信息与银行提供的信息流文档。信息流可以发现付款系统和银行系统之间的订单下降,由双方之间系统引起的相同交易的付款金额不一致(很可能很小),或者付款状态不一致。信息流融合通常用于恢复订单数据,并且可以通过订单补充或特定的系统问题来解决。

基金流量检查:也就是说,资金和解,主要是将收款交易的付款信息与银行提供的基金流量信息进行调和。资本流的混合可以找到银行对付款系​​统帐户中资金的实际变化与应发生的变更之间的差异,例如长期付款(银行更加解决付款系统)和短期付款(银行对付款系​​统的解决方案更少)。

说了很多话,出现了四个对帐文件,支付系统信息流量文件,付款系统资本流量文件,银行信息流量文件和银行资本流量文件。业务对帐(勾结)意味着支付系统的信息流文档与银行的信息流文件融合在一起,并且资本和解意味着支付系统的资本流文档将其与银行的资本流文档融合在一起。

检查差异

1。信息流检查的差分处理

2。资本流量的差异处理

摘要是业务对帐,即信息流核对,检查支付系统的交易流量和银行的交易流量,以确保付款交易已充分记录。基金对帐,即资本流核对,付款系统的帐户报表和银行和解声明之间的检查,以确保银行帐户报表的匹配和实际帐户报表。

2.3和解过程

阐明

1。在清算和结算部分中,系统会根据设定的清算和和解规则自动将资金固定给商人。

2。完美的运营会计系统有助于资助进行精致的会计并提高财务效率。

3。自动与付款渠道调和,以确保帐户正确,并且可以在异常情况下找到并解决问题。

4。系统还可以个性化商家的费率配置或付款期配置,这是方便且灵活的。

5。系统的价值不仅反映在付款许可和解决方案中,而且还提高了运营管理效率。

6。付款许可和结算系统可以有效地协助运营,金融,发展和管理人员。对于运营人员,该系统可以帮助处理平台的运营,包括各种支付管理,商家和会员管理,营销活动数据统计等,以全面提高运营效率。对于金融人员,他们可以协助完成基金对帐,会计处理,入站和发出管理,会计错误处理等。大多数工作都是由系统自动处理的,降低了手动处理并提高了基金处理效率。

7。灵活且方便的配置后端使开发人员可以快速调整系统以适应新业务,并可以促进系统维护,例如渠道访问​​,费率配置,会计期间调整等,以提高开发效率。

城商行支付系统_商城支付功能实现_商银支付

8。该系统提供了资本流程所有链接的数据,可以从各个维度计算和分析,从而为经理形成决策支持,从而提高决策效率。

在付款系统中,支付网关和付款渠道之间的对接是最麻烦,最重要的功能之一。支付网关是向外界提供服务的接口。所有需要通道支持的资金都需要通过网关分配到相应的通道模块。一旦完成,将很少有后续行动,并且很难进行调整。支付通道模块从网关接收请求,并致电通道接口执行实际的资金操作。每个通道的传输方法都不同,因此,在这里,支付网关相对于支付通道模块的作用与设计模型相似,将每个通道之间的差异封装并在网关上呈现统一的接口。网关的功能是为服务提供一个通用的接口,并且某些与通道交互的公共操作也将放置在网关中。

支付系统为其他系统提供付款服务,尤其是交易系统,包括签署,付款,退款,补给,转移,终止等。有些地方还提供了签署和付款的其他接口,以支付付款期间的支持卡。每种服务实施的过程基本上相似,包括下订单,取消订单,返回订单,检查订单等。每个操作实现包括七个步骤:参数验证,付款路由,订单生成,风险评估,呼叫渠道服务,更新订单,更新订单和发送消息。对于一些更复杂的渠道服务,它还涉及异步同步通知处理的步骤。

01门户前线

支付网关的正面是连接业务系统以提供付款服务的模块。它是所有支付服务界面的集成方面,以统一的方式向商业方提供了不同付款渠道提供的接口。这样,访问方仅需要连接到付款网关,而添加和调整付款渠道对业务团体是透明的。正式支付网关的设计对整个支付系统的稳定性,功能,性能和其他非功能性需求有直接影响。

需要在付款网关中完成大量操作。为了确保性能,这些操作是不同步处理的。付款网关的正面应保持稳定,以最大程度地减少系统重新启动和其他操作对业务方面的影响。支付网关也无法避免升级和重新启动。这可以通过基于LBS(负载)网关来解决。 LBS这里有两个功能:一个是实现负载平衡,另一个是隔离付款网关对呼叫的影响。支付网关还使用多台机器来部署。重新启动时,每个服务器将启动一个。当服务器重新启动时,首先从LBS系统中取消注册,然后重新启动完成后,然后重新注册到LBS。这个过程不知道呼叫者。

为了避免界面的攻击,就安全性而言,还必须需要业务团以访问界面并提供防篡改机制。防篡改是通过接口参数签名处理的。现在,主流签名是根据参数名称对接口参数进行分类,然后加密和哈希,请参阅微信的签名规格。

02参数验证

03路由

根据用户选择的付款方式确定适当的付款渠道以完成操作。用户指定的付款方式并不一定意味着执行付款的最终渠道。例如,用户选择通过ICBC信用卡执行付款,但我们尚未与ICBC进行停靠,但可以通过第三方付款(例如, Pay,付款或)进行付款。然后,如何通过付款路由来选择正确的支付渠道。付款路由将全面考虑诸如充电和通道可用性之类的因素,以选择最佳解决方案。

04风险评估

检查此交易是否有风险。风险控制界面返回三个结果:阻止交易,增强验证和释放交易。

05发送消息

通过消息通知相关的更改系统。风险控制,信贷BI等。所有人都需要依靠这些数据进行准真实的时间计算。

06更新顺序

为了同步返回的结果,需要在主线程中更新订单的状态,以标记付款是成功还是失败。对于异步返回通道,需要在异步程序中处理它们。

07异步通知

这涉及调用远程接口,其延迟是无法控制的。如果呼叫者不断阻止和等待,则很容易超时。引入异步通知机制使呼叫者可以在主线程中尽快返回,并通过异步线程获得付款结果。对于通过异步获得付款结果的频道接口,需要将相应的结果返回到异步通知中的呼叫者。异步通知要求呼叫者通常以HTTP或方法提供回调地址。这有技术风险。如果通话失败,则需要重试。重试不应太频繁,每个重试的时间间隔都需要逐渐增加。在异步处理器中,根据处理结果更改其状态后,必须发送消息以通知相关系统。

08生成交易订单

将订单信息持续到数据库中。当访问压力很高时,数据库写作将成为瓶颈。

09交易流量和会计

每个交易需要记录流程并将其注册在个人和机构的帐户中。统计和分析还需要根据交易流量更新相关数据。更新个人和机构组织的总帐户数量,交易流记录和库存处理需要支持交易处理机制。从性能的角度来看,交易处理要求可以削弱,并且可以将消息机制用于异步与交易相关的数据处理。

10个付款路由

付款路由是一个复杂的话题。对于付款系统,它可以支持的付款方式越多,越好。由于不支持的付款方式,您无法切断财务资源。现实中有令人难以置信的付款方式。用户可以扔掉您从未听说过的卡。如果只有少数用户正在使用银行卡,那么为此卡开发对接连接是有点损失。目前的第三方付款爆发确实为开发付款系统节省了很多麻烦。但是,公司不可能仅与一项第三方付款联系。如果此渠道有问题,或者存在冲突,并且链接被捏住,则老板不会哭泣。简而言之,您必须与多个渠道连接。对于具有较大交易量的银行,还必须考虑直接连接。

11频道访问

对于付款渠道,首先要考虑的是要访问哪些渠道。连接的渠道基于优先级:

总结

支付系统是一个复杂的系统,涉及各种复杂的业务流程。以上简单地介绍了我们在付款系统中可以看到的一些问题和设计。随后的系统保证也没有写出。关键部分是关键部分,例如:支付系统监视(业务监视分类,渠道监视,商户监视,帐户监视)文章只是一个简介,并且架构不是静态的,而是动态发展的。只有能够不断响应环境变化的系统才是至关重要的系统。因此,即使您掌握了上述所有业务详细信息,您仍然需要在设计时进行进化思维,并利用反馈和进化的力量来促进体系结构的持续发展。

分享