一种智能终端按序分账方法、系统、存储介质及程序产品与流程

摘要: 本发明涉及智能分账,特别涉及一种智能终端按序分账方法、系统、存储介质及程序产品。背景技术:1、随着外卖柜、送餐柜及社区储物柜一类智能终端的规模化部署,终端运营过...
一种智能终端按序分账方法、系统、存储介质及程序产品与流程

本发明涉及智能分账,特别涉及一种智能终端按序分账方法、系统、存储介质及程序产品。

背景技术:

1、随着外卖柜、送餐柜及社区储物柜一类智能终端的规模化部署,终端运营过程中产生的格口使用费、超期费及其他服务收入需要在终端所有方、运营管理方和场地提供方之间进行分配。不同参与方在运营合同中通常具有不同的收益计算方式和受偿次序,部分参与方按照收入比例取得收益,部分参与方按照约定金额取得收益,且具体分配规则可能随站点、收入类型及运营阶段发生变化。如何准确完成多方收入分配,并保证分配结果能够结算、退款和审计,已成为智能终端运营管理中的重要问题。

2、现有智能终端收入分配通常依赖第三方支付平台提供的分账接口,或者由业务系统按照预设角色和预设比例直接拆分订单金额。此类系统中的参与角色、分配比例和处理流程通常预先写入程序,当订单支付完成后,系统按照当前配置计算各参与方的金额,并直接执行账户入账。部分系统采用消息队列异步处理收入,通过定时任务完成批量结算;发生退款时,则根据订单收入记录执行金额回退,该类方式能够处理角色数量较少、分配规则长期不变的简单业务。

3、然而,现有技术仍存在较为明显的不足。其一,现有系统通常将各参与方作为同一层级进行金额拆分,未考虑各参与方之间存在先后受偿关系,订单金额不足时无法使顺序靠前的参与方优先取得约定金额,比例计算产生的最小货币单位误差也缺少与受偿次序相适应的处理方式。其二,参与角色和分配模式通常与计算程序相互绑定,增加角色或改变分配模式时需要同步修改配置、计算及数据存储程序,系统扩展困难;在此基础上,分账规则被修改后往往立即覆盖原规则,使支付时间较早但尚未处理的订单可能适用修改后的规则,难以还原订单支付时实际适用的分配依据。其三,在异步处理环境下,收入消息与退款消息还可能针对同一订单并发执行,由于现有方案多依赖长事务或应用层锁控制处理顺序,业务量较大时容易出现锁竞争,且仍可能发生已退款订单被继续分账、已入账金额未被完整扣回的问题。其四,现有结算方式通常只能在逐笔结算和周期结算之间选择一种,难以兼顾到账时效与结算处理成本,而旧有的全额归属单一商户的收入数据与多参与方分账数据并存时,也容易出现支付入口、历史订单退款和账户流水无法衔接的问题。

4、因此,如何在智能终端运营过程中实现参与角色和分配模式的灵活配置,按照约定顺序准确分配订单金额,并在收入、结算和退款并发执行的情况下保证处理结果一致,是目前亟待解决的问题。

技术实现思路

1、本发明实施例提供了一种智能终端按序分账方法、系统、存储介质及程序产品,以解决现有技术中所存在的上述问题。

2、根据本发明实施例的第一方面,提供了一种智能终端按序分账方法。

3、在一个实施例中,该智能终端按序分账方法包括:当订单支付完成时,通过查询站点策略绑定表,获取策略标识;策略标识用于创建分账订单并确定目标策略明细;分账订单包括分账状态、结算状态和退款状态;根据分账订单的分账状态和退款状态执行具有业务状态约束的组合条件更新,以确定收入处理的执行权;在取得收入处理的执行权后,按照分账顺序依次根据各目标策略明细的分账模式和分账值确定对应角色的分账金额,从剩余金额中扣除分账金额,并生成分账明细;根据商户配置选择目标结算模式,对分账明细进行结算并更新对应的账户余额;当订单发生退款时,查询对应的分账订单,并基于退款状态执行组合条件更新,以确定退款处理的执行权;根据分账状态和结算状态确定退款阶段,基于退款阶段确定是否扣减对应的账户余额,以完成退款处理。

4、根据本发明实施例的第二方面,提供了一种智能终端按序分账系统。

5、在一个实施例中,该智能终端按序分账系统包括:策略获取模块,用于当订单支付完成时,通过查询站点策略绑定表,获取策略标识;策略标识用于创建分账订单并确定目标策略明细;分账订单包括分账状态、结算状态和退款状态;权限确定模块,用于根据分账订单的分账状态和退款状态执行具有业务状态约束的组合条件更新,以确定收入处理的执行权;按序分账模块,用于在取得收入处理的执行权后,按照分账顺序依次根据各目标策略明细的分账模式和分账值确定对应角色的分账金额,从剩余金额中扣除分账金额,并生成分账明细;结算处理模块,用于根据商户配置选择目标结算模式,对分账明细进行结算并更新对应的账户余额;退款处理模块,用于当订单发生退款时,查询对应的分账订单,并基于退款状态执行组合条件更新,以确定退款处理的执行权;根据分账状态和结算状态确定退款阶段,基于退款阶段确定是否扣减对应的账户余额,以完成退款处理。

6、根据本发明实施例的第三方面,提供了一种存储介质。

7、在一个实施例中,存储介质为计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。

8、根据本发明实施例的第四方面,提供了一种计算机程序产品。

9、在一个实施例中,计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。

10、本发明实施例提供的技术方案可以包括以下有益效果:

11、(1)本发明通过收入类型、角色类型、分账模式、分账值和分账顺序构成矩阵式分账策略,使参与角色、分配方式和计算程序相互解耦;在新增参与角色时,可通过增加对应的角色类型和策略明细使计算过程自动处理新增角色,无需针对各类角色分别设置计算分支;各角色按照分账顺序依次从剩余金额中取得分账金额,在订单金额不足时,顺序靠前的角色能够优先取得约定金额,剩余金额耗尽后不再向后续角色分配,从而避免分配总额超过订单金额;在采用比例分账时,由顺序最末的比例角色承接剩余金额,并按照分账顺序补足取整差值,可使各角色的分账金额之和与订单总金额保持一致。

12、(2)本发明在分账策略发生变化时保存历史快照,并为历史快照设置相应的生效日期,分账执行时依据订单支付时间查找当时适用的策略版本,使同一日期内已支付订单不会因后续策略修改而改变分账依据;策略变更、订单支付、分账明细、结算单号和退款流水能够通过相应标识建立关联,已结算订单发生退款时通过生成负收入记录完成逆向处理,而不删除或覆盖原有收入记录,由此能够还原各参与方取得及退回金额的完整过程,提高分账结果的可复核性和资金流水的可审计性。

13、(3)本发明通过包含分账状态、结算状态和退款状态的组合条件更新确定收入处理权和退款处理权,使并发控制条件直接对应订单所处的业务状态;针对同一订单并发到达的收入请求和退款请求,只有满足组合条件的处理过程能够继续执行,可减少重复分账、重复退款以及已退款订单再次入账的情况;业务记录在消息入队前写入数据库,使未被消费的分账订单能够通过待处理状态被发现并重新触发;收入消息和退款消息采用不同的延时时序,可降低两类消息无序执行引起的状态冲突,结算订单、分账明细和分账订单之间的状态联动也有利于保持各层数据的一致性。

14、(4)本发明可根据商户配置选择实时结算或定时聚合结算;实时结算能够在分账完成后较快更新各参与方账户,定时聚合结算能够按照角色类型、账户标识和收入类型合并分账明细,减少结算操作次数;支付入口依据站点是否存在有效策略绑定记录选择原有收入处理路径或多角色分账路径,策略明细不可用时可将收入归入商户账户,退款时则根据是否存在分账订单选择相应处理方式,由此使已启用分账的站点与未启用分账的站点能够并行运行,降低业务系统升级过程中全量数据迁移和停机切换的风险。

15、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。