微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Magento 2 在 Paypal 结账时丢失税务信息

如何解决Magento 2 在 Paypal 结账时丢失税务信息

我们有一个 Magento 2.1.7 实例正在运行,最近发生了 Paypal 订单问题。

我不知道从一天开始到另一天发生了什么。

我们有 2 种不同的税收规则,优先级均为 0。一种是 16% 的运费,一种是 5% 的产品。

我们商店中的主要产品可配置为数量 1,因此我们在 vendor/magento/module-paypal/Model/Express.PHP 放置方法中应用了修复程序,因为 magento 尝试两次预订产品。在此处查看说明https://github.com/magento/magento2/issues/6296#issuecomment-259044656

$this->_quote = $this->quoteRepository->get($this->_quote->getId());

问题是,在结账过程的某个地方,订单丢失了表 sales_order_tax_item 的信息,只用正确的值写入 sales_order_tax。由于有人能够部分开具发票或 magento 由于退款而每次都尝试重新计算,因此计算的税率错误的。

假设我们的总税额为 5 欧元,magento 显示 5% 和 16% 的税率为 1.37 欧元,正确的金额是 16% 的 1.37 欧元和 3.63 欧元的5%。

正常订单计算仍正确,sales_order_tax_item 写入正确。

发票 pdf 的税费计算说明了这些错误值,就像管理面板中的发票视图一样。对于订单邮件,如果发生此错误,至少不会显示单独的税务信息。

我们配置了在 pdf/admin/mail 中显示完整的税款和单独的税款,如果不使用 paypal 支付就可以了。

有人能给我一个从哪里开始搜索提示吗,或者在下订单之前在订单流程中是否有一个好的地方可以重新计算 sales_order_tax_item 信息?

好像只写sales_order_tax表的编码部分好像是vendor/magento/module-tax/Model/Plugin/OrderSave.PHP

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。