首页 > 科技未来 > 内容

支付系统设计:对账处理(二)

发布于:2024-06-18 编辑:匿名 来源:网络

每笔交易,各参与者的记录必须一致,不能有偏差。

对账系统的工作是发现有差异的记录,即对账;然后手动或自动解决这些差异,即对账。

对于电子商务系统来说,每一笔交易都必须与所有相关实体进行匹配:交易实体,如果发起人是个人,必须能够从个人交易历史中找到该交易。

但大多数人不会保存电子记录,因此一般会提供可下载的账单或交易记录供用户自行查看。

交易对手通常是商家。

商户侧对账流程与用户侧相同,仅提供报表。

在交易渠道方面,这是对账的重点。

一是验证交易流程,二是验证交易佣金。

毕竟通道是租来结算的。

哪些记录需要核对?目前主要有两个:一是交易记录;二是交易记录。

二是退款记录。

一般来说,对账流程包括下载渠道报表、准备本地交易记录、调账、结算等步骤。

渠道对账单下载 银行、第三方支付、银联等基本都提供对账单下载功能。

但也有少数银行的工作做得不够好或做得太好。

他们只提供账单查询后台,不提供账单下载功能。

对于开发人员来说,这里有几个陷阱:语句格式不同,包括文本、XML 和 csv。

为了以后能够统一处理,话单下载后需要进行标准化处理。

有不同的下载方法,包括 HTTP、HTTPS 和 FTP。

下载程序需要按照通道的协议进行处理。

下载时间各不相同,通常在凌晨 1 点之后,有时只能到中午 12 点。

如果在预定时间无法获取数据,需要注意重试读取。

稳定性差。

FTP 服务器出现问题是很常见的。

通道侧的解决方案往往是重启。

所以重试机制是必要的。

看一下第三方支付的报表: 银行直连对账:技术选型上,HTTP(S)可以使用apache httpclient实现链接池和断点续传,FTP也可以使用Apache Commons Net API。

但无论是哪一种,都需要设置重试次数和链接超时时间。

设置重试次数和间隔时需要小心。

如果重试太频繁,很容易杀死服务器。

如果时间间隔太大,就会阻塞后续的处理步骤。

5 到 10 分钟是合适的重试间隔。

链接超时是指当服务器出现问题时,如果在规定的时间内无法获取到数据,就会自动断开连接。

这很容易被忽视。

我们曾经遇到过系统问题。

通道端的FTP被挂起并重新启动,导致我们的客户端挂起并等待重新连接。

让我们看一个渠道声明标准化的例子。

例如,微信的对账单是csv格式,包含以下信息: 交易时间:即微信端支付完成的时间。

这一次可能会成为一个陷阱。

公众账号ID、商户号、子商户号、设备号:这些信息需要验证,以确保是您自己的订单。

不要让微信发送老王的订单;微信订单号、商户订单号:这两个是一对的核心。

前者是微信生成的订单号,包含在微信支付接口的返回值中。

但如果没有收到这个返回值,则本地记录可能为空。

后者就是我们发送到微信的订单号,一般作为匹配订单的依据。

该值将出现在双方的数据中。

用户ID、交易类型、交易状态、支付银行、币种、总额、企业红包金额:这些是订单的核心字段,双方必须保证一致。

产品名称、商户数据包、费用、费率:这些是可选验证。

某宝物的表述为文本格式,并以空格分隔。

他们的就简单多了,只有商户订单号、交易序列号、交易时间、支付时间、付款人、交易金额、交易类型、交易状态等字段。

由于各个渠道的账单格式不同,拿到账单后,下一步就是规范账单,以便统一处理结算和后续工作。

标准化的计费数据可以放置在文件系统或数据库中。

这取决于交易数据量。

对于每天超过100万的量,使用文件系统更为合适。

数据库操作速度比较慢,而且浪费资源。

基于文件系统的标准化涉及以下内容: 文件格式标准化:统一使用csv或json或xml格式。

如果您使用hadoop或spark进行协调,那么使用csv是一个不错的选择。

统一文件存储:文件目录和文件名需要遵循统一的命名标准。

为了加快处理速度,我们使用HDFS作为文件系统,这有利于后续的对账处理。

本地交易记录的准备 一般来说,本地交易记录的准备有以下几种方法:什么都不做,直接使用原始数据。

由于大多数系统都使用 mysql,这也意味着在 MySQL 上进行协调。

对账需要大量的数据查找工作,这势必影响线上业务。

当数据规模较大时,例如超过10000条时,不适合。

当然,还有一种选择是使用备份数据库进行对账,既简单又不影响线上业务。

这是典型的以空间换时间的做法。

如果业务规模很大,需要单独的表和数据库来处理,那么对账数据的准备就会有所不同。

使用分库也是不现实的,因为分库通常是根据主题ID而不是频道ID来划分的。

这样就需要对多个数据库进行对账,降低了效率。

建立分表、分库的从库也是非常耗费资源的。

在这种情况下,您需要将数据的副本同步到(hdfs)文件系统或NOSQL数据库。

由于交易记录是支付系统的核心数据,信用、风控等大量应用都需要交易记录数据。

这些应用对于交易记录的要求并不完全一致。

为了提高性能,交易记录会使用异步的方式将数据传递给用户。

当交易记录存储在数据库中时,消息将被传递到消息系统。

用户收听此消息。

一旦收到新的消息,就从交易记录数据库中查询数据,获取数据并更新到数据库中。

关于这种数据同步的文章很多,这里不再赘述。

算账就是根据客户订单号来对比本地交易记录和渠道交易记录,看是否一致。

从算法的角度来说,就是计算两个数组的差异。

在单机上运行时,可以使用的算法有很多,这里不再详细介绍。

我们建议使用mapreduce来平衡账户。

这样做的好处是可以将通道提供的记录和本地记录按照序号打乱到同一个reduce进程中,从而可以方便地进行数据比较。

记账过程中最大的陷阱就是分点问题。

比如用0点钟作为切点,就有问题。

23:59本地发起的交易可能会在00:01在通道侧得到处理,该交易将成为第二天的账户。

在实际处理中,一笔交易在通道侧处理,可能需要几分钟的时间。

对于分割点附近无法确认的科目,会创建一个时间窗口,该时间窗口内的数据留待第二天对账时处理。

当您发现账户双方数据不一致时,应该如何处理?当数据量不大时,只需记录并手动筛选即可。

但如果数据量很大,每天几千条,人工处理的成本就太高了。

对此没有统一的处理方法。

需要根据有问题的数据进行分析,然后自动处理。

交易记录对账处理主要包括以下几种情况:不在本地支付,而是通过支付通道支付。

这主要是本地没有正确接收通道发送的异步通知造成的。

一般的处理是修改本地状态为已支付,并对响应进行后续处理,例如通知业务方。

已在本地和通过支付渠道进行支付,但金额不同,需要人工验证。

本地已支付,但支付通道无记录;或者本地没有记录,但支付渠道有记录。

排除跨日因素,这种情况很少见,需要了解具体原因后再处理。

关于退款的对账处理,主要情况如下:如果本地没有退款,但支付渠道已退款,则以支付渠道为准,将本地状态修改为已退款,并进行后续处理。

已在本地和支付渠道退款,但金额不同,需要人工验证;已在本地退款,但无支付渠道记录;或者有支付渠道的记录,但本地没有。

除了排除跨日因素外,这种情况很少见,需要了解具体原因后进行处理。

总之,和解工作并不复杂,也不复杂。

它需要细心、对业务的深刻理解并选择正确的架构。

支付系统设计:对账处理(二)

相关阅读:支付系统设计:支付系统的账户模型(一)雷锋网 注:本文由人人都是产品经理社区作者@凤凰品牌老雄(微信公众号:shamphone)原创发布。

凤凰牌老熊,程序员&架构师。

曾就职于富龙、三星(中国)研究院及国内一些大型互联网公司。

2006年加入爱奇艺,负责数据仓库和支付系统建设。

文章未经许可不得转载。

支付系统设计:对账处理(二)

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • OPPO全球计算中心即将投入运营

    OPPO全球计算中心即将投入运营

    东莞滨海湾新区12月27日,OPPO全球计算中心剩余建筑已竣工验收,即将全面投入运营。 OPPO全球算力中心总投资14.76亿元,占地约0.5亩。 作为国内超大型数据中心,计划在单个园区建设8KW机柜和12万台服务器,用于处理和存储公司核心数据。 未来将为OPPO提供大数据、5G应用、物联

    06-06

  • 苹果最受欢迎的产品

    苹果最受欢迎的产品

    梅西,今年几乎成了苹果Apple TV的产品。 自从加盟迈阿密国际足球俱乐部以来,这位足球之神所到之处都引起狂热。 门票价格疯涨,挡不住球迷的热情。 就连著名演员小李子也在场边,梅西的MLS(美国职业足球大联盟)出现了。 )游戏收视率也创下历史新高。 与此同时,苹果高管也

    06-18

  • 投资世界24小时-红杉中国迎来新投资者合伙人;乐视网前CEO张昭去世;任正非就华为抢注姚安娜商标一事道歉

    投资世界24小时-红杉中国迎来新投资者合伙人;乐视网前CEO张昭去世;任正非就华为抢注姚安娜商标一事道歉

    红杉中国迎来新投资者合伙人 投资界获悉,昨日,有“时尚魔鬼”之称的张宇在个人微博官宣,成为红杉中国投资者。 合伙人将支持中国新一代创造力和国际投资者在中国时尚/生活方式/娱乐消费行业寻求发展。 品牌。 随后,红杉中国官方微博转发并欢迎张宇加盟。 张宇是谁?或许VC

    06-17

  • 两会专访丨张建锋:为“专精特新”企业寻找数字化新路

    两会专访丨张建锋:为“专精特新”企业寻找数字化新路

    浙江省两会于1月16日至21日在杭州举行。 会议期间,浙江省政协委员、阿里云智能总裁在两场会议期间接受了新华网专访。 他们重点关注数字技术深度服务实体经济、“专精特新”企业发展机遇与挑战、“十四五”期间云计算等问题。 技术发展等问题,分享了以下观点。 新华网记者:

    06-17

  • 小米自研系统MIOS来了

    小米自研系统MIOS来了

    2016年,小米发布了第一款产品——MIUI,这是第一个真正基于Android系统深度优化、定制开发的第三方手机操作系统。 13年的发展MIUI越来越完善、人性化,自然也变得越来越“臃肿”。 早些年,MIUI可以说是集流畅性和易用性于一体的第三方安卓操作系统。 然而,近年来它的评价却

    06-17

  • 中国5G走在世界之巅!除了直播珠穆朗玛峰,运营商也投入巨资,背后是一场大博弈

    中国5G走在世界之巅!除了直播珠穆朗玛峰,运营商也投入巨资,背后是一场大博弈

    中国的5G建设不走寻常路。 虽然北京、上海、广州、深圳等大城市已经实现了5G网络覆盖,但中国广袤土地上的5G覆盖范围还比较有限。 不过,这并不影响5G网络跨越山川、河流、海洋、人海,直达世界巍峨之巅——珠穆朗玛峰,并已被中国三大运营商连接。 理论上,你已经可以使用5G

    06-17

  • LED行业三大系列“风向标”活动正式启动

    LED行业三大系列“风向标”活动正式启动

    2020年5月18日/美通社/——由文鑫展览主办的LED CHINA始创于2007年,是全球最早的LED行业专题展会。 前10年,它在广州深耕。 因战略发展需要,整个赛事于2016年搬迁升级至上海,已是第四年落户上海。 经过14年的培育和发展,LED CHINA品牌已享誉全球,每年都是行业厂商和采购

    06-06

  • 沸点资本正式宣布新基金募集及团队晋升

    沸点资本正式宣布新基金募集及团队晋升

    据投资界(ID:pedaily)2月24日消息,沸点资本近日宣布已完成两只新基金募集并实现团队升级。 为了更好地帮助更多创业公司,沸点资本还对团队进行了迭代,提拔马兰、陈芊芊为合伙人,陈元浩为董事总经理。 为了激励新一代,积累团队潜力,我们特向大家分享沸点资本团队晋升的

    06-18

  • 龙光集团2月销售额同比增长3.6倍至约121亿元

    龙光集团2月销售额同比增长3.6倍至约121亿元

    龙光集团(0.HK)发布今年2月业绩公告。 今年2月归属于股东权益的合同销售金额约为人民币9,000万元,同比增长0.2%,归属于公司股东权益的合同销售面积约为54万平方米。

    06-17

  • 投资者在荆门

    投资者在荆门

    市投资产业局VC情报局打卡。 我们来到了《三国》的军事重镇荆门。 位于湖北省中部,东临江汉平原,南依大别山。 这里是楚文化的发祥地之一。 2018年,“一平”经济总量突破万亿元,成为继武汉都市圈之后湖北第二个经济总量突破万亿元的城区,创造了1>3的城市效应。 来源:湖北

    06-18

  • 赛微电子:控股子公司8英寸MEMS国际代工线建设项目已竣工验收

    赛微电子:控股子公司8英寸MEMS国际代工线建设项目已竣工验收

    赛微电子宣布,控股子公司赛力微系统技术(北京)有限公司已获得北京市经信委行政审批技术开发区根据局《工程竣工验收备案表》下发的《工程竣工验收备案表》,Selex北京在北京经济技术开发区投资建设的“8英寸MEMS国际代工线建设项目”(FAB3)满足竣工验收的全部条件,并通过

    06-06

  • 钛金资本第七期综合基金已完成超募,两周募资4.58亿

    钛金资本第七期综合基金已完成超募,两周募资4.58亿

    11月26日,钛金资本公告称,钛金综合基金第七期已完成超募。 该基金于今年11月中旬开始募集,仅用了两周时间就完成了。 该基金计划规模为3亿元,最终获得超额认购。 实际募集资金总额达4.58亿元,超募资金超过1.57亿元,创公司历史最高纪录。 单只基金规模创历史新高。 随着钛

    06-18