支付系统-帐户系统总结

一 快付通架构图:

1.1 快付通模块职责:

& 接受对业务系统的订单支付.充值请求

& 账户之间转账

&  接受业务系统的提现请求

& 接受业务系统的退款请求(对上面几种业务)

1.2支付网关职责:

负责和渠道(支付宝,微信,银联)交互,记录流水号,对账

1.3账户系统职责:

& 记录账户信息

& 保障账户变动原子性和事务性.

& 记录账户变动流水

二 主要流程图

1. 充值

2. 转账

2. 提现

三 实体设计

2.1账户系统 实体设计:

Account 账户信息.

Account_statement: 1.记录账户变动流水记录. 2.保存法幂等控制

2.2收银台系统实体设计:

trade_detail: 交易信息记录,例如 from账户,to账户,通过什么途径充值.

trade: 记录外部输入的外部流水号和内部流水号.

trade_record_flow_statement: 1.记录交易记录变更流水历史. 比如转账的退款总金额变更流水记录.2.保存法幂等控制

四 亮点功能

1.  转账的额度控制通过变量传递进来.

转账停留在中间环节的,重试逻辑. 单边帐

2.  帐户的变动和流水保存处于同一个事务中.

切记 spring 的事务注解 , 异常必须设置为 throwable

3. 提现:

先扣帐户款再提现.

银行有恶心的退票记录

4. 帐户的高并发变更设计:

高并发帐户不时时扣款.

时间: 2024-11-26 03:57:25

支付系统-帐户系统总结的相关文章

Win10系统帐户已禁用无法进入桌面的解决方法

最近有win10用户反映,将登录账户禁用后发现无法登录到桌面了,一直停留在账户登录界面,这该怎么办呢?别着急,接下来澳门金沙就给大家分享Win10系统帐户已禁用无法进入桌面的解决方法. 方法如下: 1.在帐户登录界面,按shift+重启,选择“疑难解答”: 2.点击“高级选项>启动设置>重启”,按F4,选择“启用安全模式”: 3.进入Win10系统桌面,右击此电脑,选择“管理”: 4.展开至系统工具>本地用户和组>用户”,双击打开帐户,取消勾选“帐户已禁用”,点击确定即可. 以上就

SQL Server 安装程序无法获取 ASPNET 帐户的系统帐户信息。若要继续,请重新安装 .NET Framework,然后再次运行 SQL Server 安装程序。

标题: Microsoft SQL Server 安装程序------------------------------ 有关帮助信息,请单击: http://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft+SQL+Server&ProdVer=9.00.1399.06&EvtSrc=setup.rll&EvtID=SQLSetup90&EvtType=28126 --------------------

解析大型.NET ERP系统 电子邮件系统帐户集成

为保证ERP系统的信息流准确快速的传递,需要给系统设计一个消息盒子机制.当系统中发生业务操作后,需要提醒下一个环节的操作人员,以保证ERP信息流快速准确传递.比如生产任务单(工作单,加工单,制单)过帐完成后,需要通知仓库准备材料供车间领料生产.消息盒子的界面大致如下所示: 消息盒子包含业务通知(Messages)和工作流审批(Workflow).业务通知比如采购人员下达采购订单PO后,需要通知仓库人员准备收货.工作流审批是以审批为基础的单据流程控制. 在实现消息盒子过程中,遇到一个客户需要将消息

XP系统登录界面,需要手动点击用户帐户后才会出现输入密码的界面

问题描述XP系统,用户帐户设置有密码.用户表示之前启动到系统登录界面,会直接出现输入密码的对话框(见图一):现在启动到登录界面只看到用户帐户信息,需手动点击用户名后才能出现输入密码的界面,用户感觉不方便,希望解决此问题. (图一) (图二) 解决方案指导用户调出“计算机管理”,选择“本地用户和组”-“用户”,双击“Guest”,选中“帐户已停用”将Guest帐户停用后故障排除. 出处:http://support1.lenovo.com.cn/lenovo/wsi/htmls/detail_12

易语言等软件自动获取管理员权限,在64位Windows7系统非管理员帐户中执行

昨天有易语言开发者向我求助,说他用易语言编译的32位程序软件,发布给64位操作系统Win 7用户使用,因为该用户确定没有管理员权限,而程序启动时又要求必须输入管理员密码,如此陷入困境. 目标企业用户管理严格,要求为普通用户分配管理员权限是不切实际的,只能开发人员从软件开发的角度在技术上解决. 我听到这个问题后,第一感觉是微软用户帐户控制(UAC)引发的,估计通过给 exe 添加特定的 manifest 资源应该可以解决.于是我给了他一段代码,让他用 ResHacker 之类的软件添加到软件里面去

第三方支付架构设计之—帐户体系

第三方支付架构设计之-帐户体系 一,      什么是第三方支付? 什么是第三方支付?相信很多人对这个名字很熟悉,不管是从各种媒体等都经常听到,可以说是耳熟能熟.但,如果非得给这个名词总结出一个概念,却发现很难准确和全面的表述清楚.不过关系不大,我们无法给出一个很准确的概念的时候,我们就列举一下实际生活中我们经常使用第三方支付的例子:支付宝,财付通,微信支付等等,这些就是我们国内目前在第三方支付市场中比较有影响力的第三方支付了. 搜索一下百度,所谓第三方支付,就是一些和产品所在国家以及国外各大银

shell脚本,批量创建10个系统帐号并设置密码为随机8位字符串。

[[email protected] wyb]# cat user10.sh #!/bin/bash #批量创建10个系统帐号wangyb01-wangyb10并设置密码(密码为随机8位字符串). >user.list for user in `seq -w 10` do useradd wangyb$user password=`echo $RANDOM|md5sum|cut -c 1-8` echo $password|passwd wangyb$user --stdin echo wang

支付系统、账户系统有关模型

简介:账户体系是支付系统的基础,一个支付系统必须要有账户体系.因此账户体系的设计显得尤为重要. 支付账户和登陆账号: 两个概念:支付账户和登陆账号,这是属于两个不同业务的领域. 支付账户:用户在支付系统中用于交易的所有者权益的凭证. 登陆账号:用户用于登录系统的凭证和个人信息. 两者的联系:一个用户可能会有多个登录账号,一个登录账号又可能会有多个支付账户.比如,用户可以有零钱账户,储值卡账户等各种账户.一般来说,一个支付账户不可能在多个登录账号中公用. 账户的设计需求: 在支付系统中,对于账户的

批量创建10个系统帐号o01-zkg10并设置密码

批量创建10个系统帐号o01-zkg10并设置密码(密码为随机8位字符串)脚本如下: #!/bin/sh#批量创建用户名和密码#by zkg 2019-08-22. /etc/init.d/functions if [ $UID -ne 0 ];thenecho "create user need root privage"exitfi for user in echo zkg{01..10}docheck_user=grep "\b$user\b" /etc/pa