我试图重现你所描述的:
通过WooCommerce上的VAT设置,我为特定邮政编码设置了一个额外的零税规则-不幸的是,结果是一行零税,一行标准VAT,而不是所需的零税行。
然后,我尝试在德国设置标准税收规则,以排除单一邮政编码,使用1-xxxxx和xxxxx-99999,其中xxxxx分别是邮政编码下方和上方的数字。这导致了WooCommerce显然不喜欢的一项庞大的税收规则,因为它在任何时候都会关闭任何地区的任何形式的税收。
测试您的设置和遇到的行为/问题<但是我不能,这对我有用。我不介意排除一个特定的邮政编码。
Screenshot:
我进去了00001-66665;66667-99999
适用于应税地区/邮政编码;和66666
对于排除的一个。然后我在结帐页面上测试了这个,它每次都会正确更新,这意味着,对于德国,没有或准确地说是0%的税,邮编66666,其他所有邮政编码都是50%的税。另外,我测试它的开发环境有woocommerce v2。已安装0.13。
是这样的:
我有一个WooCommerce网站和一个特定的分销商,他们将把产品从应税地区(德国)重定向到非应税地区(俄罗斯)。由于形式多样,这使得它们不含增值税。
只是提供信息?或者,它是否描述了您实现的功能?
总的来说,没有足够的信息(也没有代码)来进一步调查可能存在的问题。我不得不猜测。但可以肯定的是,你的问题可能源于其他地方。
Edit:
就像我说的,以上这些对我来说很有用。我意识到的一件事是,执行排他规则
wp_woocommerce_tax_rate_locations
从
48KiB
到
13.5MiB
. 考虑到这一点,我想这是合乎逻辑的
99999
单数条目不断增加,但真的很荒谬。我刚刚添加了上面显示的3条规则,假设你对几个国家/州/邮政编码这样做,在我看来这是有严重缺陷的。根据您的服务器(设置),这可能是一个问题,因此这可能是它对我有效而对您无效的原因<这就考虑到我在考虑另一种方法。你一定读过
Setting up Taxes in WooCommerce, 如你所知
priority
用于分层税收规则,因此这没有帮助。在我看来,woocommerce的整个优先权概念是违反直觉的,它应该用于相同国家/州/邮政编码的不同排除规则,尤其是因为这可能是更常见的情况。第二种选择是分层征税。但与文档说明一样:
每个优先级仅使用1个匹配率。
这就是订单的相关之处,就像@Gerhard建议的那样。我在想的另一点是,认真地说,控制这种情况的唯一方法是拖放东西。好了,我想一篇帖子就够抨击woocommerce了,可能大多数人都对此感到满意。回到您的问题,如果顺序正确,您可以使用通配符和额外规则进行设置。
Screenshot:
这对您的案例有效,至少在我的开发环境中有效。一个最大的优点是,不涉及数千个数据库条目。当然,这只是因为你只排除了一个特定的邮政编码。