CN104820941B - 一种电子发票的封装方法及其系统 - Google Patents
一种电子发票的封装方法及其系统 Download PDFInfo
- Publication number
- CN104820941B CN104820941B CN201510165161.0A CN201510165161A CN104820941B CN 104820941 B CN104820941 B CN 104820941B CN 201510165161 A CN201510165161 A CN 201510165161A CN 104820941 B CN104820941 B CN 104820941B
- Authority
- CN
- China
- Prior art keywords
- data
- message
- electronic invoice
- logistics
- payment
- 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.)
- Active
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明涉及电子发票技术领域,具体涉及一种电子发票的封装方法与系统,本发明包括:接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文;从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;生成两种以上不同格式的电子发票数据段,每个电子发票数据段中均包含有该电子发票元数据;将所有不同格式的电子发票数据段封装于一个电子发票文件中。本发明满足不同用户的电子发票票据需求,从而满足电子发票文件在不同场合下的使用,利于电子发票的推广应用。
Description
技术领域
本发明涉及电子发票技术领域,具体涉及一种电子发票的封装方法及其系统。
背景技术
电子发票在国家税务总局2013年《网络发票管理办法》中明确,其发行和实施的意义不言而喻。税务总局在电子发票上首选电商作为试点,获得电商企业在电子发票试用上积极响应。电子发票大幅节省企业在发票上的成本,节约印制成本和管理成本。电子发票使用上更加方便,为消费者提供更加方便的服务。同时减少纸质发票的资源浪费,符合社会未来发展方向。
而在现有的电子发票中,由于其数据的格式尚未统一,在不同的应用场合下需要用到不同格式的数据,而现有的电子发票系统均生成只包含一种数据格式的电子发票,其使得所生成的电子发票并不通用于各种应用场合,其阻碍了电子发票的推广应用。
发明内容
为克服上述缺陷,本发明的目的即在于提供一种电子发票凭证的导入系统及其方法。
本发明的目的是通过以下技术方案来实现的:
本发明一种电子发票的封装方法,包括:
接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文;
从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;
对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;
生成两种以上不同格式的电子发票数据段,每个电子发票数据段中均包含有该电子发票元数据;
将所有不同格式的电子发票数据段封装于一个电子发票文件中。
进一步,所述生成两种以上不同格式的电子发票数据段包括:
生成三种不同格式的电子发票数据段,该电子发票数据段的格式分别为:XML元数据格式、二进制数据格式和图片数据格式。
进一步,所述电子发票文件中包括:文件头、XML元数据格式的电子发票数据段、二进制数据格式的电子发票数据段和图片数据格式的电子发票数据段。
进一步,所述接收电商网站的签名的订单报文,接收支付企业的签名的支付报文,接收物流企业的签名的物流报文之后包括:
对订单报文、支付报文、物流报文中的签名分别进行验签确认,当所有的验签均通过时,从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据。
进一步,所述对订单数据、支付数据、物流数据进行组装之前包括:
获取电子发票符码,然后结合订单数据,对订单数据和发票符码签名。
进一步,所述订单报文包含:订单号、订单金额;支付报文包含:电商ID号、订单号、订单金额;物流报文包含:电商ID号、订单号、配送规格。
本发明一种电子发票的封装系统,其分别与电商系统、物流系统和支付系统连接,包括:
报文接收模块,所述报文接收模块分别与电商系统、物流系统和支付系统连接,用于接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文;
数据提取模块,所述数据提取模块与所述报文接收模块连接,用于从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;
元数据生成模块,所述元数据生成模块与所述数据提取模块连接,用于对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;
数据段生成模块,所述数据段生成模块与所述元数据生成模块连接,用于生成两种以上不同格式的电子发票数据段,并且每个电子发票数据段中均包含有该电子发票元数据;
文件封装模块,所述文件封装模块与所述数据段生成模块连接,用于将所有不同格式的电子发票数据段封装于一个电子发票文件中。
进一步,本发明还包括:
报文验签模块,所述报文验签模块设置于报文接收模块与数据提取模块之间,用于对订单报文、支付报文、物流报文中的签名分别进行验签确认,当所有的验签均通过时,驱动数据提取模块;
符码获取模块,所述符码获取模块与所述元数据生成模块连接,用于获取电子发票符码,然后结合订单数据,对订单数据和发票符码签名,在订单数据和发票符码签名完成后驱动所述元数据生成模块。
本发明将生成以两种以上不同格式的电子发票数据,并将该不同格式的电子发票数据封装在一个电子发票文件中,使得在一个电子发票文件中包含两种以上的不同格式的电子发票数据,满足不同用户的电子发票票据需求,从而满足电子发票文件在不同场合下的使用,利于电子发票的推广应用。
附图说明
为了易于说明,本发明由下述的较佳实施例及附图作详细描述。
图1为本发明的一种电子发票的封装方法一个实施例的流程图;
图2为本发明的一种电子发票的封装方法另一个实施例的流程图;
图3为本发明的一种电子发票的封装系统的逻辑原理图;
图4为本发明中的电子发票文件组成的逻辑结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,本发明为一种电子发票的封装方法,具体包括:
101.接收报文
电商网站、支付企业、物流企业主动发起数据提交,实现电子发票的数据采集。其接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文;
其中,订单报文主要包含订单号、订单金额;支付报文主要包含电商ID号、订单号、订单金额;物流报文主要包含电商ID号、订单号、配送规格。电商网站、支付企业和物流企业完成相关业务后,使用其私钥签名并提交数据到本系统。
102.提取数据
从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;按照电商交易分析,提取关键字段,提取电商ID号和订单号,电商ID号和订单号可确定唯一的交易号。其他的字段信息按照税局要求提交,根据各自在电商交易中承担的角色收集。同时,本系统提取支付数据和物流数据,为电子发票数据形成做准备。
103.形成电子发票元数据
对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;其具体为根据电商ID号、订单号和发票符码,组装已接收到的电商订单数据、支付数据、物流数据,形成电子发票元数据。
104.生成多个电子发票数据段
生成两种以上不同格式的电子发票数据段,每个电子发票数据段中均包含有该电子发票元数据;
105. 封装为一个电子发票文件
将所有不同格式的电子发票数据段封装于一个电子发票文件中,其使得在一个电子发票文件中包含有多种不同格式的电子发票数据段。
请参阅图2,本发明为一种电子发票的封装方法,具体包括:
201.接收报文
电商网站、支付企业、物流企业主动发起数据提交,实现电子发票的数据采集。其接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文;
其中,订单报文主要包含订单号、订单金额;支付报文主要包含电商ID号、订单号、订单金额;物流报文主要包含电商ID号、订单号、配送规格。电商网站、支付企业和物流企业完成相关业务后,使用其私钥签名并提交数据到本系统。
202.对报文的签名进行验签
对订单报文、支付报文、物流报文中的签名分别进行验签确认,确认提交的数据是由电商网站、支付企业和物流企业的私钥签名,确保提交数据的用户身份,当所有的验签均通过时,才开始提取数据。
203.提取数据
从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;按照电商交易分析,提取关键字段,提取电商ID号和订单号,电商ID号和订单号可确定唯一的交易号。其他的字段信息按照税局要求提交,根据各自在电商交易中承担的角色收集。同时,本系统提取支付数据和物流数据,为电子发票数据形成做准备。
204.对订单数据和发票符码签名
获取电子发票符码,然后结合订单数据,对订单数据和发票符码签名。
205.形成电子发票元数据
对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;其具体为根据电商ID号、订单号和发票符码,组装已接收到的电商订单数据、支付数据、物流数据,形成电子发票元数据。
206.生成多个电子发票数据段
分别生成XML元数据格式、二进制数据格式和图片数据格式的电子发票数据段,每个电子发票数据段中均包含有该电子发票元数据;
207. 封装为一个电子发票文件
将所有不同格式的电子发票数据段封装于一个电子发票文件中,其使得在一个电子发票文件中包含有多种不同格式的电子发票数据段。
电子发票文件中包含三个部分数据的数据段,分别为电子发票的XML元数据、二进制数据和图片数据,这个电子发票文件可以使用在不同的场景下,例如,可以用记事本或文本编辑器打开文件,并读取XML元数据,用于财务记账和数据交换;可以将二进制数据用于文件传输;可以将图片数据直接用图片编辑器直接打开。
其中,所述电子发票文件中包括:文件头、XML元数据格式的电子发票数据段、二进制数据格式的电子发票数据段和图片数据格式的电子发票数据段。
文件头包括4字节的文件类型和8字节的文件总长度,剩下的20字节预留给未来扩充定义使用。其中4字节长度的文件类型包括2字节文件格式名称缩写,1字节版本号,1字节编码号(例如GBK、GB2312、UTF-8、UTF-16等);8字节的文件长度以字节为单位,表示文件的总长度,文件总长度支持(264-1)字节。
XML元数据格式的电子发票的数据段包括4字节的数据类型和8字节的数据段总长度,4字节的数据类型用XML表示该数据段为XML数据,8字节的数据段总长度以字节为单位,数据段总长度支持(264-1)字节。XML元数据段剩余的部分为XML数据。
二进制数据格式的电子发票的数据段包括4字节的数据类型和8字节的数据段总长度,4字节的数据类型用Binary表示该数据段为二进制数据,8字节的数据段总长度以字节为单位,数据段总长度支持(264-1)字节。二进制数据段剩余的部分为二进制数据。
图片数据格式的电子发票的数据段包括4字节的数据类型和8字节的数据段总长度,4字节的数据类型用Photo表示该数据段为二进制数据,8字节的数据段总长度以字节为单位,数据段总长度支持(264-1)字节。图片数据段剩余的部分为图片数据。
请参阅图3,本发明一种电子发票的封装系统,其分别与电商系统、物流系统和支付系统连接,包括:
报文接收模块301,所述报文接收模块301分别与电商系统、物流系统和支付系统连接,用于接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文;
数据提取模块302,所述数据提取模块302与所述报文接收模块301连接,用于从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;
元数据生成模块303,所述元数据生成模块303与所述数据提取模块302连接,用于对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;
数据段生成模块304,所述数据段生成模块304与所述元数据生成模块303连接,用于生成两种以上不同格式的电子发票数据段,并且每个电子发票数据段中均包含有该电子发票元数据;
文件封装模块305,所述文件封装模块305与所述数据段生成模块304连接,用于将所有不同格式的电子发票数据段封装于一个电子发票文件中。
进一步,本发明还包括:
报文验签模块306,所述报文验签模块306设置于报文接收模块301与数据提取模块302之间,用于对订单报文、支付报文、物流报文中的签名分别进行验签确认,当所有的验签均通过时,驱动数据提取模块302;
符码获取模块307,所述符码获取模块307与所述元数据生成模块303连接,用于获取电子发票符码,然后结合订单数据,对订单数据和发票符码签名,在订单数据和发票符码签名完成后驱动所述元数据生成模块303。
本发明提供一种电子发票的封装系统,单张电子发票包括可验签的订单数据、支付数据和物流数据,安全的签名由电子商务网站、支付企业和物流企业提供私钥签名,确保数据完整性,最终呈现出的一体化电子发票为税务稽查提供便利。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种电子发票的封装方法,其特征在于,包括:
接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文,其中,订单报文、支付报文以及物流报文是在电商网站、支付企业和物流企业完成相关业务后,使用其私钥签名进行提交;
从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;
对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;
生成两种以上不同格式的电子发票数据段,每个电子发票数据段中均包含有该电子发票元数据;
将所有不同格式的电子发票数据段封装于一个电子发票文件中。
2.根据权利要求1所述的电子发票的封装方法,其特征在于,所述生成两种以上不同格式的电子发票数据段包括:
生成三种不同格式的电子发票数据段,该电子发票数据段的格式分别为:XML元数据格式、二进制数据格式和图片数据格式。
3.根据权利要求2所述的电子发票的封装方法,其特征在于,所述电子发票文件中包括:文件头、XML元数据格式的电子发票数据段、二进制数据格式的电子发票数据段和图片数据格式的电子发票数据段。
4.根据权利要求3所述的电子发票的封装方法,其特征在于,所述接收电商网站的签名的订单报文,接收支付企业的签名的支付报文,接收物流企业的签名的物流报文之后包括:
对订单报文、支付报文、物流报文中的签名分别进行验签确认,当所有的验签均通过时,从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据。
5.根据权利要求4所述的电子发票的封装方法,其特征在于,所述对订单数据、支付数据、物流数据进行组装之前包括:
获取电子发票符码,然后结合订单数据,对订单数据和发票符码签名。
6.根据权利要求5所述的电子发票的封装方法,其特征在于,所述订单报文包含:订单号、订单金额;支付报文包含:电商ID号、订单号、订单金额;物流报文包含:电商ID号、订单号、配送规格。
7.一种电子发票的封装系统,其特征在于,其分别与电商系统、物流系统和支付系统连接,包括:
报文接收模块,所述报文接收模块分别与电商系统、物流系统和支付系统连接,用于接收电商系统的签名的订单报文,接收支付系统的签名的支付报文,接收物流系统的签名的物流报文,其中,订单报文、支付报文以及物流报文是在电商网站、支付企业和物流企业完成相关业务后,使用其私钥签名进行提交;
数据提取模块,所述数据提取模块与所述报文接收模块连接,用于从接收到的订单报文、支付报文、物流报文中,提取出相应的订单数据、支付数据、物流数据;
元数据生成模块,所述元数据生成模块与所述数据提取模块连接,用于对订单数据、支付数据、物流数据进行组装,形成电子发票元数据;
数据段生成模块,所述数据段生成模块与所述元数据生成模块连接,用于生成两种以上不同格式的电子发票数据段,并且每个电子发票数据段中均包含有该电子发票元数据;
文件封装模块,所述文件封装模块与所述数据段生成模块连接,用于将所有不同格式的电子发票数据段封装于一个电子发票文件中。
8.根据权利要求7所述的电子发票的封装系统,其特征在于,还包括:
报文验签模块,所述报文验签模块设置于报文接收模块与数据提取模块之间,用于对订单报文、支付报文、物流报文中的签名分别进行验签确认,当所有的验签均通过时,驱动数据提取模块;
符码获取模块,所述符码获取模块与所述元数据生成模块连接,用于获取电子发票符码,然后结合订单数据,对订单数据和发票符码签名,在订单数据和发票符码签名完成后驱动所述元数据生成模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510165161.0A CN104820941B (zh) | 2015-04-09 | 2015-04-09 | 一种电子发票的封装方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510165161.0A CN104820941B (zh) | 2015-04-09 | 2015-04-09 | 一种电子发票的封装方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104820941A CN104820941A (zh) | 2015-08-05 |
CN104820941B true CN104820941B (zh) | 2019-04-05 |
Family
ID=53731226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510165161.0A Active CN104820941B (zh) | 2015-04-09 | 2015-04-09 | 一种电子发票的封装方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104820941B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562552A (zh) * | 2017-09-06 | 2018-01-09 | 深圳市中润四方信息技术有限公司 | 一种业务消息生成方法及系统 |
CN109948369A (zh) * | 2018-12-29 | 2019-06-28 | 航天信息股份有限公司 | 一种利用票据的可打印数据生成电子化版式文件的方法及系统 |
CN113627998A (zh) * | 2021-08-17 | 2021-11-09 | 北京沃东天骏信息技术有限公司 | 订单数据处理方法、装置、电子设备和计算机可读介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101533501A (zh) * | 2009-03-26 | 2009-09-16 | 上海爱姆意机电设备连锁有限公司 | 在线交易系统及方法 |
CN101699506A (zh) * | 2008-11-03 | 2010-04-28 | 田小平 | 电子发票及其生成装置、税务征管系统及其方法 |
CN102663631A (zh) * | 2012-03-22 | 2012-09-12 | 瑞达信息安全产业股份有限公司 | 一种用于移动支付的电子票据生成方法 |
CN102855587A (zh) * | 2012-08-20 | 2013-01-02 | 清华大学 | 用于电子商务网站的电子发票生成系统 |
CN103106607A (zh) * | 2012-08-22 | 2013-05-15 | 杨磊 | 金融凭证处理系统及其方法 |
CN104392184A (zh) * | 2014-11-13 | 2015-03-04 | 北京海泰方圆科技有限公司 | 一种多级电子文件凭证生成和校验的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5738938B2 (ja) * | 2012-12-11 | 2015-06-24 | 東芝テック株式会社 | 販売データ処理装置、プログラムおよび電子レシートシステム |
-
2015
- 2015-04-09 CN CN201510165161.0A patent/CN104820941B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101699506A (zh) * | 2008-11-03 | 2010-04-28 | 田小平 | 电子发票及其生成装置、税务征管系统及其方法 |
CN101533501A (zh) * | 2009-03-26 | 2009-09-16 | 上海爱姆意机电设备连锁有限公司 | 在线交易系统及方法 |
CN102663631A (zh) * | 2012-03-22 | 2012-09-12 | 瑞达信息安全产业股份有限公司 | 一种用于移动支付的电子票据生成方法 |
CN102855587A (zh) * | 2012-08-20 | 2013-01-02 | 清华大学 | 用于电子商务网站的电子发票生成系统 |
CN103106607A (zh) * | 2012-08-22 | 2013-05-15 | 杨磊 | 金融凭证处理系统及其方法 |
CN104392184A (zh) * | 2014-11-13 | 2015-03-04 | 北京海泰方圆科技有限公司 | 一种多级电子文件凭证生成和校验的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104820941A (zh) | 2015-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110765102B (zh) | 业务数据的处理方法、装置、计算机设备和存储介质 | |
WO2017133330A1 (zh) | 信息处理方法、服务器及第一终端、计算机存储介质 | |
CN106530021A (zh) | 一种电子发票开票系统装置 | |
US20040030658A1 (en) | Electronic ticket, system for issuing electronic tickets, and devices for using and performing operations on electronic tickets | |
CN106504040A (zh) | 一种电子发票开票方法 | |
CN102043626A (zh) | extjs组件的封装方法及装置、用户界面的生成方法及系统 | |
CN104820941B (zh) | 一种电子发票的封装方法及其系统 | |
WO2009061162A2 (en) | Payment system and method using message transmission | |
WO2008094885A1 (en) | Merchant service portal applications interface systems and methods | |
CN109003058A (zh) | 电子支付凭证生成的方法、装置、系统、设备和存储介质 | |
CN109194771A (zh) | 一种新卡申办方法、装置、服务器及存储介质 | |
CN107292682A (zh) | 一种快速开具发票的方法和系统 | |
FI20010713A0 (fi) | Menetelmä laskutustiedon muodostamiseksi tietoverkkojärjestelmässä ja tietoverkkojärjestelmä | |
JP2011048849A (ja) | 手続システム | |
CN111612508A (zh) | 金融资源分配请求处理方法、装置及电子设备 | |
CN115329396A (zh) | 交易合同线上签署方法、系统、电子设备及可读存储介质 | |
CN105023160A (zh) | 一种基于二维码的电子门票销售系统 | |
CN111368522B (zh) | 信息生成方法及装置、计算机设备及计算机可读存储介质 | |
Kawatsura | Secure Electronic Transaction (SET) Supplement for the v1. 0 Internet Open Trading Protocol (IOTP) | |
CN109472592B (zh) | 一种管理虚拟资产的方法和装置 | |
JP4695299B2 (ja) | 手続システム | |
CN102025738B (zh) | 一种交易报文的处理方法、设备和系统 | |
EP2070027A1 (fr) | Procede d'edition personnalisee de courriers interactifs | |
CN206039619U (zh) | 一种支付开放系统 | |
CN110599272A (zh) | 一种开具电子发票的方法和相关产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |