# accounting_system **Repository Path**: xl-echo/accounting_system ## Basic Information - **Project Name**: accounting_system - **Description**: 聊聊支付系统的架构设计吧,这里先从业务结构的设计开始。主体还是以第三方支付机构为主,支付系统整体业务会由于支付机构的不同而不同。第三方支付机构的业务相对来说是比较简单的,这里也做一些简化,尽可能的让业务结构更加的明了。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-12-26 - **Last Updated**: 2024-01-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 文档整理  # 项目启动 tomcat部署,或者jar包启动,项目内也具备docker脚本 # 访问地址 localhost:10088/login 账密:acc_echo/2023@echo_!@#$ # 支付系统的架构设计 ### 前言 聊聊支付系统的架构设计吧,这里先从业务结构的设计开始。主体还是以第三方支付机构为主,支付系统整体业务会由于支付机构的不同而不同。第三方支付机构的业务相对来说是比较简单的,这里也做一些简化,尽可能的让业务结构更加的明了。 ### 1.1、什么是支付系统 支付系统是指一系列的组织、技术和流程,允许个人或实体进行货币交换、转移和结算的系统。它涵盖了各种支付方式,包括但不限于现金、信用卡、借记卡、电子支付、移动支付和加密货币等。支付系统的核心目标是促进交易的便捷性、安全性和可靠性,以满足不同用户的支付需求。 ### 1.2、中国互联网支付的总体架构  看到这个架构图是不是对支付架构有了一点点了解,最终不管什么支付产品,打款的事情都是银行在做,而不是真的是某支付产品,这也许是很多人对支付产品的误解。 支付产品的一大功能就是收单,对应的拨款在支付产品方都只是虚拟操作,并不能撇开银行完成独立闭环。 ### 1.3、支付系统典型案例 一般来说,支付系统会包含以下这些模块,不过每个产品或者每个公司的架构都不是一成不变的,都是在市场的打磨下不断的迭代完善的。这里的模型我们可以做一个参考  ### 1.4、从交易看支付系统 用户下单,到最终商户收到打款,我们可以大致推断出会经历以下几个步骤。 - 1、用户下单 - 2、收银台支付 - 3、支付系统发起支付 - 4、银行打款 - 5、记账 > 这个过程对大多数据交易都是合理的,只是细节不够明亮,特别是支付系统的流程方面是比较空白的,比如:支付系统的记账,具体是什么时候记账的,什么时候来核对,哪个环节上需要清算呢?  以上这个图其实就是大多数支付公司的一个整体架构,只是公司大小不同,结构逻辑稍有不同,细节方面有区别。 ### 1.5 支付架构 作为一个第三方的支付机构,主要职责就是负责处理业务系统或者客户端发起的支付请求,需要有效的、安全的保障资金正常的流通。 这里,我们可以将业务和支付具体地去区分开来,另外渠道其实是不属于第三方支付机构的,他也只是对接,这里我们可以再次拆分。 