增值税发票数据的处理方法、装置及计算机可读存储介质与流程

文档序号:17777380发布日期:2019-05-28 20:24阅读:330来源:国知局
增值税发票数据的处理方法、装置及计算机可读存储介质与流程

本公开涉及数据处理领域,具体地,涉及一种增值税发票数据的处理方法、装置、计算机可读存储介质和电子设备。



背景技术:

在国家全面实施“营改增”环境下,一方面实现了增值税对货物和服务的全覆盖,基本消除了重复征税,打通了增值税抵扣链条,促进了社会分工协作,有力地支持了服务业发展和制造业转型升级;另一方面将不动产纳入抵扣范围,比较完整地实现了规范的消费型增值税制度,有利于扩大企业投资,增强企业经营活力。有利于完善和延伸二三产业增值税抵扣链条,促进二三产业融合发展。此外,“营改增”有利于增加就业岗位,有利于建立货物和劳务领域的增值税出口退税制度,全面改善我国的出口税收环境。

全面实施“营改增”,是深化财税体制改革、推进经济结构调整和产业转型的重头戏。“营改增”不只是简单的税制转换,它有利于消除重复征税,减轻企业负担,促进工业转型、服务业发展和商业模式创新,是一项“牵一发而动全身”的改革。

在大环境的推进下,企业在实行此国家政策时,企业自己的业务系统如果想接入发票相关功能,或者查看企业的税务发票数据,达到企业系统与增值税发票系统数据共享,就需要对自己的系统进行开发。在这种情况下,需要开发能够与金税设备及一系列组件通信的功能。然而,当企业系统的开发语言与金税设备及其各组件的开发语言不一致,调用方法比较繁琐困难。



技术实现要素:

本公开的目的是提供一种设备,该设备能够解决相关技术中由于开发语言不一致导致的企业系统对增值税发票系统的调用繁琐困难的问题,降低了企业系统的开发成本。

为了实现上述目的,本公开提供一种增值税发票数据的处理方法,包括:检测金税设备;在检测到所述金税设备的情况下,连接所述金税设备;将发票数据封装成json格式,并通过http协议在所述金税设备的增值税发票系统和企业系统之间交互所述发票数据。

可选地,连接所述金税设备包括:读取所述金税设备的设备信息;判断所述设备信息中的设备标识与在当前计算机系统的注册表中已注册的设备标识是否一致;在判断结果为不一致的情况下,将所述注册表中已注册的设备标识修改为所述金税设备的设备标识;自动安装所述金税设备的组件并注册组件信息;启动所述增值税发票系统。

可选地,在连接所述金税设备之后,所述方法还包括:调用外部组件进行注册文件校验。

可选地,将发票数据封装成json格式包括:将所述发票数据封装成json格式的json明文;采用字符串加密方法加密所述json明文;将加密后的所述json明文封装成http报文。

可选地,采用字符串加密方法加密所述json明文包括:采用base64加密所述json明文;将加密得到的字符串中的加号替换成短下划线。

可选地,通过http协议在所述金税设备的增值税发票系统和企业系统之间交互所述发票数据包括:将json格式的第一http报文通过http协议发送;其中,所述第一http报文中携带有来自所述企业系统的发票数据,该发票数据包括以下至少之一:发票开具数据、发票作废数据、发票查询数据、发票打印数据;解密所述第一http报文得到所述json明文;解码所述json明文得到来自所述企业系统的发票数据;将来自所述企业系统的发票数据发送给所述增值税发票系统。

可选地,在将来自所述企业系统的发票数据发送给所述增值税发票系统之后,所述方法还包括:所述增值税发票系统根据来自所述企业系统的发票数据,执行相应的开票流程。

可选地,通过http协议在所述金税设备的增值税发票系统和企业系统之间交互所述发票数据包括:将json格式的第二http报文通过http协议发送;其中,所述第二http报文中携带有来自所述增值税发票系统的发票数据,该发票数据包括以下至少之一:发票开具结果数据、发票作废结果数据、发票查询结果数据、发票打印结果数据;解密所述第二http报文得到所述json明文;解码所述json明文得到来自所述增值税发票系统的发票数据;将来自所述增值税发票系统的发票数据发送给所述企业系统。

为了实现上述目的,本公开提供一种增值税发票数据的处理装置,包括:检测模块,用于检测金税设备;连接模块,用于在检测到所述金税设备的情况下,连接所述金税设备;交互模块,用于将发票数据封装成json格式,并通过http协议在所述金税设备的增值税发票系统和企业系统之间交互所述发票数据。

为了实现上述目的,本公开提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述增值税发票数据的处理方法的步骤。

为了实现上述目的,本公开一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现上述增值税发票数据的处理方法的步骤。

通过上述技术方案,采用检测金税设备;在检测到金税设备的情况下,连接金税设备;将发票数据封装成json格式,并通过http协议在金税设备的增值税发票系统和企业系统之间交互发票数据的方式,实现了企业系统和增值税发票系统之间各种类型数据的通信;无论企业系统和增值税发票系统采用了何种开发语言,通过上述方式实现了对企业系统和增值税发票系统的接口适配,解决了相关技术中由于开发语言不一致导致的企业系统对增值税发票系统的调用繁琐困难的问题,降低了企业系统的开发成本。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据本发明实施例的一种增值税发票数据的处理方法的流程图;

图2是根据本发明实施例的一种增值税发票数据的处理装置的结构框图;

图3是根据本发明实施例的一种电子设备的结构框图;

图4是根据本发明实施例的另一种电子设备的结构框图;

图5是根据本发明优选实施例的金税设备切换流程图;

图6是根据本发明优选实施例的企业系统、中间件与金税设备及组件的系统协作流程图;

图7是根据本发明优选实施例的增值税发票系统开票服务的业务流程图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

在本实施例中,公开了一种增值税发票数据的处理方法,图1是根据本发明实施例的一种增值税发票数据的处理方法的流程图,如图1所示,该流程包括如下步骤:

步骤s101,检测金税设备;

步骤s102,在检测到金税设备的情况下,连接金税设备;

步骤s103,将发票数据封装成json格式,并通过http协议在金税设备的增值税发票系统和企业系统之间交互发票数据。

通过上述步骤,采用json格式封装发票数据,由于json格式可以将各种类型的数据封装成字符串格式,再利用http协议实现json格式报文的传输,就能够实现在企业系统和增值税发票系统之间各种类型数据的通信;无论企业系统和增值税发票系统采用了何种开发语言,通过上述方式实现了对企业系统和增值税发票系统的接口适配,解决了相关技术中由于开发语言不一致导致的企业系统对增值税发票系统的调用繁琐困难的问题,降低了企业系统的开发成本。

在相关技术中,一个计算机系统只能使用一个金税设备,一旦金税设备与计算机系统完成注册连接,则会将金税设备的设备标识作为键值写入计算机系统的注册表的相应的键中,例如目前的金税设备会在键“software\\microsoft\\windows\\currentversion\\apppaths\\fwkp.exe\\”的code的键值中写入设备标识。在这个计算机系统下更换其他的金税设备,则会导致其他金税设备的设备标识与该code的键值不一致而使得金税设备中安装的增值税发票系统无法正常工作。

为了解决上述问题,在本实施例中连接金税设备时,读取金税设备的设备信息;判断设备信息中的设备标识与在当前计算机系统的注册表中已注册的设备标识是否一致;在判断结果为不一致的情况下,将注册表中已注册的设备标识修改为金税设备的设备标识;自动安装金税设备的组件并注册组件信息;启动增值税发票系统。

可选地,在金税设备与计算机系统连接之后,还可以通过调用外部组件,例如xihaa.dll,进行软件的注册文件校验,包含时间、税号、开票点、文件类型等校验,达到文件匹配避免调用数据不一致问题。

在本实施例中,将发票数据封装成json格式的目的是通过金税设备、组件等底层的协议与调用方法,封装出一套完整的可供其他系统调用的http协议接口,使之能够从企业系统到中间件简单操作后即可完发票相关功能的需求。

在将发票数据封装成json格式时,可以采用下列方式:将发票数据封装成json格式的json明文;采用字符串加密方法加密json明文;将加密后的json明文封装成http报文。采用字符串加密方法加密json明文的作用是避免json明文中的各个字节不能转换成可显示字符的数值,例如空格、制表符等字符都不能被显示,也难以进行url传输;通过字符串加密方法能够将json明文都转换成可显示字符,解决上述问题。

对json明文进行加密的字符串加密方式有多种。可选地,在本实施例中,加密json明文时,选用base64加密json明文,并将加密得到的字符串中的加号“+”替换成短下划线“_”,其中,加密采用的字符串可以选用gb2312。将加号替换成短下划线是避免因为“+”造成报文进行url传输时异常。

通过上述实施例,可以实现企业系统和增值税发票系统之间的任意格式数据的双向可靠传输。

可选地,通过http协议在金税设备的增值税发票系统和企业系统之间交互发票数据包括:将json格式的第一http报文通过http协议发送;其中,第一http报文中携带有来自企业系统的发票数据,该发票数据包括以下至少之一:发票开具数据、发票作废数据、发票查询数据、发票打印数据;解密第一http报文得到json明文;解码json明文得到来自企业系统的发票数据;将来自企业系统的发票数据发送给增值税发票系统。采用上述方式,实现了将企业系统的发票数据发送给增值税发票系统。

更具体地,将来自企业系统的发票数据发送给增值税发票系统时,可以根据发票数据识别请求的业务sid,根据不同业务,再调用金税设备及组件,进行信息的进一步处理。

因报文体为json格式,故返回信息也会封装成json体(至少包含{"retcode":"1","retmsg":"xxxx"},如返回异常信息则可封装为{"retcode":"-1","retmsg":"xxxx"});返回报文可以统一封装成{"encmsg":"密码串"}。

可选地,在将来自企业系统的发票数据发送给增值税发票系统之后,增值税发票系统根据来自企业系统的发票数据,执行相应的开票流程。

相关技术中进行开票等操作时,发票数据需要手工录入到增值税发票系统中,既繁琐费时,又容易出错;相比较而言,采用上述方式之后,增值税发票系统接收到的发票数据与企业系统保持一致,能够真正的做到提高员工的工作效率,避免人工写入开票信息过程中可能出现的错误,为企业增值税开票提供了便利。

可选地,通过http协议在金税设备的增值税发票系统和企业系统之间交互发票数据包括:将json格式的第二http报文通过http协议发送;其中,第二http报文中携带有来自增值税发票系统的发票数据,该发票数据包括以下至少之一:发票开具结果数据、发票作废结果数据、发票查询结果数据、发票打印结果数据;解密第二http报文得到json明文;解码json明文得到来自增值税发票系统的发票数据;将来自增值税发票系统的发票数据发送给企业系统。采用上述方式,实现了将增值税发票系统的发票数据发送给企业系统。

上述的来自增值税发票系统的发票数据包括增值税发票系统响应企业系统的发票信息的响应数据。这些相应数据表现为:发票开具结果数据、发票作废结果数据、发票查询结果数据、发票打印结果数据等。例如,在增值税发票系统根据企业系统提供的发票信息开具发票之后,增值税发票系统向企业系统回复的发票信息中携带有发票开具成功/失败的信息,在发票开具成功之后,还可以将所开具的发票的票据号等信息返回给企业系统,以供企业系统修改其系统中企业报表的相应数据。

需要明确的是,本实施例并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本实施例的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

在本实施例中还提供了一种增值税发票数据的处理装置,该装置用于实现上述的增值税发票数据的处理方法,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”或者“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图2是根据本发明实施例的一种增值税发票数据的处理装置的结构框图,如图2所示,该装置包括:

检测模块21,用于检测金税设备;

连接模块22,耦合至检测模块21,用于在检测到金税设备的情况下,连接金税设备;

交互模块23,耦合至连接模块22,用于将发票数据封装成json格式,并通过http协议在金税设备的增值税发票系统和企业系统之间交互发票数据。

可选地,连接模块22包括:读取单元,用于读取金税设备的设备信息;判断单元,用于判断设备信息中的设备标识与在当前计算机系统的注册表中已注册的设备标识是否一致;修改单元,用于在判断结果为不一致的情况下,将注册表中已注册的设备标识修改为金税设备的设备标识;安装注册单元,用于自动安装金税设备的组件并注册组件信息;启动单元,用于启动增值税发票系统。

可选地,装置还包括:校验模块,耦合在连接模块22和交互模块23之间,用于在连接金税设备之后,调用外部组件进行注册文件校验。

可选地,交互模块23包括:第一封装单元,用于将发票数据封装成json格式的json明文;加密单元,用于采用字符串加密方法加密json明文;第二封装单元,用于将加密后的json明文封装成http报文。

可选地,加密单元,用于采用base64加密json明文;将加密得到的字符串中的加号替换成短下划线。

可选地,交互模块23用于:将json格式的第一http报文通过http协议发送;其中,第一http报文中携带有来自企业系统的发票数据,该发票数据包括以下至少之一:发票开具数据、发票作废数据、发票查询数据、发票打印数据;解密第一http报文得到json明文;解码json明文得到来自企业系统的发票数据;将来自企业系统的发票数据发送给增值税发票系统。

可选地,交互模块23用于:将json格式的第二http报文通过http协议发送;其中,第二http报文中携带有来自增值税发票系统的发票数据,该发票数据包括以下至少之一:发票开具结果数据、发票作废结果数据、发票查询结果数据、发票打印结果数据;解密第二http报文得到json明文;解码json明文得到来自增值税发票系统的发票数据;将来自增值税发票系统的发票数据发送给企业系统。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图3是根据一示例性实施例示出的一种电子设备300的框图。如图3所示,该电子设备300可以包括:处理器301,存储器302。该电子设备300还可以包括多媒体组件303,输入/输出(i/o)接口304,以及通信组件305中的一者或多者。

其中,处理器301用于控制该电子设备300的整体操作,以完成上述的增值税发票数据的处理方法中的全部或部分步骤。存储器302用于存储各种类型的数据以支持在该电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件303可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器302或通过通信组件305发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口304为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件305用于该电子设备300与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件305可以包括:wi-fi模块,蓝牙模块,nfc模块。

在一示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的增值税发票数据的处理方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的增值税发票数据的处理方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器302,上述程序指令可由电子设备300的处理器301执行以完成上述的增值税发票数据的处理方法。

图4是根据一示例性实施例示出的一种电子设备400的框图。例如,电子设备400可以被提供为一服务器。参照图4,电子设备400包括处理器422,其数量可以为一个或多个,以及存储器432,用于存储可由处理器422执行的计算机程序。存储器432中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器422可以被配置为执行该计算机程序,以执行上述的增值税发票数据的处理方法。

另外,电子设备400还可以包括电源组件426和通信组件450,该电源组件426可以被配置为执行电子设备400的电源管理,该通信组件450可以被配置为实现电子设备400的通信,例如,有线或无线通信。此外,该电子设备400还可以包括输入/输出(i/o)接口458。电子设备400可以操作基于存储在存储器432的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm等等。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的增值税发票数据的处理方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器432,上述程序指令可由电子设备400的处理器422执行以完成上述的增值税发票数据的处理方法。

为了使本发明实施例的描述更加清楚,下面结合优选实施例进行描述和说明。

本优选实施例提供了一个中间件,该中间件通过执行增值税发票数据的处理方法来实现其接口功能。

本优选实施例提供的方法包括以下步骤:

步骤1读取金税设备并注册。

参考图5,启动本软件服务时,检测金税设备,读取设备信息,并与系统注册表信息“software\\microsoft\\windows\\currentversion\\apppaths\\fwkp.exe\\”中“code”键值比对是否一致,不一致则启动修改系统注册表信息为当前金税设备的信息流程,自动安装组件并注册组件信息,最后完成服务的开启。

步骤2匹配文件。

通过调用外部组件“xihaa.dll”,进行软件的注册文件校验,包含时间、税号、开票点、文件类型等校验,达到文件匹配避免调用数据不一致问题。

步骤3封装json接口并加密。

图6是根据本发明优选实施例的企业系统、中间件与金税设备及组件的系统协作流程的示意图。参考图6,通过金税设备、组件等底层的协议与调用方法,封装出一套完整的可供其他系统调用的http协议接口,使之能够从企业系统到中间件简单操作后即可完发票相关功能的需求。报文的封装方式为:将json明文用base64加密,且加密的字符集为gb2312,加密后的base64报文需要将密文中的“+”替换成“_”,以避免因为“+”造成报文进行url传输时异常。客户端接口服务的回复报文也同样按照以上的要求来进行加密、替换加号。

步骤4接受请求并解密数据。

继续参考图6,中间件接收到业务请求后,通过http接收到的报文进行对应解码,识别请求的业务sid,根据不同业务,再调用金税设备及组件,进行信息的进一步处理。金税设备上安装的增值税发票系统按照图7所示的流程执行开票服务。

因报文体为json格式,故返回信息也会封装成json体(至少包含{"retcode":"1","retmsg":"xxxx"},返回异常信息{"retcode":"-1","retmsg":"xxxx"}),返回报文统一封装成{"encmsg":"密码串"}。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。例如,可以将字符串加密方法中选用的字符串gb2312改变为utf-8等其他字符串。

综上所述,通过上述实施例,提供了一个简单的发票相关接口,无需关心系统与金税盘、组件的调用过程,只需将业务请求按中间件要求格式以规定报文形式发送到此系统,即可接收相应的操作返回信息。对于http通信协议系统,其他大部分系统都能够很好的与此系统进行交互,相对开发技术要求低。企业业务系统在接入此发票相关功能时,会有效节省企业开发成本。并且支持一台计算机分别与不同金税设备的连接,换金税设备后自动完成组件安装,达到自动切换的目的,不用再手动安装相关组件来完成后续的功能操作。企业系统通过中间件接入增值税发票系统,取消了手工开票的方法,达到了与使用增值税防伪税控系统一样的效果。对于企业,无缝粘合财务系统与税务系统,直接整备待开票数据、开具发票,适用于使用税务统一外挂税控器以及平推式打印机开具服务发票的企业,帮助企业消除使用外挂税控器开票中涉及的手工输入发票工作,企业可以更好地管理服务发票信息,实现企业系统与税控器开票系统的无缝衔接,无需额外硬件投入,可以做到企业系统的数据共享、财务数据共享、核算数据共享等。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1