我正在开展的一个项目允许客户购买能够免征增值税(通过残疾/慢性病)的产品。我在结帐流程中添加了一个额外的步骤,以便客户可以轻松填写免增值税表格。填写完该表格后,我需要从他们的报价/订单中扣除税款。
我已经做了相当多的研究来研究我如何可能做到这一点。下面是我到目前为止得到的代码,但是它可以工作,但是当我通过我们的支付提供商时,税收已经被重置。即使我使用支票/汇票付款选项。
文件:(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();
任何建议将不胜感激!