完美的SAP版自动金税开票解决方案.docx
《完美的SAP版自动金税开票解决方案.docx》由会员分享,可在线阅读,更多相关《完美的SAP版自动金税开票解决方案.docx(27页珍藏版)》请在冰豆网上搜索。
完美的SAP版自动金税开票解决方案
木头坦克SAP版自动金税开票解决方案
简介:
背景
1.金税系统:
在中国,增值税销项税发票必须使用税务局指定的防伪税控开票系统开具(简称:
金税系统).
2.与SAP的集成:
企业所使用的SAP软件管理系统和税务上防伪税控开票系统相互独立,两者间缺少有效的数据共享接口,造成税务流程涉及大量的手工重复工作和多系统间的数据人工传递。
同时,由于SAP软件系统通常没有办法直接接收防伪税控开票系统返回的发票信息,导致增值税发票往往难以核查,销售与财务的报表数据常常对应不上,从而影响整个企业的业务管理流程。
3.税务部门对于开票的要求:
1)每张票的不含税总金额有上限,上限的具体值根据公司代码所对应公司所在当地税务机关的规定而定.
2)每张票以及票中的每一行的税额计算误差不得超过0.06元
3)只有部分用户有权限开红字发票(金额为负的发票)
4.甲方单位本身对开票的要求:
1)甲方本身已经购买了第三方的金税接口软件,但是因为用户导入的接口文件中无法保证每票每行的误差不超过0.06元,同时也没有根据每票金额上限分折.这样导入接口程序就出现很多异常情况,有时是无法开票,有时则会拆分成许多发票.
即使是接口能拆分开票的,也有问题:
一、因为其拆分规则没有照顾到用户的一些特殊要求,将一些像退货冲销这样不应该拆分的记录也拆分了。
二、在金税已经开完票之后回传到SAP时就会出现无法与原来的内部编号一一对应的情况。
为了避免这两种情况,所以必须在SAPECC系统中开发本模块以实现金税接口软件中所有拆分的逻辑,这样本模块产生的接口文件都是已经保证上限和误差都符合金税要求的文件.导入接口程序时就不会再触发拆分的过程。
2)对于是否有权开红票要自定义数据表进行维护,在开票时自动检查是否有红票开出.并且只有在BL数据是退货时才允许开出红字的发票,如果无权限又开出退货红票,要能检查出来,并且提示.
3)对于SAP中不是因为退货而在BL中开出的金额为负的数据(出错,调价,冲销等),无论该客户是否有权限开出红字发票都不允许开出红字发票,而要和对应BL一一自动合并;对于没有对应BL的数据(如调价等),要在所有当前票和票下面的行中进行自动分配.最终要保证每张发票的金额为正,同时每张的每一行也要为正.
4)因为开票时BL的数据量极大(一个月20万的BL记录量),所以在选择多个客户的数据时,要根据客户自动合并开票.使用一个发票只能有一个客户的BL数据,同时在一客户下的数据要尽可能的合并开票,减少开票数量.
5)对于零散用户使用一个客户编码的,要提供批量修改抬头的地方.并且修改之后的抬头也要参与上一条提到的合并开票逻辑.
开发完解决方案的特点:
1.自动动态拆分:
当正在开出的发票金额超过上限或误差超限时自动拆分,拆分方式是从先按金额上限拆分再按误差上限拆分.拆分是从末尾往前求出最优的拆分点来拆分的.保证了拆分出的票数最小.根据税务部门要求:
在票和行的级别都会进行拆分以保证每张票和票中的每一行的误差都不超过0.06(这样就完全不需要第三方的金税接口软件了)
2.自动动态调整:
当发票找到不到拆分点时(即上述自动拆分之后误差仍超过0.06的情况一),会自动将误差调整至规定误差以下.为了避免调整时将误差调整到某一行时导致该行的误差超限,分配调整金额是按每一行的累计误差动态分配调整的(以0.01元为单位),保证了不会使行的误差超限.调整的金额记录到行,保证未来调账时有据可查,并可以在回写数据时自动产生调账凭证.根据税务部门要求:
在票和行的级别都会进行调整,以保证每张票和票中的每一行的误差都不超过0.06
3.自动合并:
可以分公司分客户自动合并开票,退货凭证与对应凭证自动合并开票.
支持手工调整合并方式.支持用户手工调整开票抬头,并且自动按抬头自动合并开票.
4.中间存储开票数据:
所有开票数据从VBRK\VBRP先取到中间表,提升取数效率.
5.开票灵活:
选择中间数据(VBRK\VBRP)开票过程中可以随时删除不需要的数据,即使在一个行内也允许输入部分金额或者数量进行部分开票.
6.提示信息以弹出窗表格式显示:
一个步骤所返回给用户的信息用弹出表格式一次显示给用户,而不是像传统的SAP界面一个个提示消息.
7.界面友好直观:
处理界面使用可调式分屏界面,发票数据用树型表示,界面友好.
解决方案的介绍:
1.概览:
使用的主要事务码:
Z0021
金税开票-处理
Z0022
金税开票-下载
Z0023
金税开票–回传
Z0024
金税开票–查询
Z0025
金税开票-开冲销发票的控制表
Z0037
金税开票-开票金额上限的控制表
2.Z0021金税开票-处理介绍:
此部分功能针对销司项目涉及到的系统发票的汇总拆分到金税票的处理,包括正向发票,退货贷项,调价补差类型的发票;针对这些数据进行合并,总额拆分,精度拆分,产生系统的传输票号,用于进行上传金税票的TXT信息下载;
合并逻辑:
1)正常销售发票/冲红发票,退货贷项/退货冲红都是通过同一分组+同一结算方+同一结算方抬头名称+同一型号+同一单价进行合并;
2)借贷项(调价补差)发票通过同一分组+同一结算方+同一结算方抬头名称进行合并,产生单票的折扣行;
3)手工进行特殊合并到行的处理,可通过同一客户进行合并到传输票的一行;
拆分逻辑:
全部开金税票都必须进行的检查逻辑,总的单张金税传输票的总额小于等于公司可开票额度,和单张传输票的精度以及传输票的每行的精度=(净值*0.17-税额)<0.06;
当用户点击<转到查询>时会转到Z0024查询事务
当用户点击1设置时处时会展开设置项
设置项中可自定误差金额上限,默认税目,并提供维护是否开红字发票的控制表,以及开票金额上限的控制表(区分普票和增值税票)
选择屏幕字段解释:
栏位
说明
范例
公司代码
可选或输入公司代码(必输项)
1126(必输)
开票凭证
输入系统发票号码
用于增加筛选条件,缩小查找范围,提高查找效率
销售机构
开单业务的销售组织,一般与下列分销渠道组合使用
用于增加筛选条件,缩小查找范围,提高查找效率
分销渠道
开单业务的分销渠道
用于增加筛选条件,缩小查找范围,提高查找效率
物料号
选择或输入SKU码
用于增加筛选条件,缩小查找范围,提高查找效率
付款方
选择或输入付款方客户编码
用于增加筛选条件,缩小查找范围,提高查找效率
出具发票日期
输入开票的日期
用于增加筛选条件,缩小查找范围,提高查找效率
开票类型
选择增值税发票或普通发票,2者只能选其一
默认的为增值税发票
说明
以上查询字段是And的条件,输入的字段越精细,查询出的数据越准细;输入好条件后,点执行按钮
,系统会找出符合条件的相关发票数据;
屏幕功能说明
按钮
说明
全选(F2)
对画面的数据全部选择
选择相同值的记录(CTRL+F2)
鼠标选择到某行中的某栏位A,然后点击此按钮,系统自动勾选画面中这列与栏位A相同值的行;
全不选(Shift+F2)
对画面的数据全部不选择
发票清单开启/关闭(F9)
点一下开启,传输票信息画面显示在画面底部,自动转成关闭,点击一下,传输票画面关闭
手工合并开票(F6)
对选择的项目是同一客户的进行合并到票,即可按合并的规则前2个逻辑进行合并,然后按拆分的逻辑进行拆分到多票多行;或手工合并到行,即对选择出的项目合并到一票一行;
分客户批量开票(F8)
可以对选择出的不同客户的项目,进行分组,按合并的规则前2个逻辑进行合并,然后按拆分的逻辑进行拆分到多票多行;
说明
以上查询字段是And的条件,输入的字段越精细,查询出的数据越准细;输入好条件后,点执行按钮
,系统会找出符合条件的相关发票数据;括号内为快捷键按钮信息;
处理屏幕字段栏位解释(相同字段解释适用于手工合并处理画面和分客户批量开票处理画面,后续处理画面若有变化,后续单独说明):
栏位或功能
说明
类型
选择
勾选处理项目标识
可勾选
发票接收方
结算方客户编码
显示
发票接收方公司名
结算方名称-默认的取数来源于发票抬头的文本-CRM零售订单(开票信息)第一行,如文本为空,则是结算方名称;
处理的信息画面是显示,进入到手工合并开票或分客户批量开票的画面后为可输入栏位
SAP发票
系统发票号
显示
发票行项目
系统发票行项目编号
显示
类型
发票的类型
显示
发票类型描述
发票类型描述
显示
售达方/售达方公司名
要货方编码和名称
显示
出具发票日期
系统产生应收的发票日期
显示
物料号
SKU码
显示
物料描述
SKU码描述
显示
数量
系统发票数量,借贷项(调价补差)的发票数量为0,退货贷项发票项目的数量为负数,正向发票项目的数量为正数
显示
单位
数量单位
显示
不含税金额
净值,发票行项目中的净值
显示
含税金额
含税总金额=净值+税额
显示
不含税单价
不含税金额/数量
显示
含税单价
含税总金额/数量
显示
税额
净值*税率
显示
税率
17%
显示
金税尚未开票数量
数量-已开票数量
显示
金税尚未开票金额
不含税金额-已开票金额
显示
已开票数量
等于之前成功产生传输票号的项目数量
显示
已开票金额
等于之前成功产生传输票号的项目金额
显示
当前已开票数量
等于当前操作成功产生传输票号的项目当前输入数量
显示
当前已开票金额
等于当前操作成功产生传输票号的项目当前输入金额
显示
当前输入数量
可手工进行输入的数量,不能大于金税尚未开票数量,正向的发票都可以进行数量的拆分开票,借贷项(调价补差)发票和退货的数量都必须进行全部开票,即不允许拆多次开
处理的信息画面是显示,进入到手工合并开票或分客户批量开票的画面后为可输入栏位
当前输入金额
当前输入数量*不含税单价
处理的信息画面是显示,进入到手工合并开票或分客户批量开票的画面后为可输入栏位
当前尚未开票数量
金税尚未开票数量-当前已开票数量
当前尚未开票金额
金税尚未开票金额-当前已开票金额
商品税目
金税的商品税目-标准的1503
币别
CNY(人民币)
销售订单
发票的前端业务号码
销售订单行项目
订单行项目编号
说明
1.只有勾选的项目才会进入到处理按钮后的画面,如勾选了的项目,点手工合并开票按钮或分客户批量开票按钮,则对选择出来的项目进行处理;2.正向的发票都可以进行数量的拆分开票,借贷项(调价补差)发票和退货的数量都必须进行全部开票,即不允许拆多次开票;
1
2
2.1选择需开票的项目进行手工合并开票;
操作细部描述
勾选需进行开票的项目,然后点击手工合并开票,
可以输入不同的发票抬头名称,和可以对正常发票项目进行数量的拆分输入,即可输入不大于尚未开票的数量,在可输入框中输入完成输入的资料后,按下Enter键,然后点击刷新按钮
,系统自动计算出开票金额->如下图:
画面按钮解释:
功能键
说明
范例
合并到发票(F9)
按正常合并拆分逻辑进行合并到多票多行;
合并到发票行(Shift+F9)
手工合并到行,即对选择出的项目合并到一票一行;适用一些不能按正常合并的规则进行合并的发票项目,如和正向不同价格或物料的退货项目,需要合并到正向发票的一起开票的情形;
刷新(F2)
点击刷新,按输入的数量计算出金额
取消(ESC)
退出当前画面
点击合并到票按钮出现下图:
屏幕或字段信息
说明
处理屏幕下方树形信息
按正常合并拆分规则拆分出多张传输发票信息,第一层信息:
自动产生的传输票号,即如打印成金税的标准TXT格式,则此传输票号产生一金税票号,即可理解成,拆分的传输票号,即是打印的一张金税票;第二层信息:
打印成金税票的行信息,数据的组成为系统发票的相同客户+相同物料+相同含税单价的汇总合并;第三层信息:
即是具体的系统发票行数据;
树形信息误差调整字段
是否有误差的调整标识:
’X’–有误差调整,空-没有误差调整
树形信息误差调整值
如有误差上的调整值=传输票的行调整后的净值-原发票的汇总净值;因金税票的调价补差需进行合并到一折扣行,这部分很有可能行的计算精度>0.06,如大于0.06,即传输票的行,会按总额再次进行调整净值和税额,调整后的净值和此行汇总的净值的误差就会记录到此字段中;
选择列
当当前已开票金额=金税未开票金额时为不可操作
点击保存按钮,并且在弹出的框中点击是,如点否并直接退出不保存则系统不保存此次产生的传输票号,
保存成功,更新相关状态成功信息提示,点击确定按钮或按回车,回到选择画面,操作完成!
如需对特殊的退货进行合并开票,则可使用手工合并开票-合并到行按钮
系统自动合并和拆分出2张传输票,由下图看出,不同的单价,不同的料通过此功能可以合并到一起!
点击保存按钮,即可保存传输票号;
点击按钮是,成功保存OK;
2.2分客户批量开票
操作细部描述
针对公司下不同的结算客户批量,并可对相同客户按不同的分组进行手工组合开票;
选择画面中勾选需处理的系统发票项目,然后点击分客户批量开票按钮,进入下面处理画面;
屏幕解释(处理屏幕字段栏位解释外字段)
栏位
说明
范例
分组标识
可手工进行输入,不输入,即默认标识为相同分组0,在需要进行合并到一起的标识相同的编号;
把90000459中的50-80行项目分为同一组,即想这几个是需要放到一张传输票中;
点击
点击
,进入如下画面,系统按既定的逻辑合并,然后拆分,得出如下传输票号,即不同的客户分开传输票号,不同的分组合在一起进行开票,借贷项进行合并到折扣行!
确认信息后,点击保存按钮进行保存。
3.Z0022金税开票-下载
说明:
该处理过程主要针对的是对金税处理好的传输的票号进行下载成标准的金税上传文本格式;
附:
金税标准文本格式示例:
操作细部描述:
进入下载画面
筛选条件画面字段解释:
字段名或功能键
类型
用途及说明
公司代码
必须
直接输入公司代码或点击
选取所需公司代码
开票凭证
可选
用于修改当前筛选条件的选项,改变查找条件
销售机构
可选
用于增加筛选条件,缩小查找范围,提高查找效率
分销渠道
可选
用于增加筛选条件,缩小查找范围,提高查找效率
物料号
可选
SKU码用于增加筛选条件,缩小查找范围,提高查找效率
付款方
可选
用于增加筛选条件,缩小查找范围,提高查找效率
出具发票日期
可选
用于增加筛选条件,缩小查找范围,提高查找效率
金税接口传输票号
可选
ZFIAP0021处理画面处理数据产生保存的传输票号;
尚未下载过
可选
默认为选上,表示筛选找出状态尚未进行下载的传输票号
已经下载过的
可选
一般不选,因为下载过的一般都是下载成TXT并去金税接口开始打票了的,只是可能还没有回传至SAP,并可允许发票并未进行回传的传输票进行再此的下载,但是发票正常回传的,和发票作废回传的并不能进行选择;
状态解释:
尚未下载过:
即传输票号保存了,但并未下载成金税上传文本;发票没有回传:
金税回传里的功能,即传输票号下载成金税上传文本,但是并没有金税回传文本,做回传更新的;发票作废回传:
金税回传里的功能,可根据已经保存的传输票号,因处理的失误产生等原因,但还未被金税打印成金税票的,可以进行传输票的作废回传;
按照查询条件找出保存的传输票号,进入到处理画面;
画面按钮解释:
功能键
说明
全选(F2)
全选中查询出的传输票号
全部选(Shift+F2)
全不选中传输票号
传输票号下载(F8)
下载成标准的金税上传文件格式
下载到Excel(F7)
把传输票号的信息下载成Excel格式,用于统计分析
说明:
功能键说明括号内的表示快捷键;
点击传输票号下载按钮,然后在弹出的另存为画面中,选择文本存放的地点,输入名称后保存;
保存成功后按确认或Enter键退出,下载金税上传文档成功;
下载格式文本对应的系统栏位说明:
标准文本信息
SAP对应字段说明
第一行
1.SJJK0101(固定标识)
2.销售订单传入(固定标识)
3.销售方公司代码名称
第二行
1.//发票+数字(第几张发票,为顺序变数)
第三行:
发票抬头信息
1.传输票号:
SAP产生的传输票号
2.发票行数:
合并后的传输票号的行数
3.客户名称:
传输票号中保存结算方的发票名称
4.客户税号:
维护在结算方客户的基本资料中增票税号栏位
5.客户地址/电话:
维护在结算方客户基本资料的街道+街道3/移动电话栏位;
6.客户开户行:
维护在客户主数据基本资料的银行信息-开户行栏位
7.客户帐号:
维护在客户主数据基本资料的银行数据-帐户栏位
8.备注:
维护在客户主数据公司代码资料信函屏幕下的金税备注栏位中
9-11:
为空值;
12.开票日期:
开具发票的日期
第四行:
传输票号的项目信息
1.商品描述:
SKU码的物料描述
2.单位:
数量单位
3.SKU码
4.数量
5.不含税金额
6.税率
7.税目:
固定1503
8.折扣金额
9.税额
10.折扣税额
...
4.Z0023金税开票–回传
业务情形:
为了记录已经传入到金税并开金税票后,系统传输票号状态等相关信息的更新;
操作步骤:
回传的格式是金税标准回传格式,选择好回传文件后,点击执行按钮,成功解析文本后,提示如下:
如果需要更新系统资料,按确认Enter按钮,否则按取消按钮;
1.1系统传输票号作废回传
只能针对未下载的传输票号,和对下载了但未进行回传的传输票号进行,针对下载但未进行回传的传输票号,因为很有可能已经进行金税开票了,只是未进行回传,所以一般建议不使用此项功能,如果需要使用此项功能,一定需要确保这下载的传输票号并未进行金税开票,而且并删除下载的传输票的文本;
操作细部描述:
字段名或功能键
类型
用途及说明
公司代码
必须
直接输入公司代码或点击
选取所需公司代码
开票凭证
可选
用于修改当前筛选条件的选项,改变查找条件
销售机构
可选
用于增加筛选条件,缩小查找范围,提高查找效率
分销渠道
可选
用于增加筛选条件,缩小查找范围,提高查找效率
物料号
可选
SKU码用于增加筛选条件,缩小查找范围,提高查找效率
付款方
可选
用于增加筛选条件,缩小查找范围,提高查找效率
出具发票日期
可选
用于增加筛选条件,缩小查找范围,提高查找效率
金税接口传输票号
可选
ZFIAP0021处理画面处理数据产生保存的传输票号;操作时最好先通过ZFIAP0024-金税开票查询找出需要进行作废回传的具体票号;
尚未下载过
可选
默认为选上,表示筛选找出状态尚未进行下载的传输票号
已经下载过的
可选
一般不选,因为下载过的一般都是下载成TXT并去金税接口开始打票了的,只是可能还没有回传至SAP,并可允许发票并未进行回传的传输票进行再此的下载,但是发票正常回传的,和发票作废回传的并不能进行选择;
状态解释:
尚未下载过:
即传输票号保存了,但并未下载成金税上传文本;发票没有回传:
金税回传里的功能,即传输票号下载成金税上传文本,但是并没有金税回传文本,做回传更新的;发票作废回传:
金税回传里的功能,可根据已经保存的传输票号,因处理的失误产生等原因,但还未被金税打印成金税票的,可以进行传输票的作废回传;
点击执行后,进入处理的画面,如下图,选中需要进行作废的传输票号,点击传输票号作废按钮;
系统提示成功后,按enter后确认,此时的冲回的传输号内的系统发票可再进行处理开具传输票;
5.Z0024金税开票–查询
查询系统中的传输票号的状态信息;
1)
2)
字段名或功能键
类型
用途及说明
公司代码
必须
直接输入公司代码或点击
选取所需公司代码
开票凭证
可选
用于修改当前筛选条件的选项,改变查找条件
销售机构
可选
用于增加筛选条件,缩小查找范围,提高查找效率
分销渠道
可选
用于增加筛选条件,缩小查找范围,提高查找效率
物料号
可选
SKU码用于增加筛选条件,缩小查找范围,提高查找效率
付款方
可选
用于增加筛选条件,缩小查找范围,提高查找效率
出具发票日期
可选
用于增加筛选条件,缩小查找范围,提高查找效率
金税接口传输票号
可选
ZFIAP0021处理画面处理数据产生保存的传输票号;操作时最好先通过ZFIAP0024-金税开票查询找出需要进行作废回传的具体票号;
尚未下载过
可选
默认为选上,表示筛选找出状态尚未进行下载的传输票号
已经下载过的
可选
状态解释:
尚未下载过:
即传输票号保存了,但并未下载成金税上传文本;发票没有回传:
金税回传里的功能,即传输票号下载成金税上传文本,但是并没有金税回传文本,做回传更新的;发票作废回传:
金税回传里的功能,可根据已经保存的传输票号,因处理的失误产生等原因,但还未被金税打印成金税票的,可以进行传输票的作废回传;发票正常下载并回传:
传输票号正常进行下载,并且打印票后,成功回传系统;
3)
4)
QQ:
277421543