How tax works in SAP?
。
今天,MAX ONE公司的SD用户TRACY郭薇莹和FI用户MAY朱碧梅又为了税炒了起来,原来啊,MAXONE的增值税,是包括了三种情况,一种就是应税,简单的说,就是17%的增值税率了,一种就是零税率,就是0%的增值税了,还是一种是免税,tax exempt,其实这个和零税率是差不多的。
MAX ONE公司原来是用 ORACLE系统的,大家都知道ORACLE系统是比较灵活的,所以,在系统中,就设定了17%, 0%和免税等三种的税率,又因为MAX ONE公司大部分的业务都是内销的,都是17%,所以,他们在系统中,就设定了默认default的值是应税,17%,而在系统中,用户则可以手工去header抬头中修改税率,又或者在每一个行项目item中去修改;
而MAX ONE公司要从ORACLE转为SAP后,我们在做调研的时候,了解到在ORACLE里面是这三种税率的,于是,财务顾问蔡君 Jane Cai在和SD顾问黄伟 Wayne Huang商量以后,就在系统中设置了三种的税码tax code, 这三种税码的具体的设置如下:
在SAP中,配置税码的事务码是FTXP,然后,你去选择要创建税码的国家,这个国家会自动与Tax Procedure税确定程序关联。Tax Procedure可以通过以下的菜单来创建 [IMG - Financial accounting -Financial accounting global settings - tax on sales/purchases - basic settings- Assign country to calculation procedure].
然后,你输入税码,这个税码必须是两位的,在这里,我们设了三种税码,S1是17%,S0是0%,而SE是免税TAX EXEMPT.另外,注意啊,你在设置税码的时候不能够设置奇怪的字符,如@,*等;不然的话,系统会出错不认的,OSS NOTE212806解释了这个问题。(当然,其实也没有什么解释了,就是叫你不要在税码中用奇怪的字符而已。)
好了,当你设定了税码TAX CODE后,你就可以进一步的定义税码的其他内容了,具体如下:
税码的描述
定义税的类型:定义该税码是进项税还是销项税
定义信息指示符,意思是如果税额不对的话,系统是否会发出错误信息,建议勾上这个指示符。
Eu 码: 这个符号对于我们中国是没有什么用的,可以去留空。
目标税码target tax code一般也是不用的,它主要是用于deferred taxes,一般是欧洲在用。
报告国家: 如果你有用海外工厂的概念,那么你就填你的海外工厂,否则就不用填。
好了,设置了税码以后,就可以把税码分配给税的条件类型condition type, 一般来说,税的条件类型是MWST,或者如果不愿意用标准的MWST,那么,你也可以复制MWST,然后自己创建一个新的条件类型。要注意的是,条件类型有两种,一种是可以更改值的,另外一种是不可以更改值的,因为MWST税条件类型的严肃性,我们一般不主张去更改税率的。
好了,我们在说了如何设定税码以后,又要回到原来的问题了,就是在什么情况下会使用什么税码呢?根据我们中国的税法规定,主要有以下的这几种情况:
第一,如果是产品是出口的话,就是0%VAT;
第二,如果是客户是在报税区内经营,取得保税区的资格,那么卖给该客户的产品就如同出口,也是0%VAT;另外,还要注意的一点是,现在我们中国里面保税区的管理是有些混乱的,有很多没有取得保税区免税权利的企业也在报税区内办公的,当然了,这是一个题外话了。
第三,如果海外的第三方销售,那么就是免税VAT exempt.就是说海外的客户向我们下销售订单,而我们根据该销售订单向海外的供应商下采购订单,而由海外的供应商直接向海外的客户送货.(这个可是典型的海外的买空卖空行为啊),则是免税VAT exempt;
第四,如果客户是非政府组织NGO(Non Government Organization), 外国领事馆或者是UN联合国等有关外交单位,根据中国法律的规定,应该是免税VAT exempt;
第五,如果对于某些产品,如国家规定的,如避孕套等计生产品,是0%的。我何慕雄听了这里心里就嘀咕了,难道MAXONE公司产品线这么长,还会去生产避孕套吗?
第六,就是客户虽然是国外的,理论上是出口,但是实际上,应该是要收17%的税的;具体是什么内容呢?就是MAX ONE公司是一个包罗万象的公司,什么都做,什么都生产的;MAX ONE公司除了生产实物产品以外,还提供软件服务,MAX ONE公司为其美国总公司提供一些的软件服务,美国公司下单以后,MAX ONE就进行‘生产’,就是软件编程,在完成软件编程以后,就把完成编程的软件用发邮件的方式寄回去美国。MAX ONE公司有这方面的业务,而且业务量还不少;按道理来说,如果该业务是纯粹由私人完成的话,既然一切都是在网上完成的,那么就干脆不报税,逃税算了,但是MAX ONE是一家诚实守法的公司。于是,MAX ONE就去问税局,要求这种服务收入按照出口算;但是税局想要收一笔税钱,就问MAX ONE,如果这种的服务算出口的话,那么,是否有相应的出口单据呢?比如说装箱单,报关单等,MAX ONE就说并没有这方面的单据;MAX ONE 不甘心,于是又跑到海关去问,希望办理该软件的出口手续,海关就说,根据海关法,海关只是对进出境运输工具,货物,物品实施监督管理,而软件服务等无形商品,并不伴随有形货物进出口的,不属于海关监管范围。在海关那里碰了钉子以后,MAX ONE只好又去找税局了,税局是一门心思想要收到这笔的增值税的,于是就耐心问MAX ONE,这个的软件的服务是否都是发生在中国的境内呢?回答当然是是的,那么结论就很清楚了,因为这个服务的实施是在中国境内的,所以就要收17%的增值税了。好了,经过了一番的沟通以后,终于确定这些的软件出口的业务类型要收增值税了。
好了,终于确定了以上六种的业务类型,也确定了三种的税码,也确定了要使用MWST这种的条件类型以后,SD顾问黄伟 Wayne Huang和FI顾问朱碧梅 May Zhu就开始配置了,May负责配置税码,而Wayne负责配置条件类型;
具体的配置如下:
首先,我们确定决定税的条件有哪几个,基本上有四个,
一个是客户所在地的国家,要注意,这个客户指的是送达方ship to party,系统会去检查送达方客户主数据的国家,如果是非中国的话,那么就可以确定这笔业务是出口的业务,那么税率就可以是零了;这个国家在哪里设置呢?其实就是在客户主数据的一般数据中设置的;具体如下,你可以通过XD03或者是VD03来查看客户主数据的一般数据,如下图,如果送达方的国家是泰国的话,那么这个业务就是出口业务了,其税率为零。
一个是该客户的税的indicator指示符,就是说该客户的税码,上面我们说过,我们会帮客户设立三种税码的,分别是S1,17%税,S0,0%税和SE,免税的;可以相应的,我们也会在系统的配置中设立0,1,3等三种税指示符。你可以在客户主数据的销售数据中进行设置,我们在上面已经提到过,对于一些在中国境内,但是可以免税的客户,如在中国境内的非政府组织NGO(Non Government Office), 大使馆等,虽然他的地址是中国的,但是还是免税的;因为在客户的税码应该是设为SE,免税,而税的指示符是3,如下图,在XD03,修改客户主数据中找销售数据sales data,然后再找billing documents开票文件,在税的一栏中,把国家设为CN中国,Tax Category为MWST,而税的指示符设为3;
上面说到客户了,那么,物料呢,像避孕套等计生用品是不用税的,是免税的,因此,我们也会在物料主数据的销售视图1中维护税的指示符是3,具体的操作与客户主数据的操作相似,就是我们通过MM02进入修改物料主数据,然后选择销售视图1,在输入工厂plant和销售组织后,进入税的维护栏位,然后把国家设为CN中国,Tax Cateogry为MWST,而税的指示符为3;
我们向MAXONE超进公司的财务经理朱碧梅 May Zhu,介绍了在SAP中,税是由送达方的国家,客户和物料的税指示符而决定后,May提出了一个问题,就是如果送达方的国家是外国,应该是零税的,而客户的指示符又是1,是应该交税的,那么系统上的税应该是应税还是零税呢?
我何慕雄觉得这个问题真是问到点子上了,确实,在SAP中,如果同时有多个因素来影响一个值的话,那么一般会采用access sequence存取顺序的来解决的。
就拿这个MWST的税吧,SAP就制订了名为MWST的存取顺序,其顺序如下:
顺序1,- Departure country + Destination country(离开国家 + 到达国家,),这里的离开国家是指货物离开工厂plant的国家,而plant的国家是在做配置configuration时决定的;而到达国家是指送达方的国家;因为plant的国家一般是固定的,不能够变的,所以就由送达方的国家决定了
顺序2,Departure country + Customer tax classification + Material tax classification(离开国家+客户的税指示符+物料的税指示符),这个从字眼上就能够看清楚了,不用再做解释,这个主要是用于国内税的;
顺序3. Departure country + Destination country + Customer tax classification + Material tax classification(离开国家+到达国家+客户的税指示符+物料的税指示符),还是那句话,这个从字眼上就能够看清楚了,不用再做解释,而这个顺序主要是用于出口税的;
好了,界定了这三个顺序后,用户就根据自己的实际需求,用VK11来在系统上建立税的记录,具体如下,在输入VK11后,输入MWST的条件类型;然后,你就根据自己的实际需求来选择所需要的顺序并且是输入;
那么,在确定税的时候,系统就会一个一个按照顺序来找,如果在当前的顺序中找到了值,那么,系统就不再寻找了;而如果找不到,则继续找一下的值。好了,回应May的问题,如果国家是外国,而客户的税的指示符是1的话,系统会如何确定呢?很简单,按照存取顺序,系统会先找departure country/destination country, 而因为发货方是外国,而如果用户又已经用VK11来维护了这个国家的税的条件记录的话,那么系统就会拿发货方是外国的值,就是出口税为零,而系统也不会去看其他的顺序了。
用户的财务经理May听了以后,有点明白了,但是她是一个比较好学的,很爱研究的人,她接着又提了一个问题;既然国家country是取ship to party送达方的国家,那么,客户的税的指示符又应该去哪一种客户呢,是订货方sold to party, 送达方ship to party, 付款方payer还是开票方bill to party呢?呵呵,这个问题可就比较的复杂了,我就详细地和May解释了一下,基本上来说,税的指示符tax classification是由订货方sold to party和付款方payer决定的,具体如下:
1. 如果付款方payer有VAT税号,并且这个税号是和订货方sold to party一样的,那么VAT税号和税的指示符就由付款方payer来决定;
2.而如果上面的不成立,则如果送达方ship to party有税号而订货方sold to party没有,则税号和税指示符则由送达方ship to party来决定;
3. 而如果以上第二条不成立的话,则税号与税指示符则由订货方sold to party来决定的。
好了,客户的税的指示符tax indicator确定了。财务经理May又仔细看了看解决方案,突然,她发现好像上面说的第三种情况,海外第三方销售的问题还没有解决哦。
第三,如果海外的第三方销售,那么就是免税VAT exempt.就是说海外的客户向我们下销售订单,而我们根据该销售订单向海外的供应商下采购订单,而由海外的供应商直接向海外的客户送货.(这个可是典型的海外的买空卖空行为啊),则是免税VAT exempt;
我何慕雄看了看SAP标准的存取顺序A,B,C好像是真的没有哦,那么,我们就只能够再加一个存取顺序了,我看了一下MAXONE公司的配置,发现SD中是用一种订单类型来定义第三方销售的,而这个新的存取类型可以是sales order type + departure country + destination country + customer tax classification,订单类型+离开国家+到达国家+客户税指示符,意思是,如果订单类型是第三方销售,而离开国家和到达国家都是海外,税的指示符是3的话,那么,就是免税了。
但是,我们一般是不轻易改变SAP的标准的配置的,于是,我就问May,是否海外的第三方销售,就是海外的卖空和卖空是非常多的,答案是否定的,当然了,这个也可以理解了,在中国,有哪个客户会这么傻,专门去卖空和卖空呢?
听了我们讨论了这么久,在旁边一直不作声的客服经理Tracy问道:‘我们原来使用oracle的时候,是可以手工选择应税和免税的,现在可以吗?我说到,理论上是不可以的,因为SAP是讲逻辑严密的,是一般是不鼓励手工修改的,所以,SAP标准的税的条件类型MWST是不允许手工修改的。
但是,凡是总有例外,就像这种海外的第三方销售,买空卖空,因为发生的情况比较少,如果专门去改配置的话好像工作量比较大,所以,倒是可以采用手工修改的方法的。
而与Oracle不一样,SAP并不允许或者是建议直接去改税MWST的值,而是要去改销售订单中决定税的几个值,包括送达方的国家,和税指示码等,更灵活的是,你不但可以在header抬头对整张订单进行修改,而且,你更可以是修改某一item行项目;具体是如何呢?如果你要修改header抬头的话,那么,你可以进入VA02,修改销售订单,然后在goto-header-billing document那里去手工修改 税离开国家Tax depart. Country, 税到达国家Tax dest. Country和Alt. tax classific.税码等值,就可以了。
而如果要修改行项目呢?就要去以下的菜单了,goto- item – billing, 在里面,你只需要修改Tax classific.的值就可以了。
好了,在向用户培训后如何手工更改送达方的国家和税指示符以后,MAX公司的税务要求基本上是解决了。
但是,有一天,客服经理Tracy又跑过来问我何慕雄了,她说她有一个海外的客户,是属于出口的业务,但是,这次的生意要开增值税发票,于是,她就去订单的抬头那里去修改税的指示符tax indicator,把这个客户的指示符从0免税,改为1应税,但是订单中的MWST还是零哦,这是为什么呢?
我听了,笑着说,‘Tracy啊,你还是没有理解透access sequence存取顺序的含义啊。’正像我以前说的,现在系统中的标准顺序是
1.departure country/destination country
2. departure country/+ Customer tax classification + Material tax classification
而我说过,存取顺序的意思是,系统先看departure/destination country能不能取到值,如果取到值,那么就取该值,而不去看第二个存取顺序了;现在很明显,这个客户是海外客户,从第一个就可以取到0税的值了,那么系统就不会去看第二个customer tax classification了,所以你改了tax classification税指示符也没有用啊。如果你想要收17%的税的话,那么,你就把抬头header中的Tax dest. Country的国家改成为CN中国就可以了。
Tracy按照我说的回去改了以后,果然就可以对海外的客户收17%的增值税了。
联系客服