CN113065860A - 通过区块链处理手续费业务的方法及装置 - Google Patents
通过区块链处理手续费业务的方法及装置 Download PDFInfo
- Publication number
- CN113065860A CN113065860A CN202110384884.5A CN202110384884A CN113065860A CN 113065860 A CN113065860 A CN 113065860A CN 202110384884 A CN202110384884 A CN 202110384884A CN 113065860 A CN113065860 A CN 113065860A
- Authority
- CN
- China
- Prior art keywords
- transaction
- rate
- commodity
- blockchain
- intelligent contract
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0283—Price estimation or determination
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Marketing (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书实施例提供了一种通过区块链处理手续费业务的方法,所述区块链中部署有智能合约,所述方法由区块链网络中的任意一个节点执行,所述方法包括:获取调用所述智能合约的第一交易,所述第一交易由买方客户端提交,其中包括买方标识、商品货款和第一商品类型作为入参;基于所述第一交易执行所述智能合约,从而根据所述第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从所述买方标识对应的账户中扣除与所述商品货款和手续费等量的资产。
Description
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种通过区块链处理手续费业务的方法及装置。
背景技术
当前,在区块链被大量关注和应用的同时,基于区块链技术实现的智能合约也因为其高效、透明、去中心执行等优点而受到广泛关注。例如,以太坊提供了一种开源的区块链底层系统,通过提供诸多接口,允许开发人员在此基础上开发各种区块链应用,编写智能合约。
然而,现有的智能合约的应用范围仅限于虚拟世界,而无法覆盖现实世界中真实场景下的真实合约,也无法解决现实环境中手续费的收取问题。例如,在电商领域,电商平台为用户提供买卖服务,需要收取一定的服务费用于平台的持续运营和维护,从而为用户提供更好的服务,进而提高用户体验。但是,真实世界中因存在信息不对称,对真实合约存在多种解读方式,买方或卖方违规操作、恶意投诉等因素,对手续费用的收取造成障碍。因此,需要一种更有效的智能合约方案,可以实现对手续费业务的处理。
发明内容
本说明书一个或多个实施例描述了通过区块链处理手续费业务的方法和对应装置,以解决现有技术中的不足。
根据第一方面,提供了一种通过区块链处理手续费业务的方法,所述区块链中部署有智能合约,所述方法由区块链网络中的任意一个节点执行,所述方法包括:获取调用所述智能合约的第一交易,所述第一交易由买方客户端提交,其中包括买方标识、商品货款和第一商品类型作为入参;基于所述第一交易执行所述智能合约,从而根据所述第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从所述买方标识对应的账户中扣除与所述商品货款和手续费等量的资产。
在一个实施例中,在获取第一交易之前,还包括:获取调用所述智能合约的第二交易,所述第二交易由服务平台提交,其中包括第一商品类型和第一费率作为入参;基于所述第二交易执行所述智能合约,从而在区块链中将所述第一商品类型对应的费率设定为第一费率。
在一个实施例中,在获取第一交易之前,还包括:获取调用所述智能合约的第一设定交易,所述第一设定交易由服务平台提交,其中包括第一商品类型和第一指定值,其中第一指定值为全局费率变量的入参;基于所述第一设定交易执行所述智能合约,从而在区块链中将所述第一商品类型下针对各个商户的全局费率变量赋值为所述第一指定值;获取调用所述智能合约的第二设定交易,所述第二设定交易由所述服务平台提交,其中包括第一商品类型,若干商户标识和第二指定值,其中所述第二指定值为局部费率变量的入参;基于所述第二设定交易执行所述智能合约,从而在区块链中将所述第一商品类型下所述若干商户标识对应的局部费率变量赋值为所述第二指定值。
在一个具体的实施例中,所述第一交易还包括卖方标识作为入参;其中,根据所述第一商品类型查询出第一费率,包括:查询所述第一商品类型下所述卖方标识对应的局部费率变量;如果所述卖方标识对应的局部费率变量被赋值,则将该赋值作为所述第一费率;如果所述卖方标识对应的局部费率变量未被赋值,则将所述第一指定值作为所述第一费率。
在一个实施例中,所述第一交易中还包括卖方标识和购入单价为入参;其中,基于该第一费率和商品货款计算手续费,包括:查询所述第一商品类型在所述卖方标识下的当前单价;在所述当前单价与所述购入单价匹配的情况下,基于该第一费率和商品货款计算手续费。
根据第二方面,提供了一种通过区块链处理手续费业务的装置,所述区块链中部署有智能合约,所述装置集成于区块链网络中的任意一个节点,所述装置包括:第一交易获取单元,配置为获取调用所述智能合约的第一交易,所述第一交易由买方客户端提交,其中包括买方标识、商品货款和第一商品类型作为入参;第一合约执行单元,配置为基于所述第一交易执行所述智能合约,从而根据所述第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从所述买方标识对应的账户中扣除与所述商品货款和手续费等量的资产。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
根据本说明书实施例提供的方法和装置,可以通过调用智能合约,实现对手续费业务的处理,具体可以通过调用智能合约实现对手续费和商品货款的链上扣款。此外,还可以通过调用智能合实现对手续费费率和收费账户的灵活设定。如此,可以实现手续费的去中心化收取,保证手续费业务处理结果的有效性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1A是在区块链网络中创建智能合约的过程示意图;
图1B是在区块链网络中调用图1A创建的智能合约的过程示意图;
图2为本说明书披露的一个实施例的实施场景示意图;
图3示出根据一个实施例的通过区块链处理手续费业务的方法流程图;
图4示出根据另一个实施例的通过区块链处理手续费业务的方法流程图;
图5示出根据又一个实施例的通过区块链处理手续费业务的方法流程图;
图6示出根据还一个实施例的通过区块链处理手续费业务的方法流程图;
图7示出根据一个实施例的通过区块链处理手续费业务的装置结构图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
承前所述,在已有的电商平台提供商品买卖服务的过程中,电商平台和用户各自对签署的真实合约、协议进行解释、解读,历史操作数据往往也只是由电商平台进行选择性记录、存储,一旦发生黑客入侵、恶意篡改数据、赖账等情况,将导致电商平台和/或用户在财务等方面的损失,包括卖家收不到货款、平台无法收取服务手续费(或称服务费、手续费)等。有鉴于此,在本说明书的实施例中,提出利用区块链技术和智能合约,对服务相关的业务数据进行记录、存储,对某些业务操作进行去中心化执行,从而使得业务数据可追溯,不可篡改,有效性得到保障。
如本领域技术人员所知,区块链网络是一种分布式存储、记录的体系,其中包含多个节点,各个节点之间可以互相通信交易数据,其中交易Tx是区块中的基本存储单位,有待存储至链上的各种数据一般以交易Tx的形式为载体进行记录。在目前主流的区块链中,一个区块可以存储上百条交易。需要说明的是,本文中所称的节点,也可以称为全节点或记账节点,是可以基于交易Tx生成新的区块并将区块上链的计算设备。典型地,上述区块链网络可以是联盟链,其中约定多个机构作为记账节点,其间通过约定的共识机制,例如PoS权益证明协议,BFT(Byzantine Fault Tolerance)拜占庭容错共识协议等,就接下来要记录的交易达成一致,并将这些交易内容打包形成区块,挂载到区块链上。
进一步地,越来越多的区块链网络支持智能合约,从而在区块链中实现更为丰富的功能。智能合约是一种可以自动执行的程序逻辑,经发布或创建后以数字化的形式写入区块链中,由区块链网络中的各个节点进行执行。
图1A是在区块链网络中创建智能合约的过程示意图。更具体的,图1A结合以太坊进行描述。假定某个节点,Bob想要发布一段智能合约Contract 1,其中包含对变量x,y的运算。Bob可以以交易的形式,发布该合约。具体的,Bob可以发起一笔交易Tx,交易内容中发起方from字段即为Bob(更具体为Bob的地址),接收方to字段设为空值;并且,该交易内容中还包括Data字段,其中包含将上述智能合约编译为字节码之后的代码。在Bob把这样一条交易发布到区块链网络之后,记账节点通过共识机制将其添加到区块链上。在这个过程中,还会根据一定算法,例如基于发布者地址进行哈希等,为上述智能合约赋予一个合约地址,例如0x6f…。如此,一个智能合约对应一个合约地址,与用户的账户地址在形式上没有区别。
以上智能合约经过打包上链之后,区块链网络中的用户可以调用该智能合约。图1B是在区块链网络中调用图1A创建的智能合约的过程示意图。假定区块链网络中的节点Alice想要调用以上智能合约,那么该节点可以发起一笔交易,进行合约调用。
具体而言,在交易内容中,from字段可以是调用者Alice的地址,to字段即为上述智能合约的合约地址0x6f…,表示该交易所调用的智能合约。在Data字段,包含要调用的合约中的方法或函数名称和传入的参数,例如变量x的数值x0。其他节点收到这条交易后,通过节点中的虚拟机执行合约逻辑对应的操作,并通过共识机制实现网络上合约状态的改变,包括合约中变量数值的改变。之后,网络中的任意节点查看这个合约的变量时,就会发现这个合约中变量x的值变成了x0。
基于以上区块链和智能合约的特点,在本说明书的实施例中,通过智能合约实现手续费的链上收取。具体地,可以在智能合约中编写针对手续费费率设定、手续费计算、手续费收取触发条件等相关的业务逻辑,从而实现手续费的去中心化收取,保证手续费业务的处理有效性。
为便于理解,下面先对链上和链下业务的结合进行介绍。图2为本说明书披露的一个实施例的实施场景示意图。在该实施场景中,电商平台(或称服务平台)可以预先在区块链上部署一个智能合约,该智能合约用于处理表征电商平台中手续费相关事件的交易。相应地,电商平台的客户端,在发生手续费相关事件时,向区块链网络提交调用上述智能合约的交易Tx,从而通过该智能合约对手续费进行相关处理和记录。在不同业务阶段,不同客户端可以提交不同内容的交易。例如,当用户意图通过客户端购买商品时,可将该客户端称为买方客户端,该买方客户端提交的交易可以包括以下的传入参数:买方标识,商品价格信息和第一商品类型。相应地,任意的区块链节点可以获取到该笔交易,并基于该笔交易调用智能合约,从而基于交易中的传入参数,查询第一商品类型对应的费率,计算出手续费,并在区块链中,从买方标识对应的账户中进行相应资产的扣除,进一步,可以将扣除的资产增加至手续费的收取账户中。
下面,对手续费业务的处理过程进行展开介绍。
图3示出根据一个实施例的通过区块链处理手续费业务的方法流程图,其中区块链部署有智能合约,用于实现手续费业务的处理。在一种情况中,该智能合约可以由服务平台创建并部署在区块链中。上述手续费业务除包括针对手续费的收取业务,还可能涉及其他阶段的业务,如针对手续费收取费率的设置业务,针对手续费收取账户的设置业务等。以下以手续费收取业务为主干,对各项手续业务的处理进行说明。所述方法可以由区块链网络中的任意一个节点(以下或简称为第一节点)执行,需理解,第一节点可以实现为任何具有计算、处理能力的装置、服务器或设备集群等。如图3所示,所述方法包括以下步骤:
步骤S310,获取调用上述智能合约的第一交易,所述第一交易由买方客户端提交,其中包括买方标识、商品货款和第一商品类型作为入参;步骤S320,基于所述第一交易执行所述智能合约,从而根据所述第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从所述买方标识对应的账户中扣除与所述商品货款和手续费等量的资产。
针对以上步骤,首先需要说明的是,上述“第一节点”、“第一交易”、“第一商品类型”、“第一费率”中的“第一”,以及文中他处的“第一”、“第二”等类似用语,均是为了区分同类事物,不具备排序等其他限定作用。
以上步骤展开如下:
首先在步骤S310,第一节点获取调用智能合约的第一交易,该第一交易由买方客户端提交。
可以理解,电商平台提供的客户端用于与用户进行交互,提供商品出售或购入在一些情况下,客户端同时支持用户使用对应买方角色的服务,例如,购买商品等,以及支持用户使用对应卖方角色的服务,如设置所供应商品的商品单价等,此时,可以将在前一情境下被使用的客户端称为买方客户端,在后一情境下被使用的客户端称为卖方客户端。例如,对应某个商户,若其利用客户端采购商品,其对应的身份为采购商,相应可以将其使用的客户端称为买方客户端或采购方客户端,若其利用客户端设置其所供应商品的商品单价,其对应的身份为供应商,相应可以将其使用客户端称为卖方客户端或供应方客户端。需理解,使用客户端的用户可以指代个人、商户、企业或组织等。在另一些情况下,电商平台针对买方和买方分别设计功能性隔离的买方客户端和卖方客户端,其中买方客户端供买方(如个人用户等)使用,卖方客户端供卖方(如商户用户等)使用。此时,上述买方客户端即为专为买方用户提供的客户端。
根据本说明书的实施例,当买方客户端获取到用户通过电商业务系统购买商品的事件时,就向区块链网络提交上述第一交易。于是,区块链网络中的一些节点会获取到该第一交易。在一个具体的实施例中,节点在接收到第一交易后,对该第一交易进行检查,在检查通过后,再对其进行广播。其中检查内容可以包括交易的格式,如是否符合格式规范,交易签名,如验证是否为交易发送者的签名,交易发送者的账户余额是否足够支付交易费用(Gas*GasPrice),等等。通过广播,最终所有节点,包括任意的第一节点,都会获取到该第一交易。
买方客户端在提交的第一交易中指定其调用的智能合约的账户地址,并包括向智能合约传递的参数,其中包括买方标识、商品货款和第一商品类型等,从而通过第一交易调用智能合约中手续费的收取逻辑。在一个实施例中,其中买方标识用于智能合约定位至买方账户,该买方标识具体可以为买方账户的账户地址,买方账户的账户ID(由区块链系统分配),买方账户的账户地址/账户ID的哈希。该买方标识可以由买方客户端响应于针对第一交易的生成操作而自动获取。在一个实施例中,商品货款可以是商品的总价值。在另一个实施例中,商品货款可以被取代为采购价格和采购数量,需理解,基于该采购价格和采购数量可以计算出商品货款。在一个实施例中,第一商品类型可以是电子商品,如影视资源、电子书籍,或实体商品,如衣服、手机等。
另一方面,智能合约中可以定义一个或多个函数/方法,不同的函数/方法可以涉及不同的业务逻辑,相应,在一个实施例中,第一交易的内容中还需要包括传入参数所对应的函数/方法,换言之,第一交易中需同时指定要调用的手续费收取逻辑对应的函数(或方法)以及向该函数(或该方法)传递的参数。在另一个实施例中,智能合约中可以通过传入的参数识别出对应的函数/方法,此时,第一交易中可以不指定手续费收取逻辑对应的函数名/方法名,而通过传入的参数对应到该段逻辑。
以上,主要对第一交易的内容和获取方式进行介绍。然后,在步骤S320,基于第一交易执行上述智能合约,从而根据入参中的第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从入参中的买方标识所对应账户中扣除与商品货款和手续费等量的资产。
具体地,节点在获取第一交易后,根据其中指定的合约账户地址和入参,执行合约代码中的手续费收取逻辑。手续费收取逻辑可以包括:根据第一交易入参中的第一商品类型,在区块链中查找该第一商品类型所对应费率变量的世界状态,得到第一费率,然后,基于查询出的该第一费率和入参中的商品货款计算手续费,并在区块链中,从入参中的买方标识所对应账户(以下或简称买方账户)中扣除与商品货款和手续费等量的资产。如此,可以从买方账户中进行资产扣除,从而实现手续费的收取。在一个具体的实施例中,在进行资产扣除前,可以进行资产是否足额的判断,进一步,若买方账户的账户余额不足以支付商品货款和手续费,则返回指示交易失败的交易结果,若买方账户的账户余额足以支付,则从买方账户中扣除上述资产,并返回交易执行的结果,如扣款情况等。
上述手续费的计算,依赖第一费率和商品货款。在一种实施场景中,第一费率可以是智能合约中指定的固定值,不可更改。在另一种实施场景中,第一费率对应智能合约中的状态变量,是可以被设定的。在一个具体的实施例中,第一费率对应的状态变量在合约部署阶段被赋予初始数值,或者,在合约部署阶段的变量值为空。
下面对第一费率的设定进行介绍,相应,第一费率的设定逻辑不同,手续费计算中涉及的对第一费率的查找和使用逻辑可能不同。
图4示出根据另一个实施例的通过区块链处理手续费业务的方法流程图,相较于图3,其中在执行步骤S310之前,还包括执行步骤S041和S042,通过执行步骤S041和S042,可以实现对第一费率的设定。
如图4所示,在步骤S041,第一节点获取调用上述智能合约的第二交易,该第二交易由服务平台提交,其中包括第一商品类型和第一费率作为入参;在步骤S042,第一节点基于该第二交易执行上述智能合约,从而在区块链中将第一商品类型对应的费率设定为第一费率。
对于上述步骤S042,其中在区块链中将第一商品类型对应的费率设定为第一费率可以包括:在判断出第二交易的提交方为服务平台的情况下,在区块链中将所述第一商品类型对应的费率设定为第一费率,否则,返回指示交易失败的执行结果。
通过步骤S041和步骤S042,可以设定第一商品类型所对应的费率,实际上,还可以同时设定多个不同商品类型的费率,依次类推,可以完成各个商品类型下费率的设定。相应地,在上述步骤S320中,在执行智能合约的过程中,可以查询到对应商品类型下最新设定的手续费费率。
以上介绍费率的设置方式,根据另一方面的实施例,还提供另一种费率的设置方式,在此方式中,对于同一商品类型,针对不同商户设置有不同费率,为便于区分描述,将针对特定商户设置的费率称为局部费率,或者,还可以针对商品类型设定优先级相较局部费率低一级的全局费率。需理解,在一种实施方式中,局部费率和全局费率,可以都是被预先写死在智能合约中,不可更改的。在另一种实施方式中,全局费率和/或局部费率对应智能合约中的状态变量,是可以被设定的,如此,可以实现费率的灵活设置和更改。
具体,图5示出根据又一个实施例的通过区块链处理手续费业务的方法流程图,相较于图3,其中在执行步骤S310之前,还包括执行步骤S052和S054,以实现对第一商品类型下全局费率的设定,和/或,还包括执行步骤S053和S055,以实现对第一商品类型下若干局部费率的设定。需说明,对以上步骤S052、S053、S054和S055的相对执行顺序不作唯一限定,例如,可以先设定全局费率再设定局部费率,或者,可以先设定局部费率再设定全局费率。
如图5所示,在步骤S052,第一节点获取调用上述智能合约的第一设定交易,该第一设定交易由服务平台提交,其中包括第一商品类型和第一指定值,其中第一指定值为全局费率变量的入参。在一个实施例中,第一设定交易中包括以下变量赋值信息:将第一商品类型赋值给商品类型变量,以及将第一指定值赋值给全局费率变量。
进一步,在步骤S054,基于第一设定交易执行上述智能合约,从而在区块链中将第一商品类型下针对各个商户的全局费率变量赋值为第一指定值。在一个实施例中,判断第一设定交易的提交方是否为服务平台,若是,则在区块链中将第一商品类型下的全局费率变量赋值为第一指定值,否则,返回指示交易失败的执行结果。如此,可实现对商品类型下全局费率的设定。
如图5所示,在步骤S053,获取调用上述智能合约的第二设定交易,该第二设定交易由服务平台提交,其中包括第一商品类型,若干商户标识和第二指定值,其中第二指定值为局部费率变量的入参。进一步,在步骤S055,基于该第二设定交易执行上述智能合约,从而在区块链中将第一商品类型下该若干商户标识对应的局部费率变量赋值为第二指定值。在一个实施例中,判断第二设定交易的提交方是否为服务平台,若是,则在区块链中将第一商品类型下该若干商户标识对应的局部费率变量赋值为第二指定值,否则,返回指示交易失败的执行结果。如此,可实现对商品类型下局部费率的设定。
基于图5中示出的费率设定方式,步骤S310中获取的第一交易还包括卖方标识作为入参,进一步,上述步骤S320的实施可以包括:查询第一商品类型下该卖方标识对应的局部费率变量;如果该卖方标识对应的局部费率变量被赋值,则将该赋值作为第一费率,如果该卖方标识对应的局部费率变量未被赋值,则将上述第一指定值,即第一商品类型下的全局费率值,作为第一费率。如此,可以支持费率的灵活设定和使用。
以上,对费率的设定方式,以及其对手续费收取的对应实施方式进行介绍。根据再一方面的实施例,考虑到商品价格存在一定程度的实时波动,步骤S320中手续费的计算,还涉及对商品期望价格和商品最新价格的判别,其中商品期望价格买方通过区块链客户端输入的采购价格,其一般是买方在输入用于生成第一交易的过程中,基于区块链或相关链外平台查阅的商品单价,而商品最新价格,是第一交易提交后,在执行智能合约的过程中查询出的最新单价(或称当前单价)。
在一个实施例中,步骤S310获取的第一交易中还包括卖方标识,上述步骤S320中基于第一费率和商品货款计算手续费可以包括:查询第一商品类型在该卖方标识下的当前单价;进一步,在该当前单价与购入单价匹配的情况下,基于该第一费率和商品货款计算手续费,而在不匹配的情况下,返回指示交易失败的执行结果。在一个具体的实施例中,计算第一费率和商品货款的乘积结果,作为手续费的数值。在一个更具体的实施例中,可以将乘积结果精确到预定位数的部分,确定为手续费。
如此,可以避免给买方造成的损失。在另一个实施例中,步骤S310获取的第一交易中还包括第一商品类型的购入数量;对当前单价和购入单价的判别可以包括,判断当前单价是否不大于购入单价,如果是,则基于该购入数量和购入单价计算当前商品货款,再基于该当前商品货款和第一费率,计算手续费。
上述商品单价的波动,涉及到商户对其供应商品的价格进行设定。在一个实施例中,在上述步骤S310之前,所述方法还可以包括:获取调用智能合约的第三交易,该第三交易由卖方客户端提交,其中包括上述卖方标识、第一商品类型和当前单价作为入参;并基于该第三交易执行上述智能合约,从而在区块链中,将第一商品类型在上述卖方标识下的商品单价设定为上述当前单价。如此,可以实现对商户中商品价格的设定。需理解,商户可以多次提交用于调用智能合约以修改商品价格的交易,完成对区块链中商品价格的修改、更新。
以上,对手续费业务中涉及的费率设定、手续费计算、手续费扣除等进行描述。其中的手续费扣除,可以通过步骤S320中描述的,在区块链中从买方标识对应的账户中扣除与商品货款和手续费等量的资产,而实现。与费用扣除相对应的,还涉及费用的入账。在一个实施例中,步骤S320中还可以包括:在区块链中,从卖方标识对应的账户中增加与商品货款等量的资产,以及,在指定收取手续费的收费账户中增加与手续费等量的资产。如此,可以实现手续费的收取。
但是,考虑到买方付款后,存在卖方不交付货物的可能性。因此,在进行商品货款与手续费的扣除后,可以暂缓打款,之后,等到买方确认收货,再将货款和手续费分别转入对应账户中。相应,在一个实施例中,上述步骤S320中还可以包括:在区块链中,记录上述商品货款与卖方标识所对应账户之间的归属关系,以及,记录上述手续费与收费账户之间的归属关系。在一个更具体的实施例中,步骤S320中还可以进一步包括:在所述智能合约对应的合约账户中增加与上述商品货款和手续费等量的资产。
基于此,在一个实施例中,在步骤S320之后,所述方法还可以包括图6中示出的步骤S061和步骤S062。在步骤S061,获取调用上述智能合约的第五交易,该第五交易由上述买方客户端提交,其中包括确认收货标识作为入参。在一个具体的实施例中,响应于买方基于买方客户端输入的确定收货操作,生成该确认收货标识(例如,数值1)。在一个具体的实施例中,第五交易中可以包括此赋值信息:将确认收货标识赋值给确认收货变量。
之后在步骤S062,基于上述第五交易执行智能合约,从而在区块链中,在上述卖方标识对应的账户中增加与上述商品货款等量的资产,以及在收费账户中增加与上述手续费等量的资产。在一个具体的实施例中,与步骤S320中在合约账户中增加资产相对应的,步骤S062中还可以包括:从智能合约的合约账户中扣除与商品货款和手续费等量的资产。如此,可以在避免买方产生损失的情况下,实现手续费的收取。
在上述手续费的收取中,涉及到用于收取手续费的收费账户。在一个实施例中,收费账户可以是智能合约中的固定值,不可更改。在另一种实施场景中,收费账户对应智能合约中的状态变量,是可以被设定的。进一步,在一个具体的实施例中,在步骤S310之前,所述方法还可以包括:获取调用智能合约的第四交易,该第四交易由服务平台提交,其中包括上述收费账户作为入参;再基于该第四交易执行上述智能合约,从而在区块链中将用于收取手续费的账户设定为上述收费账户。
综上,采用本说明书实施例披露的通过区块链处理手续费业务的方法,可以通过调用智能合约,实现对手续费业务的处理,具体,可以通过调用智能合约实现对手续费和商品货款的链上扣款。此外,还可以通过调用智能合实现对手续费费率和收费账户的灵活设定。如此,可以实现手续费的去中心化收取,保证手续费业务处理结果的有效性。
与上述处理方法相对应的,本说明书实施例还披露一种处理装置。具体如下:
图7示出根据一个实施例的通过区块链处理手续费业务的装置结构图,所述区块链中部署有智能合约,所述装置集成于区块链网络中的任意一个节点,所述装置700包括:
第一交易获取单元701,配置为获取调用所述智能合约的第一交易,所述第一交易由买方客户端提交,其中包括买方标识、商品货款和第一商品类型作为入参;第一合约执行单元702,配置为基于所述第一交易执行所述智能合约,从而根据所述第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从所述买方标识对应的账户中扣除与所述商品货款和手续费等量的资产。
在一个实施例中,所述装置700还包括:第二交易获取单元703,配置为获取调用所述智能合约的第二交易,所述第二交易由服务平台提交,其中包括第一商品类型和第一费率作为入参;第二合约执行单元704,配置为基于所述第二交易执行所述智能合约,从而在区块链中将所述第一商品类型对应的费率设定为第一费率。
在一个具体的实施例中,所述第二合约执行单元704具体配置为:在判断出所述第二交易的提交方为所述服务平台的情况下,在区块链中将所述第一商品类型对应的费率设定为第一费率。
在一个实施例中,所述装置700还包括:第一设定交易获取单元,配置为获取调用所述智能合约的第一设定交易,所述第一设定交易由服务平台提交,其中包括第一商品类型和第一指定值,其中第一指定值为全局费率变量的入参;第一智能合约执行单元,配置为基于所述第一设定交易执行所述智能合约,从而在区块链中将所述第一商品类型下针对各个商户的全局费率变量赋值为所述第一指定值;第二设定交易获取单元,配置为获取调用所述智能合约的第二设定交易,所述第二设定交易由所述服务平台提交,其中包括第一商品类型,若干商户标识和第二指定值,其中所述第二指定值为局部费率变量的入参;第二智能合约执行单元,配置为基于所述第二设定交易执行所述智能合约,从而在区块链中将所述第一商品类型下所述若干商户标识对应的局部费率变量赋值为所述第二指定值。
在一个具体的实施例中,所述第一交易还包括卖方标识作为入参;所述第一合约执行单元702具体配置为:查询所述第一商品类型下所述卖方标识对应的局部费率变量;如果所述卖方标识对应的局部费率变量被赋值,则将该赋值作为所述第一费率;如果所述卖方标识对应的局部费率变量未被赋值,则将所述第一指定值作为所述第一费率。
在一个实施例中,所述第一交易中还包括卖方标识和购入单价为入参;其中,所述第一合约执行单元702具体配置为:查询所述第一商品类型在所述卖方标识下的当前单价;在所述当前单价与所述购入单价匹配的情况下,基于该第一费率和商品货款计算手续费。
在一个具体的实施例中,所述装置700还包括:第三交易获取单元705,配置为获取调用智能合约的第三交易,所述第三交易由卖方客户端提交,其中包括所述卖方标识、第一商品类型和当前单价作为入参;第三合约执行单元706,配置为基于所述第三交易执行所述智能合约,从而在区块链中,将所述第一商品类型在所述卖方标识下的商品单价设定为所述当前单价。
在一个实施例中,所述第一交易中还包括卖方标识;所述第一合约执行单元702还配置为:在区块链中,记录所述商品货款与所述卖方标识所对应账户之间的归属关系,以及,记录所述手续费与收费账户之间的归属关系。
在一个具体的实施例中,所述装置700还包括:第四交易获取单元707,配置为获取调用所述智能合约的第四交易,所述第四交易由服务平台提交,其中包括所述收费账户作为入参;第四合约执行单元708,配置为基于所述第四交易执行所述智能合约,从而在区块链中将用于收取手续费的账户设定为所述收费账户。
在一个更具体的实施例中,所述第四合约执行单元708具体配置为:在判断出所述第四交易的提交方为所述服务平台的情况下,在区块链中将用于收取手续费的账户设定为所述收费账户。
在另一个具体的实施例中,所述装置还包括第五交易获取单元709,配置为获取调用所述智能合约的第五交易,所述第五交易由所述买方客户端提交,其中包括确认收货标识作为入参;第五合约执行单元,配置为基于所述第五交易执行所述智能合约,从而在区块链中,在所述卖方标识对应的账户中增加与所述商品货款等量的资产,以及在所述收费账户中增加与所述手续费等量的资产。
综上,采用本说明书实施例披露的通过区块链处理手续费业务的装置,可以通过调用智能合约,实现对手续费业务的处理,具体,可以通过调用智能合约实现对手续费和商品货款的链上扣款。此外,还可以通过调用智能合实现对手续费费率和收费账户的灵活设定。如此,可以实现手续费的去中心化收取,保证手续费业务处理结果的有效性。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图3、图4、图5或图6所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图3、图4、图5或图6所述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (15)
1.一种通过区块链处理手续费业务的方法,所述区块链中部署有智能合约,所述方法由区块链网络中的任意一个节点执行,所述方法包括:
获取调用所述智能合约的第一交易,所述第一交易由买方客户端提交,其中包括买方标识、商品货款和第一商品类型作为入参;
基于所述第一交易执行所述智能合约,从而根据所述第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从所述买方标识对应的账户中扣除与所述商品货款和手续费等量的资产。
2.根据权利要求1所述的方法,在获取第一交易之前,还包括:
获取调用所述智能合约的第二交易,所述第二交易由服务平台提交,其中包括第一商品类型和第一费率作为入参;
基于所述第二交易执行所述智能合约,从而在区块链中将所述第一商品类型对应的费率设定为第一费率。
3.根据权利要求2所述的方法,其中,在区块链中将所述第一商品类型对应的费率设定为第一费率,包括:
在判断出所述第二交易的提交方为所述服务平台的情况下,在区块链中将所述第一商品类型对应的费率设定为第一费率。
4.根据权利要求1所述的方法,在获取第一交易之前,还包括:
获取调用所述智能合约的第一设定交易,所述第一设定交易由服务平台提交,其中包括第一商品类型和第一指定值,其中第一指定值为全局费率变量的入参;
基于所述第一设定交易执行所述智能合约,从而在区块链中将所述第一商品类型下针对各个商户的全局费率变量赋值为所述第一指定值;
获取调用所述智能合约的第二设定交易,所述第二设定交易由所述服务平台提交,其中包括第一商品类型,若干商户标识和第二指定值,其中所述第二指定值为局部费率变量的入参;
基于所述第二设定交易执行所述智能合约,从而在区块链中将所述第一商品类型下所述若干商户标识对应的局部费率变量赋值为所述第二指定值。
5.根据权利要求4所述的方法,其中,所述第一交易还包括卖方标识作为入参;其中,根据所述第一商品类型查询出第一费率,包括:
查询所述第一商品类型下所述卖方标识对应的局部费率变量;
如果所述卖方标识对应的局部费率变量被赋值,则将该赋值作为所述第一费率;
如果所述卖方标识对应的局部费率变量未被赋值,则将所述第一指定值作为所述第一费率。
6.根据权利要求1所述的方法,其中,所述第一交易中还包括卖方标识和购入单价为入参;其中,基于该第一费率和商品货款计算手续费,包括:
查询所述第一商品类型在所述卖方标识下的当前单价;
在所述当前单价与所述购入单价匹配的情况下,基于该第一费率和商品货款计算手续费。
7.根据权利要求6所述的方法,其中,在获取第一交易之前,还包括:
获取调用智能合约的第三交易,所述第三交易由卖方客户端提交,其中包括所述卖方标识、第一商品类型和当前单价作为入参;
基于所述第三交易执行所述智能合约,从而在区块链中,将所述第一商品类型在所述卖方标识下的商品单价设定为所述当前单价。
8.根据权利要求1所述的方法,其中,所述第一交易中还包括卖方标识;其中,在基于该第一费率和商品货款计算手续费之后,所述方法还包括:
在区块链中,记录所述商品货款与所述卖方标识所对应账户之间的归属关系,以及,记录所述手续费与收费账户之间的归属关系。
9.根据权利要求8所述的方法,其中,在获取第一交易之前,还包括:
获取调用所述智能合约的第四交易,所述第四交易由服务平台提交,其中包括所述收费账户作为入参;
基于所述第四交易执行所述智能合约,从而在区块链中将用于收取手续费的账户设定为所述收费账户。
10.根据权利要求9所述的方法,其中,在区块链中将用于收取手续费的账户设定为所述收费账户,包括:
在判断出所述第四交易的提交方为所述服务平台的情况下,在区块链中将用于收取手续费的账户设定为所述收费账户。
11.根据权利要求8所述的方法,其中,在基于所述第一交易执行所述智能合约之后,还包括:
获取调用所述智能合约的第五交易,所述第五交易由所述买方客户端提交,其中包括确认收货标识作为入参;
基于所述第五交易执行所述智能合约,从而在区块链中,在所述卖方标识对应的账户中增加与所述商品货款等量的资产,以及在所述收费账户中增加与所述手续费等量的资产。
12.一种通过区块链处理手续费业务的装置,所述区块链中部署有智能合约,所述装置集成于区块链网络中的任意一个节点,所述装置包括:
第一交易获取单元,配置为获取调用所述智能合约的第一交易,所述第一交易由买方客户端提交,其中包括买方标识、商品货款和第一商品类型作为入参;
第一合约执行单元,配置为基于所述第一交易执行所述智能合约,从而根据所述第一商品类型查询出第一费率,基于该第一费率和商品货款计算手续费,并在区块链中,从所述买方标识对应的账户中扣除与所述商品货款和手续费等量的资产。
13.根据权利要求12所述的装置,还包括:
第二交易获取单元,配置为获取调用所述智能合约的第二交易,所述第二交易由服务平台提交,其中包括第一商品类型和第一费率作为入参;
第二合约执行单元,配置为基于所述第二交易执行所述智能合约,从而在区块链中将所述第一商品类型对应的费率设定为第一费率。
14.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-11中任一项的所述的方法。
15.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110384884.5A CN113065860A (zh) | 2021-04-09 | 2021-04-09 | 通过区块链处理手续费业务的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110384884.5A CN113065860A (zh) | 2021-04-09 | 2021-04-09 | 通过区块链处理手续费业务的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113065860A true CN113065860A (zh) | 2021-07-02 |
Family
ID=76566237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110384884.5A Pending CN113065860A (zh) | 2021-04-09 | 2021-04-09 | 通过区块链处理手续费业务的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113065860A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113506176A (zh) * | 2021-07-14 | 2021-10-15 | 支付宝(杭州)信息技术有限公司 | 基于区块链的交易手续费转账方法及装置 |
CN114596092A (zh) * | 2022-02-24 | 2022-06-07 | 成都质数斯达克科技有限公司 | 一种基于区块链的计费方法、装置、设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296272A (zh) * | 2008-06-10 | 2008-10-29 | 腾讯科技(深圳)有限公司 | 计费管理方法 |
CN101778366A (zh) * | 2009-01-14 | 2010-07-14 | 华为技术有限公司 | 一种提高内容计费准确性的方法、装置及系统 |
CN110020936A (zh) * | 2019-01-03 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 基于区块链的资产管理方法及装置、电子设备 |
CN110210976A (zh) * | 2019-06-11 | 2019-09-06 | 北京艾摩瑞策科技有限公司 | 一种基于区块链的交易方法及其设备 |
CN110298643A (zh) * | 2019-08-22 | 2019-10-01 | 深圳市先河系统技术有限公司 | 基于区块链的手续费分配方法、装置及存储介质 |
CN112348681A (zh) * | 2021-01-11 | 2021-02-09 | 北京知帆科技有限公司 | 一种区块链交易手续费确定方法、装置及电子设备 |
-
2021
- 2021-04-09 CN CN202110384884.5A patent/CN113065860A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296272A (zh) * | 2008-06-10 | 2008-10-29 | 腾讯科技(深圳)有限公司 | 计费管理方法 |
CN101778366A (zh) * | 2009-01-14 | 2010-07-14 | 华为技术有限公司 | 一种提高内容计费准确性的方法、装置及系统 |
CN110020936A (zh) * | 2019-01-03 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 基于区块链的资产管理方法及装置、电子设备 |
CN110210976A (zh) * | 2019-06-11 | 2019-09-06 | 北京艾摩瑞策科技有限公司 | 一种基于区块链的交易方法及其设备 |
CN110298643A (zh) * | 2019-08-22 | 2019-10-01 | 深圳市先河系统技术有限公司 | 基于区块链的手续费分配方法、装置及存储介质 |
CN112348681A (zh) * | 2021-01-11 | 2021-02-09 | 北京知帆科技有限公司 | 一种区块链交易手续费确定方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113506176A (zh) * | 2021-07-14 | 2021-10-15 | 支付宝(杭州)信息技术有限公司 | 基于区块链的交易手续费转账方法及装置 |
CN114596092A (zh) * | 2022-02-24 | 2022-06-07 | 成都质数斯达克科技有限公司 | 一种基于区块链的计费方法、装置、设备及可读存储介质 |
CN114596092B (zh) * | 2022-02-24 | 2024-05-28 | 成都质数斯达克科技有限公司 | 一种基于区块链的计费方法、装置、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110163590B (zh) | 基于区块链的缴费代扣方法及装置、电子设备、存储介质 | |
EP3776441B1 (en) | Digital asset exchange | |
US10817345B2 (en) | Distributed ledger for monitoring quality of services provided by cloud service providers | |
CN112200571B (zh) | 基于区块链的资源发放方法、装置及电子设备 | |
CN109961365B (zh) | 一种基于区块链智能合约的收账记录处理方法及系统 | |
KR20160037175A (ko) | 소매상들을 이용하여 서브스크립션들을 신디케이팅하기 위한 시스템 | |
CN111476667A (zh) | 基于区块链的原创作品交易方法及装置和电子设备 | |
CN109933593B (zh) | 资产数据记载方法、装置及设备 | |
CN112200568B (zh) | 基于区块链的账户创建方法、装置及电子设备 | |
CN113065860A (zh) | 通过区块链处理手续费业务的方法及装置 | |
CN112766854B (zh) | 基于区块链的数字商品交易方法和装置 | |
CN112883109B (zh) | 基于区块链的数字商品交易方法和装置 | |
CN112200567A (zh) | 基于区块链的资源管理方法、装置及电子设备 | |
CN112561407B (zh) | 基于区块链的资产管理方法、系统及装置 | |
CN112200572A (zh) | 基于区块链的资源发放方法、装置及电子设备 | |
KR102136976B1 (ko) | 토큰화된 모바일 상품권 서비스 방법 및 이를 이용한 서비스 제공 장치 | |
CN115795552A (zh) | 权限管理方法、装置、非易失性存储介质及电子设备 | |
CN114708093A (zh) | 基于区块链的数字资源处理方法和装置 | |
CN108876339B (zh) | 基于通证的电子宠物交易方法及装置 | |
CN111062764A (zh) | 一种基于区块链的电子权益交易方法、设备及介质 | |
WO2021125107A1 (ja) | 制御方法、装置、および、プログラム | |
JP5812645B2 (ja) | 電子商取引システム | |
Hukkinen | Reducing blockchain transaction costs in a distributed energy market application | |
CN108564354A (zh) | 结算方法、服务平台及服务器 | |
CN111738861A (zh) | 通过区块链进行权益累加的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210702 |