【问题标题】:How to let Magento calculate free shipping on Total Order Incl. TAX如何让 Magento 计算 Total Order Incl 的免费送货。税
【发布时间】:2015-03-19 16:10:37
【问题描述】:

我使用 magento 1.9.1 到处寻找解决方案。我的商店有两种不同的税,分别是 6% 和 21%;magento 在为订单提供免费送货时会查看这些税。

我设置了餐桌费率,其中 45 欧元以上应该可以免运费。现在它以 56 欧元左右的价格提供免费送货服务(减去 21% 的税费,您的价格大约为 45 欧元)。我该如何解决这个问题?

(PS:Magento 1.9.1 似乎没有查看 app/code/core/Mage/Shipping/Model/Carrier/freeshipping.php,因为编辑此文件后没有任何变化)

【问题讨论】:

  • 您确定您的设置正确吗?即销售 > 税 > 计算设置 > 运费设置为“含税”?
  • 是的,我 100% 确定。 oi61.tinypic.com/mukfas.jpg

标签: magento


【解决方案1】:

要在根据表格费率计算运费时考虑税费(无论免费或非免费送货),您可以扩展 Mage_Shipping_Model_Carrier_Tablerate。当然,最好在自己的扩展中这样做,但您也可以在本地代码池中覆盖它。由于这更快并且为了演示,我将展示:

app/code/core/Mage/Shipping/Model/Carrier/Tablerate.php 复制到app/code/local/Mage/Shipping/Model/Carrier/Tablerate.php。现在在其collectRates(Mage_Shipping_Model_Rate_Request $request) 函数中// Free shipping by qty 上方添加以下代码:

if (Mage::helper('tax')->priceIncludesTax()) {
            foreach ($request->getAllItems() as $item) {
                $request->setPackageValue($request->getPackageValue() + $item->getTaxAmount());
            }
        }

这样,计算的基础将包括您的税费。这是第一次讨论(据我所知)在这里:https://magento.stackexchange.com/questions/26434/shipping-method-table-rates-magento-v-1-7-always-include-tax-in-order-subtota

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多