电子发票生成方法、装置、计算机设备和存储介质转让专利

申请号 : CN201910544223.7

文献号 : CN110378755B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 高建欣王梦寒魏威赖骏刘恩科张宝赵达悦

申请人 : 深圳壹账通智能科技有限公司

摘要 :

本申请涉及区块链,提供了一种电子发票生成方法、装置、计算机设备和存储介质。所述方法包括:开票平台节点接收到开票指令,开票指令中携带有开票信息和税局节点地址;开票平台节点根据税局节点地址将开票信息通过区块链发送税局节点;开票平台节点获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。采用本方法能够保证电子发票相关信息不被篡改,降低税局节点服务器的压力,提高了电子发票的生成效率。

权利要求 :

1.一种电子发票生成方法,所述方法包括:

开票平台节点接收到开票指令,所述开票指令中携带有开票信息和税局节点地址;

所述开票平台节点根据所述税局节点地址将所述开票信息通过区块链发送至税局节点;

所述开票平台节点获取到所述税局节点通过所述区块链发送的审核通过信息和电子发票生成信息,根据所述开票信息、所述审核通过信息和所述电子发票生成信息生成电子发票,所述区块链包括所述税局节点、所述开票平台节点、企业节点、海关节点、物流节点、银行节点和报销节点,通过所述税局节点、所述开票平台节点、所述企业节点、所述海关节点、所述物流节点、所述银行节点和所述报销节点形成区块链电子发票生态网络,所述税局节点、所述开票平台节点、所述企业节点、所述海关节点、所述物流节点、所述银行节点和所述报销节点从所述区块链电子发票生态网络中下载所述开票信息、所述审核通过信息和所述电子发票生成信息,并生成所述电子发票。

2.根据权利要求1所述的方法,其特征在于,所述根据所述税局节点地址将所述开票信息通过区块链发送税局节点,包括:根据所述开票指令获取开票平台节点私钥,使用所述开票平台节点私钥生成所述开票信息中各个字段的加密密钥;

使用所述各个字段的加密密钥分别对所述开票信息中各个字段加密,得到加密后的开票信息,根据所述税局节点地址将所述加密后的开票信息通过所述区块链发送税局节点;

获取到对所述税局节点的授权信息,所述授权信息中包括授权字段和授权字段对应的加密密钥,将所述授权信息发送到所述税局节点;

所述税局节点用于接收所述授权信息并从所述区块链中获取到加密后的开票信息,使用所述授权信息中的加密密钥解密所述加密后的开票信息,得到所述开票信息中的授权字段并根据所述授权字段获取到审核通过信息和电子发票生成信息。

3.根据权利要求1所述的方法,其特征在于,在所述获取到所述税局节点通过所述区块链发送的审核通过信息和电子发票生成信息,根据所述审核通过信息和电子发票生成信息生成电子发票之后,还包括:接收到电子发票报销指令,根据报销指令获取到报销节点地址;

根据所述电子发票报销指令获取到报销信息,根据所述报销节点地址将所述报销信息发送报销节点;

所述报销节点用于接收所述报销信息,根据所述报销信息从所述区块链中获取报销信息对应的开票信息、审核通过信息和电子发票生成信息并验证所述开票信息、所述审核通过信息和所述电子发票生成信息,当验证通过时,根据所述开票信息、所述审核通过信息和所述电子发票生成信息生成电子发票;

所述报销节点还用于接收所述电子发票报销完成指令,根据所述报销完成指令生成所述电子发票的报销标记,将所述报销标记、所述开票信息、所述审核通过信息和所述电子发票生成信息关联上传所述区块链中。

4.根据权利要求1所述的方法,其特征在于,在所述获取到所述税局节点通过所述区块链发送的审核通过信息和电子发票生成信息,根据所述审核通过信息和电子发票生成信息生成电子发票之后,还包括:接收退税申请指令,根据所述退税申请指令获取到退税信息和所述税局节点地址;

根据所述税局节点地址通过所述区块链向所述税局节点发送所述退税信息;所述税局节点用于接收到所述退税信息,根据所述退税信息从所述区块链中获取到海关节点写入的出口信息和物流节点写入物流信息并从所述区块链中获取到所述开票信息、所述审核通过信息和所述电子发票生成信息,验证所述出口信息和所述物流信息是否与所述开票信息、所述审核通过信息和所述电子发票生成信息一致;

所述税局节点还用于当验证通过时,生成退税验证通过信息,将所述退税验证通过信息、所述开票信息、所述审核通过信息和所述电子发票关联写入所述区块链。

5.根据权利要求4所述的方法,其特征在于,所述税局节点还用于接收退税交易指令,所述退税交易指令携带退税数值和退税交易节点地址,根据所述退税交易指令通过所述区块链将所述退税数值转移到所述退税交易节点地址。

6.根据权利要求1所述的方法,其特征在于,所述方法,还包括:

接收到融资申请指令,根据所述融资申请指令获取到融资申请信息和银行节点地址;

根据所述银行节点地址通过所述区块链向所述银行节点发送所述融资申请信息;所述银行节点用于接收到所述融资申请信息,并从所述从区块链中获取到所述开票信息、所述审核通过信息和所述电子发票生成信息并验证所述融资申请信息是否与所述开票信息、所述审核通过信息和所述电子发票生成信息一致,当验证通过时,生成融资验证通过信息,将所述融资验证通过信息、所述开票信息、所述审核通过信息和所述电子发票关联写入所述区块链。

7.根据权利要求6所述的方法,其特征在于,所述银行节点还用于接收融资交易指令,所述融资交易指令携带融资数值和融资交易节点地址,根据所述融资交易指令通过所述区块链将所述融资数值转移所述融资交易节点地址。

8.一种电子发票生成装置,其特征在于,所述装置包括:

指令接收模块,用于接收到开票指令,所述开票指令中携带有开票信息和税局节点地址;

信息发送模块,用于根据所述税局节点地址将所述开票信息通过区块链发送税局节点;

发票生成模块,用于获取到所述税局节点通过所述区块链发送的审核通过信息和电子发票生成信息,根据所述开票信息、所述审核通过信息和所述电子发票生成信息生成电子发票,所述区块链包括所述税局节点、所述开票平台节点、企业节点、海关节点、物流节点、银行节点和报销节点,通过所述税局节点、所述开票平台节点、所述企业节点、所述海关节点、所述物流节点、所述银行节点和所述报销节点形成区块链电子发票生态网络,所述税局节点、所述开票平台节点、所述企业节点、所述海关节点、所述物流节点、所述银行节点和所述报销节点从所述区块链电子发票生态网络中下载所述开票信息、所述审核通过信息和所述电子发票生成信息,并生成所述电子发票。

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。

说明书 :

电子发票生成方法、装置、计算机设备和存储介质

技术领域

[0001] 本申请涉及互联网技术领域,特别是涉及一种电子发票生成方法、装置、计算机设备和存储介质。

背景技术

[0002] 现在市场上有多种电子发票开票平台,企业通过选择自己信任的开票平台进行开票,各个开票平台分别保存开票信息。从而是税局监管部门在审核开票信息时,需要从不同开票平台获取开票信息进行审核,审核通过后开票平台才能生成电子发票。目前,通常各个开票平台使用加密算法保证开票信息在传输过程中的安全和无法被篡改。由于,各个开票平台分别使用不同的加密算法致使税局监管部门接收到开票信息时需要对各个开票平台分别进行解密处理,当审核请求过多时,会导致税局监管部门服务器压力过大,致使开票平台无法及时生成电子发票。

发明内容

[0003] 基于此,有必要针对上述技术问题,提供一种能够提高电子发票生成效率的电子发票生成方法、装置、计算机设备和存储介质。
[0004] 一种电子发票生成方法,所述方法包括:
[0005] 接收到开票指令,开票指令中携带有开票信息和税局节点地址;
[0006] 根据税局节点地址将开票信息通过区块链发送税局节点;
[0007] 获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0008] 在其中一个实施例中,根据税局节点地址将开票信息通过区块链发送税局节点,包括:
[0009] 根据开票指令获取开票平台节点私钥,使用开票平台节点私钥生成开票信息中各个字段的加密密钥;
[0010] 使用各个字段的加密密钥分别对开票信息中各个字段加密,得到加密后的开票信息,根据税局节点地址将加密后的开票信息通过区块链发送税局节点;
[0011] 获取到对税局节点的授权信息,授权信息中包括授权字段和授权字段对应的加密密钥,将授权信息发送到税局节点;
[0012] 税局节点用于接收授权信息并从区块链中获取到加密后的开票信息,使用授权信息中的加密密钥解密加密后的开票信息,得到开票信息中的授权字段并根据授权字段获取到审核通过信息和电子发票生成信息。
[0013] 在其中一个实施例中,在获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据审核通过信息和电子发票生成信息生成电子发票之后,还包括:
[0014] 接收到电子发票报销指令,根据报销指令获取到报销节点地址;
[0015] 根据电子发票报销指令获取到报销信息,根据报销节点地址将报销信息发送报销节点;
[0016] 报销节点用于接收报销信息,根据报销信息从区块链中获取报销信息对应的开票信息、审核通过信息和电子发票生成信息并验证开票信息、审核通过信息和电子发票生成信息,当验证通过时,根据开票信息、审核通过信息和电子发票生成信息生成电子发票;
[0017] 报销节点还用于接收电子发票报销完成指令,根据报销完成指令生成电子发票的报销标记,将报销标记、开票信息、审核通过信息和电子发票生成信息关联上传区块链中。
[0018] 在其中一个实施例中,在获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据审核通过信息和电子发票生成信息生成电子发票之后,还包括:
[0019] 接收退税申请指令,根据退税申请指令获取到退税信息和税局节点地址;
[0020] 根据税局节点地址通过区块链向税局节点发送退税信息;
[0021] 税局节点用于接收到退税信息,根据退税信息从区块链中获取到海关节点写入的出口信息和物流节点写入物流信息并从区块链中获取到开票信息、审核通过信息和电子发票生成信息,验证出口信息和物流信息是否与开票信息、审核通过信息和电子发票生成信息一致;
[0022] 税局节点还用于当验证通过时,生成退税验证通过信息,将退税验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。
[0023] 在其中一个实施例中,税局节点还用于接收退税交易指令,退税交易指令携带退税数值和退税交易节点地址,根据退税交易指令通过区块链将退税数值转移到退税交易节点地址。
[0024] 在其中一个实施例中,所述方法,还包括:
[0025] 接收到融资申请指令,根据融资申请指令获取到融资申请信息和银行节点地址;
[0026] 根据银行节点地址通过区块链向银行节点发送融资申请信息;
[0027] 银行节点用于接收到融资申请信息,并从区块链中获取到开票信息、审核通过信息和电子发票生成信息,验证融资申请信息是否与开票信息、审核通过信息和电子发票生成信息一致,当验证通过时,生成融资验证通过信息,将融资验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。
[0028] 在其中一个实施例中,银行节点还用于接收融资交易指令,融资交易指令携带融资数值和融资交易节点地址,根据融资交易指令通过区块链将融资数值转移融资交易节点地址。
[0029] 一种电子发票生成装置,装置包括:
[0030] 指令接收模块,用于接收到开票指令,开票指令中携带有开票信息和税局节点地址;
[0031] 信息发送模块,用于根据税局节点地址将开票信息通过区块链发送税局节点;
[0032] 发票生成模块,用于获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0033] 一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0034] 接收到开票指令,开票指令中携带有开票信息和税局节点地址;
[0035] 根据税局节点地址将开票信息通过区块链发送税局节点;
[0036] 获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0037] 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0038] 接收到开票指令,开票指令中携带有开票信息和税局节点地址;
[0039] 根据税局节点地址将开票信息通过区块链发送税局节点;
[0040] 获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0041] 上述电子发票生成方法、装置、计算机设备和存储介质。通过将开票平台节点和税局节点接入区块链中,使税局节点通过区块链获取到开票平台的开票信息并将电子发票核通过信息和电子发票生成信息上传到区块链中,使开票平台节点从区块链中获取到开票信息、审核通过信息和电子发票生成信息生成电子发票,保证了电子发票相关信息不被篡改,降低税局节点服务器的压力,提高了电子发票的生成效率。

附图说明

[0042] 图1为一个实施例中电子发票生成方法的应用场景图;
[0043] 图2为一个实施例中电子发票生成方法的流程示意图;
[0044] 图3为一个实施例中授权加密和解密开票信息的流程示意图;
[0045] 图4为一个实施例中报销电子发票的流程示意图;
[0046] 图5为一个实施例中进行退税申请的流程示意图;
[0047] 图6为一个实施例中进行融资申请的流程示意图;
[0048] 图7为一个具体实施例中电子发票生成方法的应用场景图;
[0049] 图8为一个实施例中电子发票生成装置的结构框图;
[0050] 图9为一个实施例中计算机设备的内部结构图;
[0051] 图10为另一个实施例中计算机设备的内部结构图。

具体实施方式

[0052] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0053] 本申请提供的电子发票生成方法,可以应用于如图1所示的应用环境中。其中,开票平台节点102通过区块链网络与税局节点104进行通信。开票平台节点102接收到开票指令,开票指令中携带有开票信息和税局节点地址;开票平台节点102根据税局节点地址将开票信息通过区块链发送税局节点104;开票平台节点102获取到税局节点104通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。其中,区块链节点包括开票平台节点102和税局节点104可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,也可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0054] 在一个实施例中,如图2所示,提供了一种电子发票生成方法,以该方法应用于图1中的开票平台节点接为例进行说明,包括以下步骤:
[0055] S202,接收到开票指令,开票指令中携带有开票信息和税局节点地址。
[0056] 其中,开票平台节点是指接入区块链中的节点服务器,开票信息是指用来生成电子发票中各个字段的信息,比如开票企业名称、企业地址、企业税号、开票银行和开票银行账户等等。税局节点地址是指税局节点在区块链中的地址,用来标识该区块链中的税局节点,可以是一串字符串,该税局节点地址用于接收其他区块链节点发送的信息,该税局节点地址可以是根据区块链节点的公钥生成的,也可以是该税局节点的IP地址。
[0057] 具体地,开票平台节点接收到开票指令,开票指令中携带有开票信息和税局节点地址。
[0058] S202,根据税局节点地址将开票信息通过区块链发送税局节点。
[0059] 其中,区块链是指是运行区块链技术的载体和组织方式,区块链技术,简称BT(Blockchain technology),也称为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明。让每个人均可参与数据记录。区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
[0060] 具体地,开票平台节点根据税局节点地址将开票信息通过区块链发送税局节点,税局节点通过区块链接收到开票平台节点发送的开票信息。在一个具体的实施例中,开票平台节点生成该开票信息的时间戳,使用税局节点的在区块链中的公钥加密该开票信息,广播该加密后的开票信息和对应的时间戳到区块链中各个节点中,区块链中各个节点对该加密后的开票信息和对应的时间戳进行共识,当共识通过时,将该加密后的开票信息和对应的时间戳写入数据区块,将该数据区块加入区块链中。
[0061] S202,获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0062] 其中,审核通过信息是指税局节点对该电子发票的签名信息。电子发票生成信息是指生成电子发票所需要的属性信息,比如时间戳,防伪标识,发票格式和发票字体等等。
[0063] 具体地,开票平台节点获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0064] 在上述电子发票生成方法中,通过将开票平台节点和税局节点接入区块链中,使税局节点通过区块链获取到开票平台的开票信息并将电子发票核通过信息和电子发票生成信息上传到区块链中,使开票平台节点从区块链中获取到开票信息、审核通过信息和电子发票生成信息生成电子发票,保证了电子发票相关信息不被篡改,降低税局节点服务器的压力,提高了电子发票的生成效率。
[0065] 在一个实施例中,如题3所示,步骤S204,即开票平台节点根据税局节点地址将开票信息通过区块链发送税局节点,包括步骤:
[0066] S302,根据开票指令获取开票平台节点私钥,使用开票平台节点私钥生成开票信息中各个字段的加密密钥。
[0067] 其中,开票平台节点私钥是指区块链节点使用加密算法生成一对密钥中的私钥。其中,加密算法可以非对称加密算法包括RSA(一种非对称加密算法)和ECDSA(椭圆曲线数字签名算法)等等。
[0068] 具体地,开票平台节点根据开票指令从保存的私钥文件中获取到开票平台节点私钥。使用该开票平台节点私钥生成开票信息中各个字段的加密密钥。即开票信息中的每个字段都对应有自己的加密密钥。其中,该生成的加密密钥是使用对称加密算法生成的,该对称加密算法可以是DES(Data Encryption Standard,数据加密标准)算法、3DES(三重数据加密算法块密码)算法、Blowfish(区块加密算法)算法、RC5(参数可变的分组密码算法)算法和IDEA(国际数据加密算法)算法等等。
[0069] S304,使用各个字段的加密密钥分别对开票信息中各个字段加密,得到加密后的开票信息,根据税局节点地址将加密后的开票信息通过区块链发送税局节点。
[0070] 其中,税局节点地址是税局节点在区块链中的地址,该地址可以是根据税局节点的公钥生成的,也可以是该税局节点的IP地址。
[0071] 具体地,开票平台节点使用各个字段的加密密钥分别对开票信息中各个字段加密,得到加密后的开票信息,根据税局节点地址将加密后的开票信息通过区块链发送税局节点。
[0072] S306,获取到对税局节点的授权信息,授权信息中包括授权字段和授权字段对应的加密密钥,将授权信息发送到税局节点并根据授权字段获取到审核通过信息和电子发票生成信息。
[0073] 其中,授权信息是指用于查看加密的开票信息的信息。授权字段是指开票信息中税局节点可以查看的字段。授权字段对应的加密密钥是指每个授权字段对应的加密密钥。
[0074] 具体地,开票平台节点获取到对税局节点的授权信息,授权信息中包括授权字段和授权字段对应的加密密钥,将授权信息发送到税局节点。比如,可以将授权信息通过短信或者邮件的方式发送到税局节点。在一个具体的实施例中,开票平台节点的授权信息可以通过线下的方式使税局节点获取到授权信息,其中,线下是指真实发生的、当面的、人与人有通过肢体动态的一系列活动。
[0075] 税局节点用于接收授权信息并从区块链中获取到加密后的开票信息,使用授权信息中的加密密钥解密加密后的开票信息,得到开票信息中的授权字段并根据授权字段获取到审核通过信息和电子发票生成信息。
[0076] 其中,审核通过信息是指表示开票信息审核通过的信息,可以是标识,也可以是数字签名等等。电子发票生成信息是指生成电子发票所必不可少的元素信息,比如时间戳、发票样式和发票文字信息等等。
[0077] 具体地,税局节点接收到授权信息后,从区块链中获取到加密后的开票信息,使用授权信息中的加密密钥解密加密后的开票信息,得到开票信息中的授权字段,然后可以将这些授权字段通过界面进行显示,方便审核人员进行审核。当审核人员审核授权字段无误时,可以在界面点击审核通过按钮,则授权节点根据该点击事件获取到审核通过信息和电子发票生成信息。
[0078] 在上述实施例中,通过开票平台节点根据开票指令获取开票平台节点私钥,使用开票平台节点私钥生成开票信息中各个字段的加密密钥;开票平台节点使用各个字段的加密密钥分别对开票信息中各个字段加密,得到加密后的开票信息,根据税局节点地址将加密后的开票信息通过区块链发送税局节点;开票平台节点获取到对税局节点的授权信息,授权信息中包括授权字段和授权字段对应的加密密钥,将授权信息发送到税局节点;税局节点接收授权信息并从区块链中获取到加密后的开票信息,使用授权信息中的加密密钥解密加密后的开票信息,得到开票信息中的授权字段;税局节点根据授权字段获取到审核通过信息和电子发票生成信息。通过授权加密开票信息,可以对区块链中不同的节点进行授权,使区块链中不同的节点可以得到不同的开票信息字段,提高开票信息的安全性,区块链节点通过查看授权字段,也方便对开票信息进行对应的处理。
[0079] 在一个实施例中,如图4所示,在步骤S206之后,即在获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据审核通过信息和电子发票生成信息生成电子发票之后,还包括步骤:
[0080] S402,接收到电子发票报销指令,根据报销指令获取到报销节点地址。
[0081] 其中,报销节点地址是指区块链中报销节点的地址,用来标识该区块链中的报销节点,该报销节点用于对电子发票的报销,该报销节点可以是企业公司节点,也可以是个人节点。该报销节点地址可以是根据区块链节点的公钥生成的,也可以是该报销节点的IP地址
[0082] 具体地,开票平台节点接收到电子发票报销指令,根据报销指令获取到报销节点地址。
[0083] S404,根据电子发票报销指令获取到报销信息,根据报销节点地址将报销信息发送报销节点。
[0084] 其中,报销信息是指要报销的电子发票的信息,可以是该电子发票的审核通过信息,也可以是该电子发票标识等等。
[0085] 具体地,开票平台节点根据电子发票报销指令获取到报销信息,根据报销节点地址通过区块链将报销信息发送报销节点。
[0086] 报销节点用于接收报销信息,根据报销信息从区块链中获取报销信息对应的开票信息、审核通过信息和电子发票生成信息。
[0087] 具体地,报销节点用于接收到开票平台节点发送的报销信息,根据该报销信息从区块链中获取到报销信息对应的开票信息和电子发票生成信息。比如,根据报销信息中的审核通过信息获取到对应的审核通过信息,根据该审核通过信息获取到关联的开票信息和电子发票生成信息。
[0088] 报销节点还用于验证开票信息、审核通过信息和电子发票生成信息,当验证通过时,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0089] 具体地,报销节点还用于验证开票信息、审核通过信息和电子发票生成信息,报销节点验证开票信息、审核通过信息和电子发票生成信息。验证开票信息中各个字段是否有效,比如企业名称是否正确,企业地址是否有效和时间戳是否有效等等。验证审核通过信息是否有效,可以从税局节点获取到审核通过信息并验证是否与区块链中的审核通过信息一致。当验证通过时,根据开票信息、审核通过信息和电子发票生成信息生成电子发票,并将该电子发票通过ERP(企业内部管理所需的业务应用系统)系统或者财务管理软件中进行入账,从而进行报销处理,当报销处理完成时,报销人员通过ERP系统或者财务管理软件向报销节点发送电子发票报销完成指令。
[0090] 报销节点还用于接收电子发票报销完成指令,根据报销完成指令生成电子发票的报销标记,将报销标记、开票信息、审核通过信息和电子发票生成信息关联上传区块链中。
[0091] 其中,报销标记用于唯一标识该已报销完成电子发票,可以是字符串或ID。
[0092] 具体地,报销节点还用于接收到用户发送的电子发票报销完成指令,根据报销完成指令生成电子发票的报销标记,将报销标记、开票信息、审核通过信息和电子发票生成信息关联上传区块链中。税局节点可以通过区块链查询到该电子发票的报销标记,可以对电子发票流程过程进行监控。
[0093] 在一个实施例中,开票平台节点将授权信息发送报销节点,当报销节点获取到加密的开票信息时,使用授权信息中的加密密钥解密该加密的开票信息,得到开票信息中的授权字段,然后,验证开票信息中的授权字段、审核通过信息和电子发票生成信息,当验证通过时,根据开票信息中的授权字段、审核通过信息和电子发票生成信息生成电子发票,[0094] 在上述实施例中,通过开票平台节点接收到电子发票报销指令,根据报销指令获取到报销节点地址;开票平台节点根据电子发票报销指令获取到报销信息,根据报销节点地址将报销信息发送报销节点;报销节点接收报销信息,根据报销信息从区块链中获取报销信息对应的开票信息、审核通过信息和电子发票生成信息;报销节点验证开票信息、审核通过信息和电子发票生成信息,当验证通过时,根据开票信息、审核通过信息和电子发票生成信息生成电子发票;报销节点接收电子发票报销完成指令,根据报销完成指令生成电子发票的报销标记,将报销标记、开票信息、审核通过信息和电子发票生成信息关联上传区块链中,可以通过区块链进行电子发票的报销,并记录该报销标记,保证了电子发票的报销标记不被篡改,同时,也使得税局节点可以对电子发票的流传进行监控,提高监控的深度。
[0095] 在一个实施例中,如图5所示,在步骤S206之后,即在获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据审核通过信息和电子发票生成信息生成电子发票之后,还包括步骤:
[0096] S502,接收退税申请指令,根据退税申请指令获取到退税信息和税局节点地址。
[0097] 其中,退税信息是指用于进行企业出口退税申请的信息,包括:退税金额、退税申请人、退税税票标识和出口日期等等。
[0098] 具体地,开票平台节点接收退税申请指令,根据退税申请指令获取到退税信息和税局节点地址。其中,该开票平台节点也可以是企业节点。
[0099] S504,根据税局节点地址通过区块链向税局节点发送退税信息。
[0100] 具体地,开票平台节点根据税局节点地址通过区块链向税局节点发送退税信息。
[0101] 税局节点用于接收到退税信息,根据退税信息从区块链中获取到海关节点写入的出口信息和物流节点写入物流信息。
[0102] 其中,海关节点是指用来收集出口产品信息的区块链节点。出口信息是指出口产品出口相关的信息比如出口日期出口、产品数量、出口价格和出口目的地等等。物流节点是指用来收集出口产品物流信息的区块链节点。物流信息是指该出口产品相关的物流信息,比如,产品物流起点、出发时间、产品物流终点、抵达时间和产品数量等等。
[0103] 具体地,税局节点用于接收到退税信息,根据退税信息从区块链中获取到海关节点写入的出口信息和物流节点写入物流信息。比如,根据退税信息中的退税税票标识获取到该税票标识对应税票中产品名称,根据该产品从区块链海关节点中获取该产品名称对应的出口信息和从物流节点获取该产品名称对应的物流信息。
[0104] 税局节点还用于从区块链中获取到开票信息、审核通过信息和电子发票生成信息,验证出口信息和物流信息是否与开票信息、审核通过信息和电子发票生成信息一致。
[0105] 具体地,税局节点还用于根据该退税信息中的退税税票标识从区块链中获取到对应的开票信息、审核通过信息和电子发票生成信息。验证退税信息、出口信息和物流信息是否与开票信息、审核通过信息和电子发票生成信息一致,比如,验证电子发票中退税金额是否与出口信息和物流信息中的一致,验证电子发票中的产品数量是否与出口信息和物流信息中的一致等等,退税信息中的退税金额是否与开票信息、出口信息和物流信息是否一致,验证时间是否无误等等。
[0106] 税局节点还用于当验证通过时,生成退税验证通过信息,将退税验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。
[0107] 具体地,税局节点还用于当通过验证时,生成退税验证通过信息,将退税验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。
[0108] 在上述实施例中,通过开票平台节点接收退税申请指令,根据退税申请指令获取到退税信息和税局节点地址;开票平台节点根据税局节点地址通过区块链向税局节点发送退税信息;税局节点接收到退税信息,根据退税信息从区块链中获取到海关节点写入的出口信息和物流节点写入物流信息;税局节点从区块链中获取到开票信息、审核通过信息和电子发票生成信息,验证出口信息和物流信息是否与开票信息、审核通过信息和电子发票生成信息一致;当验证通过时,税局节点生成退税验证通过信息,将退税验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。通过根据电子发票相关信息获取不同的区块链节点的信息,从而交叉验证退税信息,保证了贸易真实性,提高退税的精确性,提高退税效率。
[0109] 在一个实施例中,税局节点还用于接收退税交易指令,退税交易指令携带退税数值和退税交易节点地址,根据退税交易指令通过区块链将退税数值转移到退税交易节点地址。
[0110] 其中,退税数值是指退税金额,用来退还纳税人的具体金额。退税交易节点地址是指退税交易节点在区块链中的地址,该退税交易节点用于进行退税金额的交易。例如,如果一个企业进行退税,该退税交易节点就可以是该企业节点。
[0111] 具体地,税局节点还用于接收退税交易指令,退税交易指令携带退税数值和退税交易节点地址,根据退税交易指令通过区块链将退税数值转移到退税交易节点地址。例如,税局节点要与企业节点进行退税交易。税局节点发出交易请求,并将该交易请求广播到区块链网络中,区块链网络中各个节点对该交易请求进行共识验证,当共识验证通过时,将该交易请求对应的交易信息包括退税金额和退税交易节点地址写入数据区块中,将该数据区块加入区块链网络中,交易完成。在该实施例中,通过区块链直接进行交易,提高了退税交易的效率。
[0112] 在一个实施例中,如图6所示,电子发票生成方法,还包括步骤:
[0113] S602,接收到融资申请指令,根据融资申请指令获取到融资申请信息和银行节点地址。
[0114] 其中,融资申请信息是用来从银行进行发票或者出口退税融资申请的信息,可以包括申请人标识、申请发票信息、出口信息和融资金额等等,银行节点地址是银行节点在区块链中的地址。银行节点是用于对融资申请审核和进行融资发放的区块链节点。
[0115] 具体地,开票平台节点接收到融资申请指令,根据融资申请指令获取到融资申请信息和银行节点地址。在一个实施例中,企业也可以通过企业节点进行融资申请。
[0116] S604,根据银行节点地址通过区块链向银行节点发送融资申请信息。
[0117] 具体地,开票平台节点根据银行节点地址通过区块链向银行节点发送融资申请信息。
[0118] 银行节点用于接收到融资申请信息,并从区块链中获取到开票信息、审核通过信息和电子发票生成信息。
[0119] 具体地,银行节点用于接收到开票平台节点发送的融资申请信息,并从区块链中获取到开票信息、审核通过信息和电子发票生成信息。
[0120] 银行节点还用于验证融资申请信息是否与开票信息、审核通过信息和电子发票生成信息一致。
[0121] 具体地,银行节点还用于验证融资申请信息是否与开票信息、审核通过信息和电子发票生成信息一致,即验证融资申请信息中的发票信息是否与开票信息一致,验证审核通过信息是否有效,验证融资金额是否有效。在一个实施例中,银行节点还可以从区块链中获取到海关节点的出口信息和物流节点的物流信息,验证发票信息是否与海关节点的出口信息和物流节点的物流信息中的发票信息一致。
[0122] 银行节点还用于当验证通过时,生成融资验证通过信息,将融资验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。
[0123] 其中,融资验证通过信息是指用于证明融资申请验证通过的信息,可以是一串字符串,也可以是ID,还可以是数字签名等等。
[0124] 具体地,银行节点还用于当银行节点验证通过时,生成融资验证通过信息,将融资验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链中。
[0125] 在上述实施例中,通过开票平台节点接收到融资申请指令,根据融资申请指令获取到融资申请信息和银行节点地址;开票平台节点根据银行节点地址通过区块链向银行节点发送融资申请信息;银行节点接收到融资申请信息,并从区块链中获取到开票信息、审核通过信息和电子发票生成信息;银行节点验证融资申请信息是否与开票信息、审核通过信息和电子发票生成信息一致;当验证通过时,生成融资验证通过信息,将融资验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。通过区块链进行融资申请,能够方便验证融资申请信息,提高了融资申请的效率。通过区块链进行监控,也使银行等金融机构降低了融资的风险。
[0126] 在一个实施例中,银行节点还用于接收融资交易指令,融资交易指令携带融资数值和融资交易节点地址,根据融资交易指令通过区块链将融资数值转移融资交易节点地址。
[0127] 其中,融资数值是指融资金额,用来表示融资的具体金额。融资交易节点地址是指融资交易节点在区块链中的地址,该融资交易节点用于进行融资金额的交易。例如,如果一个企业进行融资,该融资交易节点就可以是该企业节点
[0128] 具体地,融资节点还用于接收到用户发送的融资交易指令,融资交易指令携带融资数金额和退融资交易节点地址,根据融资交易指令通过区块链将融资数值转移到融资交易节点地址。例如,银行节点要与企业节点进行融资交易。银行节点发出交易请求,并将该交易请求广播到区块链网络中,区块链网络中各个节点对该交易请求进行共识验证,当共识验证通过时,将该交易请求对应的交易信息包括融资金额和融资交易节点地址写入数据区块中,将该数据区块加入区块链网络中,交易完成。在该实施例中,通过区块链直接进行交易,提高了融资交易的效率。
[0129] 应该理解的是,虽然图2‑6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2‑6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0130] 在一个具体的实施例中,如图7所示,一个电子发票生成方法的具体应用场景图,一个区块链网络中包括:税局节点702,开票平台节点704,企业节点706,海关节点708,物流节点710,银行节点712和报销节点714。其中,开票平台节点704通过获取到开票信息和税局节点地址,将开票信息通过区块链网络发送到税局节点702,税局节点702根据该开票信息获取到审核通过信息和电子发票生成信息,将该审核通过信息和电子发票生成信息上传到区块链网络中,则各个节点都可以从区块链网络中下载开票信息、审核通过信息和电子发票生成信息生成电子发票,从而进行电子发票的应用。企业节点706可以从区块链网络中获取到电子发票,并向报销节点714进行报销,报销节点714报销完成后,生成该电子发票的报销标记上传区块链网络中。企业节点706还可以使用该电子发票进行进出口退税,向税局节点702发送退税信息,税局节点702接收到退税信息,从海关节点708和物流节点710获取到相关退税信息进行交叉验证,验证通过后,生成退税验证通过信息写入区块链中。企业节点706还可以使用该电子发票进行融资申请,向银行节点712发送电子发票融资申请,银行节点接收到融资申请信息,从其他区块链节点获取到相关电子发票信息进行交叉验证,验证通过时,生成融资审核通过信息写入区块链中。而税局节点702可以通过区块链网络对开立以后的电子发票流转过程进行监控,比如报销流程、融资申请流程和退税流程等等。通过在区块链中接入不同的节点,形成区块链电子发票生态网络,提高各个节点处理电子发票相关事务的效率,并且保证了相关电子发票信息不被篡改。
[0131] 在一个实施例中,如图8所示,提供了一种电子发票生成装置800,包括:指令接收模块802、信息发送模块804和发票生成模块806,其中:
[0132] 指令接收模块802,用于开票平台节点接收到开票指令,开票指令中携带有开票信息和税局节点地址;
[0133] 信息发送模块804,用于开票平台节点根据税局节点地址将开票信息通过区块链发送税局节点;
[0134] 发票生成模块806,用于开票平台节点获取到税局节点通过区块链发送的审核通过信息和电子发票生成信息,根据开票信息、审核通过信息和电子发票生成信息生成电子发票。
[0135] 在一个实施例中,信息发送模块804,包括:
[0136] 密钥生成模块,用于开票平台节点根据开票指令获取开票平台节点私钥,使用开票平台节点私钥生成开票信息中各个字段的加密密钥;
[0137] 加密模块,用于开票平台节点使用各个字段的加密密钥分别对开票信息中各个字段加密,得到加密后的开票信息,根据税局节点地址将加密后的开票信息通过区块链发送税局节点;
[0138] 授权模块,用于开票平台节点获取到对税局节点的授权信息,授权信息中包括授权字段和授权字段对应的加密密钥,将授权信息发送到税局节点;
[0139] 解密模块,用于税局节点接收授权信息并从区块链中获取到加密后的开票信息,使用授权信息中的加密密钥解密加密后的开票信息,得到开票信息中的授权字段;
[0140] 信息获取模块,用于税局节点根据授权字段获取到审核通过信息和电子发票生成信息。
[0141] 在一个实施例中,电子发票生成装置800,还包括:
[0142] 报销指令接收模块,用于开票平台节点接收到电子发票报销指令,根据报销指令获取到报销节点地址;
[0143] 报销信息发送模块,用于开票平台节点根据电子发票报销指令获取到报销信息,根据报销节点地址将报销信息发送报销节点;
[0144] 发票信息获取模块,用于报销节点接收报销信息,根据报销信息从区块链中获取报销信息对应的开票信息、审核通过信息和电子发票生成信息;
[0145] 报销验证模块,用于报销节点验证开票信息、审核通过信息和电子发票生成信息,当验证通过时,根据开票信息、审核通过信息和电子发票生成信息生成电子发票;
[0146] 报销标记生成模块,用于报销节点接收电子发票报销完成指令,根据报销完成指令生成电子发票的报销标记,将报销标记、开票信息、审核通过信息和电子发票生成信息关联上传区块链中。
[0147] 在一个实施例中,电子发票生成装置800,还包括:
[0148] 退税指令接收模块,用于开票平台节点接收退税申请指令,根据退税申请指令获取到退税信息和税局节点地址;
[0149] 退税信息发送模块,用于开票平台节点根据税局节点地址通过区块链向税局节点发送退税信息;
[0150] 验证信息获取模块,用于税局节点接收到退税信息,根据退税信息从区块链中获取到海关节点写入的出口信息和物流节点写入物流信息;
[0151] 验证模块,用于税局节点从区块链中获取到开票信息、审核通过信息和电子发票生成信息,验证出口信息和物流信息是否与开票信息、审核通过信息和电子发票生成信息一致;
[0152] 退税验证通过模块,用于当验证通过时,生成退税验证通过信息,将退税验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。
[0153] 在一个实施例中,电子发票生成装置800,还包括:
[0154] 退税交易模块,用于税局节点接收退税交易指令,退税交易指令携带退税数值和退税交易节点地址,根据退税交易指令通过区块链将退税数值转移到退税交易节点地址。
[0155] 在一个实施例中,电子发票生成装置800,还包括:
[0156] 融资指令接收模块,用于开票平台节点接收到融资申请指令,根据融资申请指令获取到融资申请信息和银行节点地址;
[0157] 融资申请信息发送模块,用于开票平台节点根据银行节点地址通过区块链向银行节点发送融资申请信息;
[0158] 发票信息获取模块,用于银行节点接收到融资申请信息,并从区块链中获取到开票信息、审核通过信息和电子发票生成信息;
[0159] 验证模块,用于银行节点验证融资申请信息是否与开票信息、审核通过信息和电子发票生成信息一致;
[0160] 融资验证通过模块,用于当验证通过时,生成融资验证通过信息,将融资验证通过信息、开票信息、审核通过信息和电子发票关联写入区块链。
[0161] 在一个实施例中,电子发票生成装置800,还包括:
[0162] 融资交易模块,用于银行节点接收融资交易指令,融资交易指令携带融资数值和融资交易节点地址,根据融资交易指令通过区块链将融资数值转移融资交易节点地址。
[0163] 关于电子发票生成装置的具体限定可以参见上文中对于电子发票生成方法的限定,在此不再赘述。上述电子发票生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0164] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储电子发票数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种电子发票生成方法。
[0165] 本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0166] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述任意实施例中电子发票生成方法所述的步骤。
[0167] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意实施例中电子发票生成方法所述的步骤。
[0168] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0169] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0170] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。