1.一种开票校验方法,其特征在于,所述方法包括:
根据待开发票的票种调用与所述票种对应的预设特殊字符库对所述待开发票的必填项进行校验;
根据所述待开发票的税号的长度调用与所述长度对应的预设税号规则对所述待开发票的税号进行校验;
根据所述待开发票的票种调用与所述票种对应的预设数据项长度规则对所述待开发票的数据项的长度进行校验;
根据所述待开发票的票种调用与所述票种对应的预设数据项格式规则对所述待开发票的数据项的格式进行校验;
根据所述待开发票的票种调用与所述票种对应的预设备注校验规则对所述待开发票的备注进行校验;
对所述待开发票进行金额误差校验、税额误差校验和发票总体误差校验。
2.根据权利要求1所述的方法,其特征在于,所述根据待开发票的票种调用与所述票种对应的预设特殊字符库对所述待开发票的必填项进行校验包括:
在判断所述待开发票的票种为专票时,调用第一特殊字符库对所述待开发票的必填项进行校验,在所述必填项中出现所述第一特殊字符库中的特殊字符时,校验得到所述待开发票不合规,并将出现的特殊字符在所述必填项中标记出来,所述第一特殊字符库包括换行符;
在判断所述待开发票的票种为非专票时,调用第二特殊字符库对所述待开发票的必填项进行校验,在所述必填项中出现所述第二特殊字符库中的特殊字符时,校验得到所述待开发票不合规,并将出现的特殊字符在所述必填项中标记出来,所述第二特殊字符库不包括换行符。
3.根据权利要求1所述的开票校验方法,其特征在于,所述根据所述待开发票的税号的长度调用与所述长度对应的预设税号规则对所述待开发票的税号进行校验包括:
在判断所述待开发票的税号的长度为6至15位时,判断所述待开发票的税号是否满足第一税号规则,在所述待开发票的税号不满足所述第一税号规则时,校验得到所述待开发票不合规,所述第一税号规则为6至15位任意数字字母组合;
在判断所述待开发票的税号的长度为16至18位时,判断所述待开发票的税号是否满足第二税号规则、第三税号规则和第四税号规则,在所述待开发票的税号不满足所述第二税号规则、第三税号规则和第四税号规则中的任意一个时,校验得到所述待开发票不合规,所述第二税号规则为6位数字加最多12位任意数字字母组合,所述第三税号规则为1位字母加6位数字加最多11位任意数字字母组合,所述第四税号规则为2位字母加6位数字加最多10位任意数字字母组合;
在判断所述待开发票的税号的长度为19至20位时,判断所述待开发票的税号是否满足第五税号规则、第六税号规则、第七税号规则、第八税号规则和第九税号规则,在所述待开发票的税号不满足所述第五税号规则、第六税号规则、第七税号规则、第八税号规则和第九税号规则中的任意一个时,校验得到所述待开发票不合规,所述第五税号规则为15位身份证号加最多5位任意数字字母组合,所述第六税号规则为18位身份证号加最多2位任意数字字母组合,所述第七税号规则为1位字母加15位身份证号加最多4位任意数字字母组合,所述第八税号规则为1位字母加18位身份证号加最多1位任意数字字母组合,所述第九税号规则为6位数字加最多14位任意数字和非oisz的字母组合。
4.根据权利要求1所述的开票校验方法,其特征在于,所述根据所述待开发票的票种调用与所述票种对应的预设数据项长度规则对所述待开发票的数据项的长度进行校验包括:
在判断所述待开发票的票种为专票时,判断所述待开发票的购方税号是否为空,在所述待开发票的购方税号为空时,校验得到所述待开发票不合规;
在判断所述待开发票的票种为卷票时,判断所述待开发票的商品名称的长度是否为40个字节,在所述待开发票的商品名称的长度不是40个字节时,校验得到所述待开发票不合规。
5.根据权利要求1所述的开票校验方法,其特征在于,所述根据所述待开发票的票种调用与所述票种对应的预设数据项格式规则对所述待开发票的数据项的格式进行校验包括:
在判断所述待开发票的票种为蓝字发票时,判断所述待开发票的数据项是否满足第一数据项格式规则,在所述待开发票的数据项不满足所述第一数据项格式规则时,校验得到所述待开发票不合规,所述第一数据项格式规则包括:合计金额大于0;且,金额为负的商品行,其上一商品行的金额为正;
在判断所述待开发票的票种为红字发票时,判断所述待开发票的数据项是否满足第二数据项格式规则,在所述待开发票的数据项不满足所述第二数据项格式规则时,校验得到所述待开发票不合规,所述第二数据项格式规则包括:合计金额小于0,为未冲红发票,为有效发票。
6.根据权利要求1所述的开票校验方法,其特征在于,所述根据所述待开发票的票种调用与所述票种对应的预设备注校验规则对所述待开发票的备注进行校验包括:
在判断所述待开发票的票种为专票红字发票时,判断所述待开发票的备注是否包含第一内容,在所述待开发票的备注不包含第一内容时,校验得到所述待开发票不合规,所述第一内容为:开具红字增值税专用发票信息表编号;
在判断所述待开发票的票种为普通红字发票时,判断所述待开发票的备注是否包含第二内容,在所述待开发票的备注不包含第二内容时,校验得到所述待开发票不合规,所述第二内容为:对应正数发票代码和对应正数发票号码;
在判断所述待开发票的票种为代开发票时,判断所述待开发票的备注是否包含第三内容,在所述待开发票的备注不包含第三内容时,校验得到所述待开发票不合规,所述第三内容为:代开发票备注注明代开企业税号与代开企业名称,实际填写为;
在判断所述待开发票的票种为差额征税蓝票时,判断所述待开发票的备注是否包含第四内容,在所述待开发票的备注不包含第四内容时,校验得到所述待开发票不合规,所述第四内容为:差额征税蓝票需在备注开始注明;
在判断所述待开发票的票种为差额征税红票时,判断所述待开发票的备注是否包含第五内容,在所述待开发票的备注不包含第五内容时,校验得到所述待开发票不合规,所述第五内容为:差额征税红票需在备注开始注明。
7.根据权利要求1-6任一项所述的开票校验方法,其特征在于,所述方法还包括:
在所述待开发票为含税模式时,根据预设价税分离算法将所述待开发票转换为不含税模式。
8.一种开票校验装置,其特征在于,包括:
特殊字符校验模块,用于根据待开发票的票种调用与所述票种对应的预设特殊字符库对所述待开发票的必填项进行校验;
税号校验模块,用于根据所述待开发票的税号的长度调用与所述长度对应的预设税号规则对所述待开发票的税号进行校验;
数据项长度校验模块,用于根据所述待开发票的票种调用与所述票种对应的预设数据项长度规则对所述待开发票的数据项的长度进行校验;
数据项格式校验模块,用于根据所述待开发票的票种调用与所述票种对应的预设数据项格式规则对所述待开发票的数据项的格式进行校验;
备注校验模块,用于根据所述待开发票的票种调用与所述票种对应的预设备注校验规则对所述待开发票的备注进行校验;
误差校验模块,用于对所述待开发票进行金额误差校验、税额误差校验和发票总体误差校验。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-7中任一项所述方法的步骤。