首页 > 解决方案 > Woocommerce 税收四舍五入问题

问题描述

我的设置是最新的 Woocommerce+Wordpress+WPML。我的产品是在没有税的情况下插入的,并且相关的 Woocommerce 设置设置正确。使用“小计级别的舍入税,而不是每行舍入”设置没有帮助。每个欧盟国家的税率不同。十进制设置为 2。

重现步骤:

  1. 将产品价格设置为 9.19 欧元(不含增值税)
  2. 模拟在增值税为 7% 的国家/地区进行的购买,并将 3 件商品放入购物车

这就是发生的情况:Woocommerce“内部”计算购物车行:9.19€+7%(VAT) = 9,8333€ x 3 = 29,4999€ ====> 然后 Woocommerce 小计为 29.50€ 并显示到用户。似乎 Woocommerce 使用 4 位十进制数字进行内部计算……但我的商店仅向用户显示 2 位数字。

所以...购物车中的用户看到:9.83 欧元(显示给用户的价格,含 7% 增值税)。

所以对于用户来说 9.83€ x 3 = 29,49€ 而不是 29.50€!!!!

我知道只有 1 美分,但这会导致客户和我们的外部发票系统出现问题(使用用户的“同一行”9.83 欧元 x 3 = 29.49 欧元)。

我怎样才能解决这个问题?无论如何设置 Woocommerce 只使用 2 个十进制精度数而不是像现在这样的 4 个十进制数来进行数学运算?有没有人找到解决方法或类似方法?

注意:我之前做过一些搜索(也在stackoverflow中),但我找到了所有旧线程。像这样: https ://github.com/woocommerce/woocommerce/issues/14458让我尝试这个https://github.com/woocommerce/woocommerce/pull/14475#issuecomment-306742617但没有运气。

标签: woocommercerounding-errortax

解决方案


我有同样的问题,但只有当产品数量超过 2 时。例如 13,09。它显示 6.55 而不是 6.545。

这是反向模式下的匹配计算问题。在 Json 和原始数据中,我们可以获得 4 位数字,但对于显示和税收计算只有 2 位数字。对此最好的方法是输入所有不含税的价格,包括运费。但并非在所有情况下我们都可以使用不含税的价格模型。


推荐阅读