【问题标题】:Remove tax during checkout in Magento在 Magento 结账时取消税金
【发布时间】:2013-05-03 09:46:04
【问题描述】:

我正在进行的一个项目允许客户购买能够免征增值税(通过残疾/慢性病)的产品。我在结帐流程中添加了一个额外步骤,以便客户可以轻松填写​​免增值税表格。填写完该表格后,我需要从他们的报价/订单中扣除税款。

我已经深入研究了如何可能做到这一点。下面是我到目前为止得到的代码,但是它可以工作,但是当我通过我们的支付提供商时,税收已经被重置。即使我使用支票/汇票付款选项。

文件:app/code/local/Vat/Exempt/controllers/OnepageController.php(方法:saveExemptAction()

$quote = $this->getOnepage()->getQuote();
$quote->setCustomerTaxClassId(6); // Tried forcing a custom tax class id
$quote->setCustomerGroupId(4); //also tried forcing a different customer group...

foreach($quote->getAllItems() as $item){
                   // Attempt to zero the tax on each item
                    $item->setTaxAmount(0);
                    $item->setBaseTaxAmount(0);
                    //re-calculate & save each item.
                    $item->calcTaxAmount();
                    $item->save();
                }
 $quote->collectTotals()->save();

任何建议将不胜感激!

【问题讨论】:

    标签: php magento


    【解决方案1】:

    最简单的方法是将客户组更改为不支付增值税的组(您可以在销售 > 税收 > 管理税收规则中进行定义)。
    他们填写表格后,您更改他们的组 ($customer->setGroup(self::GROUP_EXEMPT_VAT)->save();),从那一刻起,他们将不再纳税。
    让我知道这是否能解决您的问题以及您是否需要更多帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-07
      • 2014-12-13
      相关资源
      最近更新 更多