如何设计如何实现聚合支付付系统,实现原理是什么

数科宝聚合支付系统开发建设的一些经验_新浪辽宁抚顺频道
数科宝聚合支付系统开发建设的一些经验
广告 商家供稿评论
  数科宝介绍
  数科宝致力于为中小微企业或者创业者提供一站式金融服务和解决方案,开发者仅需几行简单代码就能同时接入主流支付服务商,轻松实现收款。数科宝已服务近2000家中小微企业,服务包括聚合支付、线下扫码、鉴权服务、资金管理、银行流水、征信报告、余额增值、理财超市、供应链金融、企业理财、监控服务、生活缴费、分期付款等13种金融云解决方案。
  常见问题
  1. 开发人员如何提高代码质量,减少频繁迭代产生的bug?
  2. 线上环境突发事故,第一时间如何决策减少事故影响范围?
  3. 开发人员排查问题速度过慢?
  4. 随着业务的增长,问题越来越多,第一优先级需要解决什么?
  5. 系统突然CPU、内存利用率暴增,如何定位代码?
  6. 数据库连接数被耗尽,怎么办?
  7. 各种OOM如何预防?
  8. 随着系统交易量的增加,高可用系统的设计点很多,如何快速抓住建设要点?
  ....。.
  通过本文的阅读,会对这些问题在不同的地方给出答案。
  从操作系统层面发现业务系统问题
  墨菲定律中提到会出错的总会出错,代码的bug也一样,会发生的一定会发生,只是看在哪种场景下会触发。未运行的代码是静止的,只有运行中的代码才能能真实地体现业务系统的状况,如何不阅读代码从操作系统层面去发现正在运行的代码问题是非常必要的。
  无论多复杂的系统运行在linux之上无非就是一个进程,进程下面又由多个线程去执行每一行代码的业务逻辑,所以从操作系统层面只需要关注进程和线程即可。对于java编写的应用主要性能关注点是操作系统CPU和内存两个指标,在运行中的代码内存比CPU更加容易出问题。为什么java编写的代码内存比较容易出问题呢?如今硬件效率的提升导致(CPU的速度和支持多任务)处理器运算速度和和存储设备不是同一个量级,计算机都不得不加入一层高速缓存来作为内存与处理器之间的缓冲,缓存的引入提升了效率,但是带来一致性问题,程序的复杂度也增加了,比如java主内存和工作内存同步问题。如何从操作系统级别发现一些问题?
  1. 了解应用和外部接口有哪些交互?是否有异常现象?
  应用除了处理本身代码逻辑以外,往往还需要和外部服务或者接口通信。通过 netstat -anop | grep pid
就可以发现系统正在和哪些外部接口通信,比如下图中3306的端口显示系统有连接mysql数据库,并且有11个连接。系统有时候报错“has already more
than max_user_connections active
connections”,这时候通过此命令就可能发现有比较多的连接数,当连接数非常多的时候最大的可能是代码在不停的操作数据库或者有慢SQL导致的连接不释放,也就是说当你发现应用连接数大于日常正常数量的时候,系统的代码可能就有问题。同理,下面第二张图通过netstat
-anop | grep 6379得知应用有连接redis。
  2. 线程数异常?
  任何资源都是有限的,应用设计的时候需要考虑资源限制才能避免应用在某些时候因为资源过度使用而奔溃,线程数的控制就非常重要。线程的无限制创建,最终导致其不可控,特别是隐藏在代码中的创建线程方法。当系统的SY值过高时,表示linux需要花费更多的时间进行线程切换,Java造成这种现象的主要原因是创建的线程比较多,且这些线程都处于不断的阻塞(锁等待,IO等待)和执行状态的变化过程中,这就产生了大量的上下文切换,这时候体现在操作系统层面一种现象是下图中load
average过高,这个值多少合适一般和cpu个数有关系,假如有两个cpu,这个值若大于4,系统建议报警。
  除此之外,Java应用在创建线程时会操作JVM堆外的物理内存,太多的线程也会使用过多的物理内存,到了一定情况下系统应用就会报错“Exception
in thread "main" java.lang.OutOfMemoryError: unable to create new native
thread”,这个错误是告诉我们系统创建了太多的线程导致的。这种错误的常见场景是写一个定时器去处理任务,定时器的频率1分钟一次,但是任务处理完需要10分钟,定时器浪打浪就会不停的产生新的线程,最终导致触发native
  线程数过多会导致应用异常,那么如何快速统计一个进程的线程数量,有以下命令都可以使用:
  cat /proc/pid/status
  top -bH -d 3 -p pid
  pstree -p pid | wc -l
  pstack pid | head -1
  3. 检查系统瓶颈
  系统资源瓶颈一般关注CPU、内存、硬盘、硬盘IO、网络IO,Linux操作系统总体性能可以通过top命令如下图,一般系统应用只需要关注load
average、Cpu、Mem、Swap、Res这些指标。
  Load average: 说明CPU的拥堵情况,线程过多会导致这个值升高;
  Cpu(s): us表示应用空间占比,sy表示内核空间占比,此值过高表示系统应用异常;
  Mem: used过高需要关注,buffers表示用作内核缓存的内存量;
  Swap: 系统的物理内存不够用的时候,把硬盘空间中的一部分空间释放出来,以供当前运行的程序使用;
  RES: 进程使用的,未被换出的常驻/物理内存,一般这个值和JVM的参数配置有关,如果%MEM使用过高则需要关注;
  VIRT: 进程使用的虚拟内存,VIRT=SWAP+RES。
  以上都是通过top命令总体检查,还有以下方法可以也可以查找系统瓶颈:
  Iostat: 查看系统总体IO情况,不可以通过进程查询;
  Pidstat:如果需要查看某个进程占用的物理内存和虚拟内存,直接使用 pidstat -r -p pid 1 2查看:
  如果要查看某个进程的文件IO情况,可以通过命令pidstat -d -t -p pid 1 5查看:
  Vmstat: swpd过高通常是物理内存不够用了,swap的消耗主要关注swap IO,swap IO
发生比较频繁,那么严重影响系统的性能:
  Dstat: dstat -n -m -y -t -p -d -c -l
  Strace:此命令用来跟踪进程执行时的系统调用和所接受的信号,linux中进程不能直接访问硬件设备,必须由用户态模式切换为内核模式通过系统调用访问硬件设备。通过strace
-T -t -f -p pid可以显示具体进程的系统调用情况。
  网络IO可以通过cat
/proc/interrupts查看,网络IO消耗需要关注网卡中断是否不是均衡的分配到各个CPU,Java应用本身一般不会造成网络IO消耗严重。一般java最常用的网络命令是抓包分析请求内容,比如说需要抓取指定IP的网络包tcpdump
-i eth0 |grep "110.3.224.253"。
  4. 检查系统应用的进程
  对于java应用从操作系统层面观察,就只有进程和线程两个指标,任何东西在操作系统层面都是以文件的形式存储的,进程也不例外。Linux上部署一个tomcat程序产生一个进程,这个进程所有的东西都在这个目录下ll
/proc/pid/
  通过ll -tla /proc/pid/fd可以查看当前进程运行情况,比如想查看当前进程的socket通信,可以通过 /proc/pid/fd |
grep socket,进而通过lsof | grep 3198242可以判断出这个socket通信连接的是redis服务。
  5. 检查系统应用的线程
  Java应用出现异常最希望的就是通过线程或者进程定位问题,然后定位到具体的代码位置,最终解决问题。对于java程序,如果内存发生OOM,做法是通过jmap
-dump:format=b,file=/tmp/dump.dat
pid导出内存栈,然后通过可视化工具MAT定位出问题的代码,但是需要知道的是dump会导致full
GC一次;如果是想通过线程栈定位正在执行的线程在做什么事情,可以通过jstack -l
pid导出线程栈进行分析。假如通过上面提到的top命令或pidstat等命令发现某个进程消耗的内存、CPU或者IO过高,这时候需要定位到具体代码在做什么,定位方法如下:
  步骤一:首先通过top或者pidstat命令定位的具体的进程号,比如9739;
  步骤二:top -p 9739后,然后按住shift+H健开启Show threads on, 通过观察定位到具体的线程号,比如9751:
  步骤三:把9751转换为十六进制2617,因为线程栈中线程的序号是以十六进制存储的:
  步骤四:jstack -l 9739 | grep 2617 来分析这个线程正在做的事情,下图显示是gc线程;
  同理换一个其他线程9747,也可以发现代码正在执行的事情:
  所以如果CPU或者内存消耗过高,通过以上步骤就可以准确地定位具体的业务代码。
  6. 观察应用GC情况
  GC会导致系统应用暂时的停顿,如果频繁的GC就会产生延迟响应,对于互联网面向用户的实时交易延迟是不可接受的。开启GC日志可以收集GC的统计信息,可以方便定位观察应用长时间停顿原因,命令如下jstat
-gccause pid 1000.
  JVM调优的方法都是为了尽量降低GC所导致的应用停顿时间,但是目前内存管理方面JVM已经做得非常不错了,因此如果不是有确切的理由证明GC造成性能低下,就没有必要做过多的JVM方面的调优,因为有可能反而调出问题。
  7. 检查应用日志
  一个应用做的好不好,从应用打印日志就可以看出来,好的日志打印会打的和表格一样,可以通过AWK命令快速定位问题;除了打印规范,就是检测日志中的Exception和Error,业务日志是运行期产生的,每天产生不一样的异常,一个成熟的应用发生Exception和Erro的情况非常少,但是往往好多初建的项目源于赶进度只要业务功能不影响就忽略了日志异常,从而隐藏了很多问题。对于日志部分,建议是通过工具或者脚本实时监控日志中的带有Exception或者Error的关键字,有问题就报出来,类似下图:
  以上内容简单总结了如何从操作系统层面发现应用可能存在的问题,这种些方法完全不需要通过阅读业务代码,也不限定于某个具体的业务系统,对于任何应用都能简单地做一个体检。本文的第二个视角来自项目周期,项目从一开始立项开发再到持续迭代发布新功能,最后到成熟期运营,每个阶段特点不一样,需要解决的问题不一样,根据数科宝的项目经验,不同的阶段会存在哪些问题呢?
  从项目角度看业务系统问题
  经历过一个项目完整开发周期的同学肯定清楚每个不同的阶段都会遇到不同问题,解决问题就感觉像游戏打怪升级,并且比较有意思的现象是高级的bug一定出现在低级的bug之后,只有解决了低级的bug,才会出现更加高级的bug。根据经验本文把项目周期定义为这五个阶段,初创阶段(协调)-&普通成长阶段(质量)-&实时监控阶段(预警)-&高速发展阶段(高速扩张)-&成熟运行阶段(稳定),分别来分析这几个阶段可能遇到的问题,希望帮助到正在创业的或者中小项目团队提前避免,因为团队初期一定会遇到这些问题,成熟的团队都已经历过了这个阵痛期。
初创阶段:项目初创阶段,人员刚刚组成,团队属于磨合期,初期沟通低效,时间成本高。这个阶段作为技术团队首先要提高对外和对内的协作效率,对外主要沟通对象是产品和测试,对内就是技术团队内部合作问题。因为每个人考虑问题的角度不一样,这个阶段很有可能花费大量时间沟通,这个阶段各个团队的leader一定要精选,这样统一的入口和出口对接人会解决很多问题。
普通成长阶段:项目/系统开始迭代开发,业务正常发展,线上有商户/用户使用,但是偶发发现有商户或用户投诉系统产品功能不完善,开发人员开发的功能有bug,其实这个时候进入了质量问题暴漏阶段,问题主要体现在产品设计有漏掉、开发代码质量不高、测试场景不充分等,所以这个时候建议有一定项目管理流程和机制,并不是一味地提倡快速迭代,因为步子迈得太大一定会容易摔跤。同时,另外一个问题发生了,如果每次都是用户先发现问题,这个场景很尴尬,并且会导致用户流失,所以系统迫切地需要一个实时监控系统,所有的问题早于用户发现,早发现早解决。
实时监控阶段:如果系统没有监控和裸奔没有什么区别,就好比你驾驶着一辆没有仪表盘的车辆,每天都提心吊胆,担心系统出问题后用户投诉。实时监控系统是所有项目人员的眼睛,有了实时监控相当于给系统撒了一张网,让系统所有的点都是可控的、预期的,给人安全感。实时监控主要监控分为业务监控和非业务监控,具体实现这里不做阐述。
高速发展阶段:随着业务的前期的发展和积累,监控系统也能帮助我们看住系统,这时候业务发展稳定,可能就悄悄来到了高速发展阶段。业务量骤增导致系统并发响应慢、数据库数据量增长过快、单点故障等现象,这个时候其实遇到的问题是性能问题。对于一个初创团队一开始一定是业务核心,不可能过度设计性能问题,好的架构也不是一次设计出来的,一定是演变过来的。这个阶段最需要解决的就是高可用问题,如何建设高可用系统有很多这方面的书籍,但是依据数科宝的经验,优先需要做到的几点是:分布式部署、灰度发布和实时预警。分布式部署可以横向扩展避免单点故障,灰度发布可以解决上线带来的事故并且能够秒级回滚,实时预警让系统处于看管之中。
成熟运行阶段:经历了以上阶段之后,就是成熟运行阶段了。从系统来说,成熟运行阶段只关心一个问题就是线上偶发事故的响应机制。任务系统都一定会发生事故,像最近的发生的Gitlab和AWS事件,事故发生了不可怕,如何快速恢复是最重要。数科宝的生产事故响应机制是如果事故发生了第一时间不是去解决问题、定位问题,而是如何快速恢复交易、减少影响范围、通知商户/用户。为什么这样说?因为技术人员的特点是发生事故后不自然地就去想分析问题和定位问题,这个思路是不对的,增加了事故影响时间。成熟运行阶段,从项目来说,这个时候可能开发任务不那么紧急了,这个时候还需要注重如何提高团队的积极性、如何做好技术分享、如何归纳总结历史问题和知识等。
  总体来看这五个阶段,对于创业团队和初创团队基本是这个顺序,当然不排除很有经验的团队会一开始把这些问题都解决了,所以这些经验给有需要的初创团队。如果一个系统建设解决了协调阶段、监控阶段、高速发展阶段所面临的痛点,那么这个团队无论做什么项目,一定可以事半功倍。
  前车之鉴,后车之师,希望以上经验的和实践能够帮到像数科宝一样在创业路上的同学们。作为技术团队,遇到的问题建议通过工具、技术化、自动化手段来控制和避免,数科宝也比较推崇这种做法,但是项目运行周期发现往往有好多时候避免不了一些机制和流程去解决项目痛点,对于这块如果大家有好的想法,可以一起讨论,一起共勉。
我站致力于提供合理、准确、完整的资讯信息,但不保证信息的合理性、准确性和完整性,且不对因信息的不合理、不准确或遗漏导致的任何损失或损害承担责任。本网站所有信息仅供参考,不做交易和服务的根据, 如自行使用本网资料发生偏差,本站概不负责,亦不负任何法律责任,如有问题请联络024-。百姓网公众号微信扫码关注百姓网小程序微信扫扫立即体验扫码下载手机客户端免费抢油卡、红包、电影票|聚合支付系统提示:系统判断您来自, 推荐您可以跳转到频道看看所属类目聚合支付面议上海益倍嘉金融信息服务有...长宁6月12日300000元上海益倍嘉金融信息服务有...长宁5月25日888元深圳瑞赛网络科技有限公司 南山16年8月4日面议上海益倍嘉金融信息服务有...长宁5月3日 上海益倍嘉金融信息服务有...长宁4月11日 上海益倍嘉金融信息服务有...长宁4月13日面议上海益倍嘉金融信息服务有...长宁4月20日20000元 龙华新区2月15日面议上海益倍嘉金融信息服务有...长宁4月13日面议上海益倍嘉金融信息服务有...长宁5月9日 上海益倍嘉金融信息服务有...长宁5月18日3888元福建锦绣商务电子科技有限...台江5月19日1000元上海益倍嘉金融信息服务有...宝安4月14日300000元上海益倍嘉金融信息服务有...长宁6月7日面议上海益倍嘉金融信息服务有...福田4月25日300000元上海益倍嘉金融信息服务有...长宁5月27日面议上海益倍嘉金融信息服务有...长宁7月10日1元上海益倍嘉金融信息服务有...长宁4月11日||||||||||沪公网安备16号0&G:50&GM:104
描述:请填写描述手机号:请填写手机号请填写手机号上传图片:打开微信,扫一扫右侧二维码,即可完成绑定 -->绑定后,您可以:1. 立即在手机上收到用户给您的留言2. 使用手机快速完成付费推广的续费动作3. 第一时间了解到百姓网付费推广最新的促销活动,以及享受微信端独特的促销活动4. 更快速地将信息通过微信分享给好友、同事、朋友圈5. 如果您是招聘类目用户,还能够第一时间接收到新简历通知支付平台的账户体系结构是怎么设计的?-石投金融
下载客户端
三步轻松贷款,贷款利率低
支付平台的账户体系结构是怎么设计的?
第三方支付平台比如易宝、快钱甚至支付宝等,用户可以查看余额,这个余额在真实的银行账户体系里是怎么呈现的?甚至一些P2P网站,比如人人贷、好易贷等网站,投资人注册后可以充值,充的值去到银行的哪里去了?是不是子账户概念,请银行和做支付的朋友详解。谢谢。
匿名用户 |
浏览次数:772
常见类似问题
回答共有11条
这个问题涉及面较大,下面以简单的充转提例子来回答一下提问的问题以下以支付宝个人银行卡充值为例,为简化流程,均以最理想情况进行说明,若有不妥之处请指正用户首先需要在支付宝进行注册认证,先以充值为例简单看一下资金流程图 1.用户发起充值指令,以… 显示全部 这个问题涉及面较大,下面以简单的充转提例子来回答一下提问的问题 以下以支付宝个人银行卡充值为例,为简化流程,均以最理想情况进行说明,若有不妥之处请指正 用户首先需要在支付宝进行注册认证,先以充值为例简单看一下资金流程图 1.用户发起充值指令,以银行卡充值为例; 2.用户选择或填写银行卡信息,支付宝发起充值指令,暂假定用户银行卡同支付宝备付金银行; 3.银行收到支付宝用户充值请求后,扣划用户银行卡相应充值金额,以扣划成功为例; 4.银行将扣划结果返回支付宝; 5.支付宝收到银行结果后,对用户支付宝账户进行充值处理; 6.返回用户充值结果,至此简单充值流程结束,用户可以看到支付宝账户上的余额和充值记录等信息; 以上只是简化的充值流程,其中在第三步一般银行只扣划用户款项,待到日终才会将款项划转到支付宝备付金账户,第五步一般也不会增加支付宝备付金账户,而是先通过中间账户,如充值待清算账户,等到日终银行头寸和对账文件下发时,通过对账逻辑进行处理,若涉及到异常流程,会更复杂些,不在此列举。 不过从简化的流程图里还是可以看出支付宝只处理虚拟资金,实资金仍在银行体系内。 从账户关系也可以看出,实资金变动从个人银行卡划转到了支付宝银行账户,虚资金是支付宝为每个注册用户建立的虚拟账户,与用户的银行卡直接可以说没有直接关系;说的再直白些,用户充值的款项都划转到支付宝在银行开立的大账户,业务主体为支付宝,然后支付宝在系统内为每个用户建立台账;当然话又说回来,基于备付金管理办法和支付宝自身的信誉,我们不用怀疑,但对于实力较弱的第三方就不敢保证了。 提现流程和充值流程基本类似,但一般会有冻结解冻、定时处理等逻辑; 若是支付宝体系内部转账,就只涉及相关用户支付宝账户,与银行无关;若是复杂的银行卡转账到银行卡,可以简单理解为充值提现组合,不在详谈; p2p的类似备付金管理需要专题讨论,一般不做第三方支付的,不会太关心不做详述。付钱拉是国内领先的支付接入服务商,平台聚合了多家主流的支付通道,囊括了第三方支付如微信、支付宝、ApplePay等主流渠道及银行支付,同时提供交易数据管理及分析功能,通过“付钱拉”可以快速接入主流支付通道,建立完整的管理体系。可以访问官网了解更多付钱拉_首页 | 创业者的支付之道
回答于日 00:00
这个话题比较大,简单来说: 1、支付平台有自己的一套客户/账户/账务体系,用于记录各个客户/商户的基本信息、账户信息、账务信息。 基本信息包括实名认证信息、联系方式等等信息。 账户信息比较重要的属性是账户资金/余额,此处的账户资金实际上只是虚拟账… 显示全部 这个话题比较大,简单来说:1、支付平台有自己的一套客户/账户/账务体系,用于记录各个客户/商户的基本信息、账户信息、账务信息。基本信息包括实名认证信息、联系方式等等信息。账户信息比较重要的属性是账户资金/余额,此处的账户资金实际上只是虚拟账户的资金信息,并非实际的资金,实际的资金存放在支付平台在银行设立的银行账户上。关于账户/账户体系,一般有单式记帐法、复式记账法,关于账户/账务系统的设计具体原理可以找一本《会计学原理》好好学习一下,琢磨清楚科目设置、账户、流水分录、账簿、复式记账法之类概念,再结合交易订单处理,基本上就可以做出一个简单的账户/账务系统。当然一般所说的账户/账务体系,实际上还涉及客户/商户模型,以满足“客户为中心”而非“账户为中心”的管理需求。简单说来,支付平台的账户体系实际上用于记录每一个客户/商户的账户资金等虚拟信息。2、支付平台会在银行设立一个或多个账户,用于归集客户或商户的备付金(粗俗地可以理解为,客户/商户充值、支付、交易等待结算的资金)。以普通用户在第三方支付平台给自己虚拟账户在线充值为例(懒得画图了):1)、用户在第三方支付平台执行充值操作,跳转到银行网关进行支付。2)、用户支付成功后,银行会实时从用户银行账户上执行扣款操作。3)、银行网关通知支付平台用户支付成功(成功扣款)。4)、支付平台在自己账户体系中给对应用户虚拟账户增加对应资金。5)、银行和支付平台然后按照约定的结算周期(例如T+1)进行对账、清结算等操作后,将用户充值的资金结算给支付平台在银行设立的账户。备注:1)、一般情况下支付平台不会在自己在银行设立的账户为每一个用户都设立一个对应的账户,只会有一个总的账户用于归集所有客户或商户的资金。而哪一个用户账户余额有多少钱,需要结算多少钱给某个商户,在支付平台的虚拟账户/结算系统中做标识。2)、在银行备付金管理办法颁布前相对灵活,可以毫无限制地根据需要设立多个账户。例如在中国工商银行不同省份的支行设立不同的账号。备付金管理办法颁布后,有所谓的汇缴户、收付户、存管户等限制,具体参考《支付机构客户备付金存管办法》P2P平台自己账户体系的设立基本类似,并无过多复杂的地方,当然一般只需要采用单式记账法就够了。只不过如果是P2P平台在第三方支付平台做资金托管,那么第三方支付的账户托管在账户设置上一般会有两种模式:1、资金池模式:每一个P2P客户在支付平台的托管账户没有独立的虚拟账户,或者在项目级有对应每一个项目的总虚拟账户,或者只有一个总的虚拟账户(此种情况一般称为网关模式)。2、虚拟账户模式:每一个P2P的客户在支付平台的托管账户都有一个独立的虚拟账户。
回答于日 00:00
我没抖机灵哦。 点击我的头像,关注一下。 看看我比较多赞同的支付相关答案,再看看我的知乎专栏。 基本上七七八八都有了。 显示全部 我没抖机灵哦。点击我的头像,关注一下。看看我比较多赞同的支付相关答案,再看看我的知乎专栏。基本上七七八八都有了。
回答于日 00:00
题主的这个问题很大,这里分几个部分进行回答: 一、第三方支付的概念 所谓第三方支付,是一些和产品所在国家以及各大银行签约、并具备一定实力和信誉保障的第三方独立机构提供的交易支持平台。在通过第三方支付平台的交易中,买方使用第三方平台提供的账户… 显示全部 题主的这个问题很大,这里分几个部分进行回答:一、第三方支付的概念所谓第三方支付,是一些和产品所在国家以及各大银行签约、并具备一定实力和信誉保障的第三方独立机构提供的交易支持平台。在通过第三方支付平台的交易中,买方使用第三方平台提供的账户进行货款支付,由第三方通知卖方货款到达,进行发货;买房检验物品后,就可以通知付款给卖家,第三方再将款项结算给卖方。二、账户的概念学过财务的朋友知道,账户是根据会计科目设置的,具有一定格式和结构,用于分类反馈会计要素增加变动情况及其结果的载体。同会计客户分类对应,账户分为总账账户和明细账户。内容又分为资产类账户、负债类账户、所有者权益账户、成本费用账户、损益类账户。会计6要素:资产、负债、所有者权益、利润、费用、收入。在账户设计中,一个合理的账户应该能够记录账户变动的过程,借贷两个方向均需记录。账户包含账户流水和账户余额。会计专业教学的基础,就是T字账。借方、贷方、发生额、借方余额、贷方余额和账户余额等。账户内部对账就是:在一个指定的核算周期内,保证余额和流水的一致性。账户的外部对账就是:保证账户操作的流水和外部系统相关依赖流水的一致性。(在互联网环境中复式记账法无疑在对账方面相对单边记账法有巨大优势,但国内实现的第三方支付并不多)三、第三方支付账户体系一般来说第三方支付账户体系包括:1、用户在各银行开的账户2、第三方支付公司在各银行开的账户即第三方支付的银行账户,比如支付宝在招商银行设置的收款账户。我们举一个例子:小明用支付宝在某商城A买了一件衣服100元,用自己的银行卡进行网上支付,假如小明的银行卡是招商银行的,并且支付宝和招商银行有合作关系,当发生支付的时候,其实支付宝只做了两个事情: 在用户授权下,调用银行接口把钱从用户的银行卡转移到支付宝在招商银行设置的账户上(该账户是支付宝专门接受用户的付款资金的)---由于这步是只发生在银行系统之家的,是真实的资金流。 第1步成功后,支付宝会对商户A记入一笔入账:100元(商户A会在支付宝申请一个商户账户,类似支付宝在银行申请一个账户一样) 从会计学的角度分析,支付宝在招商银行设置的账户对支付宝这个会计主体来说,是一笔资产(或者说是银行欠支付宝的钱),该银行账户是资产类账户,而另外一个方面,商户A在支付宝设置的商户账户对支付宝来说是一个负债类账户(因为这是欠商户的钱,后续需要结算给到商户),那么上面的支付流程,会计记账如下: 借: 支付宝招行银行账户 100元 (资产类账户,资产增加,记为借) 贷:商户A支付宝账户 100元 (负债类账户,负债增加,记为贷) 第三方支付自有账户体系 这个比较复杂,类似银行账户有对公账户和对私账户,第三方支付公司也有针对商户的B账户和针对个人的C账户。请注意,第三方支付自有账户体系是独立第三方支付在银行申请的账户的,是自有的账户体系,完成资金在第三方支付体系的闭环和结算等,比如财付通用户余额,支付宝余额,微信支付余额等都是第三方支付账户to client的账户。 个人账户,我们称为c账户比较简单,而商户账户由于涉及到结算和提现等操作,按照不同的资金类别设置不同账户的设计原则,商户账户一个商户号其实对应两个账户:b账户和c账户,b账户是商户结算账户,用于交易的收款等,商户本身无法直接操作,是第三方支付进行结算的账户,而商户c账户则是商户可以直接进行操作的账户,如可以进行提现,充值和支付等等。 3、各银行在第三方支付公司设置的账户(不记录余额,只记录流水,用于对账)
回答于日 00:00
外行小补充,账户体系设计需要思考的几个维度: (1)账户背后对应的是什么? 是一家企业,还是一个人,还是法人? (2)对应关系:1对1,1对多,多对多? 例如:人----支付宝账户:1对多关系,一个人可以有多个支付宝账户 (3)账户的分层和各层之间迁移 … 显示全部 外行小补充,账户体系设计需要思考的几个维度:(1)账户背后对应的是什么?是一家企业,还是一个人,还是法人?(2)对应关系:1对1,1对多,多对多?例如:人----支付宝账户:1对多关系,一个人可以有多个支付宝账户(3)账户的分层和各层之间迁移认证属性分层:普通账户,实名账户,高级实名账户阶层属性分层:普通会员,付费会员,VIP会员(4)账户背后有哪些字段信息如何认证?如何维护?如何和客户平台连接?
回答于日 00:00
我没抖机灵哦。点击我的头像,关注一下。看看我比较多赞同的支付相关答案,再看看我的知乎专栏。基本上七七八八都有了。 显示全部 我没抖机灵哦。点击我的头像,关注一下。看看我比较多赞同的支付相关答案,再看看我的知乎专栏。基本上七七八八都有了。
回答于日 00:00
第三方支付机构与p2p平台对接有两种方式,一种是网关模式,这种模式你可以把平台当成淘宝商家。投资人充值后资金立即进入平台账户,平台可以提现、转账、消费,这就是通常所说的资金池。投资人在这样的平台账户中的资金只是一个虚拟的数字,能否提现取决于… 显示全部 第三方支付机构与p2p平台对接有两种方式,一种是网关模式,这种模式你可以把平台当成淘宝商家。投资人充值后资金立即进入平台账户,平台可以提现、转账、消费,这就是通常所说的资金池。投资人在这样的平台账户中的资金只是一个虚拟的数字,能否提现取决于平台账户中真实存款。如果余额不足会造成无法提现。 目前相对正规的平台都选择了第三方支付机构账户托管,即在全部投资资金的基础上设计了很多的子账户,这些子账户有独立的登录密码和支付密码,如果未经子账户有权人(投资人)密码授权,平台无法动用子账户中的资金。第二种模式下,投资人能根据自身意愿投资、提现,账户显示的资金不会出现无法提现的情况。 安宜投选择汇付天下作为第三方支付账户托管方,平台与投资人资金真正隔离。 希望我的回答能够帮助你。
回答于日 00:00
可以介绍一下待结算账户和跨境支付要用的外币账户? 显示全部 可以介绍一下待结算账户和跨境支付要用的外币账户?
回答于日 00:00
这个话题比较大,简单来说:1、支付平台有自己的一套客户/账户/账务体系,用于记录各个客户/商户的基本信息、账户信息、账务信息。基本信息包括实名认证信息、联系方式等等信息。账户信息比较重要的属性是账户资金/余额,此处的账户资金实际上只是虚拟账户… 显示全部 这个话题比较大,简单来说:1、支付平台有自己的一套客户/账户/账务体系,用于记录各个客户/商户的基本信息、账户信息、账务信息。基本信息包括实名认证信息、联系方式等等信息。账户信息比较重要的属性是账户资金/余额,此处的账户资金实际上只是虚拟账户的资金信息,并非实际的资金,实际的资金存放在支付平台在银行设立的银行账户上。关于账户/账户体系,一般有单式记帐法、复式记账法,关于账户/账务系统的设计具体原理可以找一本《会计学原理》好好学习一下,琢磨清楚科目设置、账户、流水分录、账簿、复式记账法之类概念,再结合交易订单处理,基本上就可以做出一个简单的账户/账务系统。当然一般所说的账户/账务体系,实际上还涉及客户/商户模型,以满足“客户为中心”而非“账户为中心”的管理需求。简单说来,支付平台的账户体系实际上用于记录每一个客户/商户的账户资金等虚拟信息。2、支付平台会在银行设立一个或多个账户,用于归集客户或商户的备付金(粗俗地可以理解为,客户/商户充值、支付、交易等待结算的资金)。以普通用户在第三方支付平台给自己虚拟账户在线充值为例(懒得画图了):1)、用户在第三方支付平台执行充值操作,跳转到银行网关进行支付。2)、用户支付成功后,银行会实时从用户银行账户上执行扣款操作。3)、银行网关通知支付平台用户支付成功(成功扣款)。4)、支付平台在自己账户体系中给对应用户虚拟账户增加对应资金。5)、银行和支付平台然后按照约定的结算周期(例如T+1)进行对账、清结算等操作后,将用户充值的资金结算给支付平台在银行设立的账户。备注:1)、一般情况下支付平台不会在自己在银行设立的账户为每一个用户都设立一个对应的账户,只会有一个总的账户用于归集所有客户或商户的资金。而哪一个用户账户余额有多少钱,需要结算多少钱给某个商户,在支付平台的虚拟账户/结算系统中做标识。2)、在银行备付金管理办法颁布前相对灵活,可以毫无限制地根据需要设立多个账户。例如在中国工商银行不同省份的支行设立不同的账号。备付金管理办法颁布后,有所谓的汇缴户、收付户、存管户等限制,具体参考《支付机构客户备付金存管办法》P2P平台自己账户体系的设立基本类似,并无过多复杂的地方,当然一般只需要采用单式记账法就够了。只不过如果是P2P平台在第三方支付平台做资金托管,那么第三方支付的账户托管在账户设置上一般会有两种模式:1、资金池模式:每一个P2P客户在支付平台的托管账户没有独立的虚拟账户,或者在项目级有对应每一个项目的总虚拟账户,或者只有一个总的虚拟账户(此种情况一般称为网关模式)。2、虚拟账户模式:每一个P2P的客户在支付平台的托管账户都有一个独立的虚拟账户。
回答于日 00:00
外行小补充,账户体系设计需要思考的几个维度:(1)账户背后对应的是什么?是一家企业,还是一个人,还是法人?(2)对应关系:1对1,1对多,多对多?例如:人----支付宝账户:1对多关系,一个人可以有多个支付宝账户(3)账户的分层和各层之间迁移认证属… 显示全部 外行小补充,账户体系设计需要思考的几个维度:(1)账户背后对应的是什么?是一家企业,还是一个人,还是法人?(2)对应关系:1对1,1对多,多对多?例如:人----支付宝账户:1对多关系,一个人可以有多个支付宝账户(3)账户的分层和各层之间迁移认证属性分层:普通账户,实名账户,高级实名账户阶层属性分层:普通会员,付费会员,VIP会员(4)账户背后有哪些字段信息如何认证?如何维护?如何和客户平台连接?
回答于日 00:00
题主的这个问题很大,这里分几个部分进行回答:一、第三方支付的概念所谓第三方支付,是一些和产品所在国家以及各大银行签约、并具备一定实力和信誉保障的第三方独立机构提供的交易支持平台。在通过第三方支付平台的交易中,买方使用第三方平台提供的账户进… 显示全部 题主的这个问题很大,这里分几个部分进行回答:一、第三方支付的概念所谓第三方支付,是一些和产品所在国家以及各大银行签约、并具备一定实力和信誉保障的第三方独立机构提供的交易支持平台。在通过第三方支付平台的交易中,买方使用第三方平台提供的账户进行货款支付,由第三方通知卖方货款到达,进行发货;买房检验物品后,就可以通知付款给卖家,第三方再将款项结算给卖方。二、账户的概念学过财务的朋友知道,账户是根据会计科目设置的,具有一定格式和结构,用于分类反馈会计要素增加变动情况及其结果的载体。同会计客户分类对应,账户分为总账账户和明细账户。内容又分为资产类账户、负债类账户、所有者权益账户、成本费用账户、损益类账户。会计6要素:资产、负债、所有者权益、利润、费用、收入。在账户设计中,一个合理的账户应该能够记录账户变动的过程,借贷两个方向均需记录。账户包含账户流水和账户余额。会计专业教学的基础,就是T字账。借方、贷方、发生额、借方余额、贷方余额和账户余额等。账户内部对账就是:在一个指定的核算周期内,保证余额和流水的一致性。账户的外部对账就是:保证账户操作的流水和外部系统相关依赖流水的一致性。(在互联网环境中复式记账法无疑在对账方面相对单边记账法有巨大优势,但国内实现的第三方支付并不多)三、第三方支付账户体系一般来说第三方支付账户体系包括:1、用户在各银行开的账户2、第三方支付公司在各银行开的账户即第三方支付的银行账户,比如支付宝在招商银行设置的收款账户。我们举一个例子:小明用支付宝在某商城A买了一件衣服100元,用自己的银行卡进行网上支付,假如小明的银行卡是招商银行的,并且支付宝和招商银行有合作关系,当发生支付的时候,其实支付宝只做了两个事情: 在用户授权下,调用银行接口把钱从用户的银行卡转移到支付宝在招商银行设置的账户上(该账户是支付宝专门接受用户的付款资金的)---由于这步是只发生在银行系统之家的,是真实的资金流。 第1步成功后,支付宝会对商户A记入一笔入账:100元(商户A会在支付宝申请一个商户账户,类似支付宝在银行申请一个账户一样) 从会计学的角度分析,支付宝在招商银行设置的账户对支付宝这个会计主体来说,是一笔资产(或者说是银行欠支付宝的钱),该银行账户是资产类账户,而另外一个方面,商户A在支付宝设置的商户账户对支付宝来说是一个负债类账户(因为这是欠商户的钱,后续需要结算给到商户),那么上面的支付流程,会计记账如下: 借: 支付宝招行银行账户 100元 (资产类账户,资产增加,记为借) 贷:商户A支付宝账户 100元 (负债类账户,负债增加,记为贷) 第三方支付自有账户体系 这个比较复杂,类似银行账户有对公账户和对私账户,第三方支付公司也有针对商户的B账户和针对个人的C账户。请注意,第三方支付自有账户体系是独立第三方支付在银行申请的账户的,是自有的账户体系,完成资金在第三方支付体系的闭环和结算等,比如财付通用户余额,支付宝余额,微信支付余额等都是第三方支付账户to client的账户。 个人账户,我们称为c账户比较简单,而商户账户由于涉及到结算和提现等操作,按照不同的资金类别设置不同账户的设计原则,商户账户一个商户号其实对应两个账户:b账户和c账户,b账户是商户结算账户,用于交易的收款等,商户本身无法直接操作,是第三方支付进行结算的账户,而商户c账户则是商户可以直接进行操作的账户,如可以进行提现,充值和支付等等。 3、各银行在第三方支付公司设置的账户(不记录余额,只记录流水,用于对账)
回答于日 00:00
对以上回答还不满意?您可以想我们的的专家咨询您的问题
*此回答内容仅代表网友个人观点供用户参考及研究用途,不构成任何投资理财建议
贷款相关计算器
大家都在问
热门银行贷款利率?

我要回帖

更多关于 聚合索引的实现原理 的文章

 

随机推荐