CN112712403B - 一种离线发票开具方法及系统 - Google Patents

一种离线发票开具方法及系统 Download PDF

Info

Publication number
CN112712403B
CN112712403B CN202011562418.3A CN202011562418A CN112712403B CN 112712403 B CN112712403 B CN 112712403B CN 202011562418 A CN202011562418 A CN 202011562418A CN 112712403 B CN112712403 B CN 112712403B
Authority
CN
China
Prior art keywords
offline
invoice
code
line
dynamic link
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
Application number
CN202011562418.3A
Other languages
English (en)
Other versions
CN112712403A (zh
Inventor
杨为琛
薛方
贾保
杨珍珍
闫召明
姚冉
江晓妍
张腾涯
裴勇伟
罗晓达
高然
张鹤
张晨飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hebei Aisino Co ltd
Original Assignee
Hebei Aisino Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hebei Aisino Co ltd filed Critical Hebei Aisino Co ltd
Priority to CN202011562418.3A priority Critical patent/CN112712403B/zh
Publication of CN112712403A publication Critical patent/CN112712403A/zh
Application granted granted Critical
Publication of CN112712403B publication Critical patent/CN112712403B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/04Billing or invoicing

Landscapes

  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种离线发票开具方法及系统,开票终端在离线时通过动态链接库文件的离线号码生成规则生成离线发票号码,在线时查询本地未上传离线发票号码,经过加密处理后上传至税局服务器端;税局服务器端兼容存储在线和离线两种模式下生成的发票号码数据。通过本发明,纳税人获取发票号码不必受限于税局的服务网点,发票号码的生成和分发场景更加务实和高效;发票号码生成也不用受网络限制,离线情况下也能有效支撑纳税人的开票需求。

Description

一种离线发票开具方法及系统
技术领域
本发明属于税务管理领域,特别是涉及到一种离线发票开具方法及系统。
背景技术
发票号码是税务部门对发票所赋予的特殊编码,由“发票号码”或“发票代码+发票号码”等形式,组成发票的唯一识别码。在发票信息检索和查验发票真伪等领域,有着切实而广泛的用途。
目前国内的发票号码由税务部门统一生成,纳税人在开票之前需要携带“金税盘”等物理设备到税务大厅或者通过网络分发等方式,提前向税局申领发票号段。纳税人在开票时,需要按照申领到的发票号段,依次使用,作为发票的识别号码。
但是在海外税务系统应用当中,由于一些国家存在税务网点较少,纳税人到税务大厅办理业务不够方便;当地的网络基础设施较差,纳税人无法保持实时联网,存在大量需要离线开票的业务场景等情况,因此海外的税务系统无法照搬国内经验。
针对离线开票最主要的问题就是发票号码的重复问题,现有技术中有的解决方案是在开票设备终端离线时,使用其他联网设备(例如手机终端)基于安全密钥从税局在线申领号码,然后离线的开票设备终端使用该号码作为发票号码,但对于网络基础设施较差的海外,该方法同样并不适用。
发明内容
针对以上问题,本发明提出了一种离线发票开具方法及系统,支持离线实时生成不重复的发票号码,可免去纳税人开票前需要事先领取发票号段的步骤。
为了实现上述目的,本发明的技术方案是这样实现的:
一种离线发票开具方法,包括:
S1、开票终端在离线时通过动态链接库文件的离线号码生成规则生成离线发票号码,所述离线号码生成规则中离线发票号码包括:模式码、时间码、设备码、随机码,各码以既定的方式排列,保证离线发票号码的唯一性;
S2、开票终端在线时,通过动态链接库文件的在线上传规则,查询本地未上传离线发票号码,经过加密处理后上传至税局服务器端;
S3、税局服务器端兼容存储在线和离线两种模式下生成的发票号码数据。
进一步的,步骤S1所述时间码包括财年编码、月份编码、日期编码,所述的编码以组合或分列的形式分布在离线发票号码中。
进一步的,步骤S1所述设备码包括制造商编码和设备号编码,所述的编码以组合或分列的形式分布在离线发票号码中。
进一步的,步骤S1所述既定方式中,既定的为各码的分布排序方式。
进一步的,所述动态链接库文件与上层程序通信的方式设置了单独专属的协议约定。
本发明的另一方面,还提供了一种离线发票开具系统,包括:开票终端的离线开票程序和税局服务器端的兼容存储程序;所述离线开票程序中设有动态链接库文件,所述动态链接库文件设有离线号码生成规则和在线上传规则;所述离线号码生成规则中规定的离线发票号码包括:模式码、时间码、设备码、随机码,各码以既定的方式排列,保证离线发票号码的唯一性;所述在线上传规则中设有查询本地未上传离线发票号码功能以及上传加密功能;
所述税局服务端的兼容存储程序包括离线发票号码解密接收和兼容存储功能。
进一步的,所述动态链接库文件分层设计,对外接口为java调用层,内部对接Linux操作系统C/C++的底层功能逻辑接口,最终生成后缀为.so的JNI动态链接库文件。
更进一步的,所述动态链接库文件设有与上层java程序通信的专属协议约定。
与现有技术相比,本发明具有如下的有益效果:
1、通过本发明,纳税人获取发票号码不必受限于税局的服务网点,发票号码的生成和分发场景更加务实和高效;
2、通过本发明,发票号码生成也不用受网络限制,离线情况下也能有效支撑纳税人的开票需求;
3、本发明中税局端的发票数据存储,能够兼容在线和离线两种模式下生成的数据,不会对发票查验等功能造成业务上的区别。
附图说明
图1是本发明实施例中的离线开具发票的流程示意图;
图2是本发明实施例中的离线发票号码序列示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本发明中的具体含义。
下面将参考附图并结合实施例来详细说明本发明。
在海外的税务系统,尤其是网络环境较差的场景中,使用本发明进行离线开票时发票号码生成方案的具体实施例中,流程如图1所示,包括如下:
一、纳税人采用离线模式开票时,在开票终端输入开票信息并提交后,开票终端将调用程序中的动态链接库按离线业务规则生成离线发票号。生成的发票数据将暂存在终端设备的本地存储空间上,并将该离线票标记为未上传状态,具体生成规则如下:
对于离线情况下产生的发票号,票号将被配置为{1}-{2}-{2}-{2}-{6}-{2}-{5}的总长度为20位的伪序列,如下所定义:
1 首位数字代表发票开具模式,1表示在线模式,2表示离线模式
2 2-3位代表当前财年的2位数
2 4-5位代表了开票设备制造商的2位数字编码
2 6-7位代表当前月份的2位数字
6 8-13位截取当前开票设备号的末尾6位数字,并且设备号也是唯一的
2 14-15位代表当天日期的2位数字
5 16-20位是随机生成的5位序列号
生成离线发票号码序列如图2所示。
二、等网络恢复连接后,纳税人退出离线状态,并重新以在线模式登录开票设备,此时设备会查询暂存在本地存储中所有的未上传离线票,并以后台服务的形式,通过网络接口,经过加密处理后上传至税局服务器端进行统一存储。
三、如果上传成功,税局服务端接口将返回成功标志,开票设备再根据此标志将对应的本地离线票更新为已上传状态,避免下次登录时重复上传;反之,如果税局服务端接口没有返回成功标志,则不会更新该离线票的上传状态,等到下次在线登录时,将继续执行该离线票的上传流程,直到上传成功为止。
四、离线发票号码生成时的技术实现:
基于上述业务规则,使用C语言编写离线发票号码的生成算法,并编译生成一个独立后缀为.so的动态链接库程序文件。该动态库为分层设计,对外接口为java调用层,也可以理解为应用程序层,内部对接Linux操作系统C/C++的底层功能逻辑接口,最终生成后缀为.so的JNI动态链接库文件。该方案具有如下特性:
1、具备较好的可移植性和复用性。.so的动态链接库为独立性程序文件,可嵌入到其他软件中以供调用,基于类Linux操作系统内核的环境下均可运行。本方案中采用的开票设备运行的是Android系统,底层实现是Linux操作系统内核,并且开票软件同样是基于java语言开发,可以很好地调用上述动态链接库。后续根据业务需要还可以做Linux系统或IOS系统下的移植,具有较高的复用性。
2、执行速度快,文件体积小。动态库文件采用C语言编译而成,继承了C语言执行速度快的特点,能够有效节省开票时间,提升开票效率。并且该文件大小仅有20KB,可以有效节省终端设备的使用空间。
3、具有较好的安全性。该动态库与上层Java通信时,使用了特殊的协议约定,即使被私自挪用,在未获取协议内容的情况下,也无法被正常调用。并且在当前的应用场景中,动态链接库会连同开票软件其他文件一同打包,经过安全性加固后再正式对外发布,提升了程序的安全性。
五、发票数据在税局服务端统一存储:
基于以上方案,离线发票号码采用与在线发票号码不同的业务规则,可满足在离线模式下,纳税人端仍然能够生成唯一发票号码的应用场景要求。
为了保证数据的兼容性、减少业务的复杂度,在线开具的发票和离线开具的发票,除了发票号码长度不同外,其他开票信息的数据结构和格式是保持一致的。不会由于不同开票方式导致发票的数据结构不同,造成业务流程对发票数据的处理方式不同。最终,在线和离线生成的发票数据,都将会以相同数据格式统一存储到税局端的数据库中。所述相同数据格式即是指无论离线还是在线开票信息的数据结构和格式是保持一致的,只有发票号码长度不同。
本发明在线和离线模式下采用不同的发票号码生成规则,能够保证发票号码的唯一性,不会重复。
在离线开票模式下,终端设备无需联网也能基于业务规则生成发票号码,速度更快,应用场景更丰富。
离线发票号码生成程序由C语言开发,适配Linux操作系统内核,执行速度快,安全性更高。
用于离线生成发票号码的.so的文件为独立性程序文件,具有可移植性和复用性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种离线发票开具方法,其特征在于,包括:
S1、开票终端离线开票且无法在线申领发票号码时,通过动态链接库文件的离线号码生成规则生成离线发票号码,所述离线号码生成规则中离线发票号码包括:模式码、时间码、设备码、随机码,各码以既定的方式排列,保证离线发票号码的唯一性;所述动态链接库文件设有与上层java程序通信的专属协议约定;
S2、开票终端在线时,通过动态链接库文件的在线上传规则,查询本地未上传离线发票号码,经过加密处理后上传至税局服务器端;
S3、税局服务器端兼容存储在线和离线两种模式下生成的发票号码数据。
2.根据权利要求1所述的一种离线发票开具方法,其特征在于,步骤S1所述时间码包括财年编码、月份编码、日期编码,所述的编码以组合或分列的形式分布在离线发票号码中。
3.根据权利要求1所述的一种离线发票开具方法,其特征在于,步骤S1所述设备码包括制造商编码和设备号编码,所述的编码以组合或分列的形式分布在离线发票号码中。
4.根据权利要求1、2、3任一项所述的一种离线发票开具方法,其特征在于,步骤S1所述既定方式中,既定的为各码的分布排序方式。
5.根据权利要求1所述的一种离线发票开具方法,其特征在于,所述动态链接库文件与上层程序通信的方式设置了单独专属的协议约定。
6.一种离线发票开具系统,其特征在于,包括:开票终端的离线开票程序和税局服务器端的兼容存储程序;所述离线开票程序中设有动态链接库文件,所述动态链接库文件设有离线号码生成规则和在线上传规则;所述离线号码生成规则中规定的离线发票号码包括:模式码、时间码、设备码、随机码,各码以既定的方式排列,保证离线发票号码的唯一性;所述在线上传规则中设有查询本地未上传离线发票号码功能以及上传加密功能;
所述税局服务器端的兼容存储程序包括离线发票号码解密接收和兼容存储功能。
7.根据权利要求6所述的一种离线发票开具系统,其特征在于,所述动态链接库文件分层设计,对外接口为java调用层,内部对接Linux操作系统C/C++的底层功能逻辑接口,最终生成后缀为.so的JNI动态链接库文件。
8.根据权利要求6或7所述的一种离线发票开具系统,其特征在于,所述动态链接库文件设有与上层java程序通信的专属协议约定。
CN202011562418.3A 2020-12-25 2020-12-25 一种离线发票开具方法及系统 Active CN112712403B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011562418.3A CN112712403B (zh) 2020-12-25 2020-12-25 一种离线发票开具方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011562418.3A CN112712403B (zh) 2020-12-25 2020-12-25 一种离线发票开具方法及系统

Publications (2)

Publication Number Publication Date
CN112712403A CN112712403A (zh) 2021-04-27
CN112712403B true CN112712403B (zh) 2023-03-14

Family

ID=75546519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011562418.3A Active CN112712403B (zh) 2020-12-25 2020-12-25 一种离线发票开具方法及系统

Country Status (1)

Country Link
CN (1) CN112712403B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101673445A (zh) * 2009-09-25 2010-03-17 浪潮齐鲁软件产业有限公司 一种加油站行业自动开发票的方法
CN103914925A (zh) * 2012-12-30 2014-07-09 航天信息股份有限公司 对离线开具网络发票进行管控的方法和系统
CN103971274A (zh) * 2014-05-30 2014-08-06 税友软件集团股份有限公司 离线应急电子发票的处理方法、处理装置及处理系统
CN106920135A (zh) * 2015-12-28 2017-07-04 航天信息股份有限公司 一种pos开票服务器离线交易的实现方法及系统
CN110880131A (zh) * 2019-11-11 2020-03-13 深圳前海微众银行股份有限公司 一种发票的生成方法及装置
CN111161000A (zh) * 2019-12-05 2020-05-15 航天信息股份有限公司 一种面向小微企业的税控方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101673445A (zh) * 2009-09-25 2010-03-17 浪潮齐鲁软件产业有限公司 一种加油站行业自动开发票的方法
CN103914925A (zh) * 2012-12-30 2014-07-09 航天信息股份有限公司 对离线开具网络发票进行管控的方法和系统
CN103971274A (zh) * 2014-05-30 2014-08-06 税友软件集团股份有限公司 离线应急电子发票的处理方法、处理装置及处理系统
CN106920135A (zh) * 2015-12-28 2017-07-04 航天信息股份有限公司 一种pos开票服务器离线交易的实现方法及系统
CN110880131A (zh) * 2019-11-11 2020-03-13 深圳前海微众银行股份有限公司 一种发票的生成方法及装置
CN111161000A (zh) * 2019-12-05 2020-05-15 航天信息股份有限公司 一种面向小微企业的税控方法及系统

Also Published As

Publication number Publication date
CN112712403A (zh) 2021-04-27

Similar Documents

Publication Publication Date Title
CN100478956C (zh) 生成和获取报表的方法及相应的系统
CN1568473B (zh) 交易处理
CN103916844A (zh) 客户识别模块卡开通方法及虚拟客户识别模块卡服务器
CN108605044A (zh) 先进的装置锁定标准
CN104123313B (zh) 获取导览信息的方法和服务器
CN113077259A (zh) 基于区块链的存证方法、装置及电子设备
CN112712403B (zh) 一种离线发票开具方法及系统
CN101873580B (zh) 业务应用的下载方法及业务应用管理平台系统
CN100558188C (zh) 消息处理设备、系统及方法
CN107705384B (zh) 考勤方法、系统、电子设备及存储介质
CN110769056A (zh) 实名制信息处理方法、装置、电子设备及存储介质
CN101146282A (zh) 应用识别模块下载电子文件的方法
CN100512345C (zh) 用于在电信网络中配置业务的方法和系统
EP1820311B1 (en) A messaging gateway and method
US7747485B2 (en) Variable account data information system and method
CN110248354A (zh) 一种基于动态配置的数据处理方法及其应用
CN111324645A (zh) 区块链的数据处理方法及装置
CN105741169A (zh) 一种通过银行卡缴税的装置、方法及系统
CN112770008A (zh) 一种智能拨测话单稽核方法及系统
CN111294788B (zh) 消息处理方法、装置、网关及计算机存储介质
CN116151903B (zh) 一种基于促销管理系统的业务处理方法和装置
CN117459907A (zh) 短信发送方法、装置、设备、存储介质和程序产品
TWM359533U (en) Loading system for container
CN114511363A (zh) 一种多税控设备集中式共享开票数据处理方法
CN101044476B (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
GR01 Patent grant
GR01 Patent grant