为不含税额销售单开具单税率增值税发票的方法和系统与流程

文档序号:11952980阅读:来源:国知局

技术特征:

1.一种为不含税额销售单开具单税率增值税发票的方法,该方法包括:

步骤S1、获取待开发票的销售单数据集和销售单明细数据集,所述销售单数据集包括销售单金额、销售单税率、含税标志和开票限额,所述销售单明细数据集包括多个商品明细行,每个商品明细行包括商品名称、单价、数量和金额;

步骤S2、计算每个所述商品明细行中单价与数量的乘积并判断该乘积是否等于该商品明细行中的金额,若相等,则转至步骤S3;

步骤S3、将各个所述商品明细行中的金额进行累加得到明细合计金额,判断该明细合计金额是否等于所述销售单金额,若相等,则转至步骤S4;

步骤S4、根据所述销售单税率、所述含税标志以及每个所述商品明细行中的单价和数量计算并在每个所述商品明细行中添加价税合计、发票金额、发票税额和发票单价,并分别累加所有所述商品明细行中的价税合计、发票金额和发票税额以在所述销售单明细数据集中添加明细合计价税合计、明细合计发票金额和明细合计发票税额;以及

步骤S5、依据所述开票限额和所述增值税发票上的预定商品明细行数,将所述销售单明细数据集拆分成多个待开发票数据集。

2.根据权利要求1所述的方法,其中,在步骤S4中,

在所述含税标志表示含税的情况下,采用以下公式计算每个所述商品明细行的价税合计、发票金额、发票税额和发票单价:

价税合计=单价*数量;

发票金额=价税合计/(1+销售单税率);

发票税额=价税合计-发票金额;

发票单价=单价/(1+销售单税率);

在所述含税标志表示不含税的情况下,采用以下公式计算每个所述商品 明细行的价税合计、发票金额、发票税额和发票单价:

发票金额=单价*数量;

发票税额=发票金额*销售单税率;

价税合计=发票金额+发票税额。

3.根据权利要求1所述的方法,其中,所述销售单数据集还包括清单标志和汉字防伪企业标志,所述汉字防伪企业标志限定了所述增值税发票上的预定商品明细行数,则所述步骤S5包括以下步骤:

步骤S51、在所述清单标志表示开具带清单的增值税发票的情况下,依据所述开票限额将所述销售单明细数据集拆分成多个待开发票数据集,其中每个所述待开发票数据集的明细合计发票金额小于等于所述开票限额;

步骤S52、在所述清单标志表示开具不带清单的增值税发票的情况下,依据所述开票限额和所述汉字防伪企业标志将所述销售单明细数据集拆分成多个待开发票数据集,其中每个所述待开发票数据集的明细合计发票金额小于等于所述开票限额且每个所述待开发票数据集的商品明细行数不大于所述增值税发票上的预定商品明细行数。

4.根据权利要求3所述的方法,其中,每个所述商品明细行中还包括被折扣标志和折扣比例,且所述销售单金额为折扣后金额,每个所述商品明细行中的金额为折扣前金额,则:

在步骤S3中,利用折扣后金额=折扣前金额*(1-折扣比例)来计算包含折扣商品的商品明细行的折扣后金额,将该折扣后金额与不包含折扣商品的其他商品明细行中的金额进行累加得到所述明细合计金额,并判断所述明细合计金额是否等于所述销售单金额,若相等,则转至步骤S4;

在步骤S4中,在计算每个所述商品明细行的价税合计、发票金额、发 票税额和发票单价之前,还根据所述折扣比例重新排列各个所述商品明细行,计算具有相同折扣比例的商品明细行的总行数及其总折扣金额,并在具有相同折扣比例的商品明细行的最后一行商品明细行之后插入一条折扣行,该折扣行的商品名称中体现了具有相同折扣比例的商品明细行的总行数以及折扣比例,该折扣行的金额为所述总折扣金额*(-1);以及

在步骤S52中,若所述待开发票数据集中具有相同折扣比例的一行或多行商品明细行的最后一行商品明细行之后没有折扣行则在该最后一行商品明细行之后插入一条折扣行,若在所述最后一行商品明细行之后具有折扣行则更新该折扣行,以及更新该待开发票数据集中的明细合计价税合计、明细合计发票金额和明细合计发票税额。

5.一种为不含税额销售单开具单税率增值税发票的系统,该系统包括:

获取模块,用于获取待开发票的销售单数据集和销售单明细数据集,所述销售单数据集包括销售单金额、销售单税率、含税标志和开票限额,所述销售单明细数据集包括多个商品明细行,每个商品明细行包括商品名称、单价、数量和金额;

明细金额校验模块,用于计算每个所述商品明细行中单价与数量的乘积,判断该乘积是否等于该商品明细行中的金额;

销售单金额校验模块,用于将各个所述商品明细行中的金额进行累加得到明细合计金额,判断该明细合计金额是否等于所述销售单金额;

发票数据计算模块,用于根据所述销售单税率、所述含税标志以及每个所述商品明细行中的单价和数量计算并在每个所述商品明细行中添加价税合计、发票金额、发票税额和发票单价,并分别累加所有所述商品明细行的价税合计、发票金额和发票税额以在所述销售单明细数据集中添加明细合计价税合计、明细合计发票金额和明细合计发票税额;以及

拆分模块,用于在所述发票数据计算模块完成所述计算和累加之后,依据所述开票限额和所述增值税发票上的预定商品明细行数,将所述销售单明细数据集拆分成多个待开发票数据集。

6.根据权利要求5所述的系统,其中,所述发票数据计算模块用于:

在所述含税标志表示含税的情况下,采用以下公式计算所述每个所述商品明细行的价税合计、发票金额、发票税额和发票单价:

价税合计=单价*数量;

发票金额=价税合计/(1+销售单税率);

发票税额=价税合计-发票金额;

发票单价=单价/(1+销售单税率);

在所述含税标志表示不含税的情况下,采用以下公式计算每个所述商品明细行的价税合计、发票金额、发票税额和发票单价:

发票金额=单价*数量;

发票税额=发票金额*销售单税率;

价税合计=发票金额+发票税额。

7.根据权利要求5所述的系统,其中,所述销售单数据集还包括清单标志和汉字防伪企业标志,所述汉字防伪企业标志限定了所述增值税发票上的预定商品明细行数,所述拆分模块用于:

在所述清单标志表示开具带清单的增值税发票的情况下,依据所述开票限额将所述销售单明细数据集拆分成多个待开发票数据集,其中每个所述待开发票数据集的明细合计发票金额小于等于所述开票限额;

在所述清单标志表示开具不带清单的增值税发票的情况下,依据所述开票限额和所述汉字防伪企业标志将所述销售单明细数据集拆分成多个待开 发票数据集,其中每个所述待开发票数据集的明细合计发票金额小于等于所述开票限额且每个所述待开发票数据集的商品明细行数不大于所述增值税发票上的预定商品明细行数。

8.根据权利要求7所述的系统,其中,所述销售单明细数据集的每个所述商品明细行中还包括被折扣标志和折扣比例,且所述销售单金额为折扣后金额,每个所述商品明细行中的金额为折扣前金额:

所述销售单金额校验模块还用于:利用折扣后金额=折扣前金额*(1-折扣比例)来计算包含折扣商品的商品明细行的折扣后金额,将该折扣后金额与不包含折扣商品的其他商品明细行中的金额进行累加得到所述明细合计金额,并判断所述明细合计金额是否等于所述销售单金额;

所述发票数据计算模块还用于在计算每个所述商品明细行的价税合计、发票金额、发票税额和发票单价之前,根据所述折扣比例重新排列各个所述商品明细行,计算具有相同折扣比例的商品明细行的总行数及其总折扣金额,并在具有相同折扣比例的商品明细行的最后一行商品明细行之后插入一条折扣行,该折扣行的商品名称中体现了具有相同折扣比例的商品明细行的总行数以及折扣比例,该折扣行的金额为所述总折扣金额*(-1);以及

在所述拆分模块完成所述拆分之后,在所述清单标志表示开具不带清单的增值税发票的情况下,所述发票数据计算模块还用于:若所述待开发票数据集中具有相同折扣比例的一行或多行商品明细行的最后一行商品明细行之后没有折扣行则在该最后一行商品明细行之后插入一条折扣行,若在所述最后一行商品明细行之后具有折扣行则更新该折扣行,以及更新该待开发票数据集中的明细合计价税合计、明细合计发票金额和明细合计发票税额。

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