Magento两次申请增值税

Magento两次申请增值税,magento,Magento,我终于在我的网站上得到了增值税(tax),价格被输入到包含税的目录中。然后决定投入价值不含税。一点SQL允许我更改所有存储的价格,但是,当目录页面显示时,显示的值是错误的。。。税收被征收了两次 税率为20%,如果产品的不含税价格为10英镑,则显示为不含税12.00英镑,含税14.40英镑 如果我单击产品,则产品页面将显示正确的值10英镑和12英镑 显示目录价格的模板是catalog/product/price.phtml,在其中我看到了我不理解的代码(即,我认为它是正确的,因为这是一个使用良好的

我终于在我的网站上得到了增值税(tax),价格被输入到包含税的目录中。然后决定投入价值不含税。一点SQL允许我更改所有存储的价格,但是,当目录页面显示时,显示的值是错误的。。。税收被征收了两次

税率为20%,如果产品的不含税价格为10英镑,则显示为不含税12.00英镑,含税14.40英镑

如果我单击产品,则产品页面将显示正确的值10英镑和12英镑

显示目录价格的模板是catalog/product/price.phtml,在其中我看到了我不理解的代码(即,我认为它是正确的,因为这是一个使用良好的产品,但对我来说没有意义!)

我看到(在template/catalog/product/price.phtml中),首先设置变量

$_price = $_taxHelper->getPrice($_product, $_product->getPrice())
$_finalPrice = $_taxHelper->getPrice($_product, $_product->getFinalPrice())
$_finalPriceInclTax = $_taxHelper->getPrice($_product, $_product->getFinalPrice(), true)
调试语句显示它们将按预期返回10.00英镑和12.00英镑,然后返回14.40英镑(不按预期!)

更进一步,在输出值的地方我看到

   <span class="price-excluding-tax <?=$groupclass?>">
        <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span>
        <span class="price" id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>">
              <?php if ($_finalPrice == $_price): ?>
                    <?php echo $_coreHelper->currency($_price, true, false) ?>
              <?php else: ?>
                    <?php echo $_coreHelper->currency($_finalPrice, true, false) ?>
              <?php endif; ?>
        </span>
   </span>

在管理中,转到
设置>销售>税务>计算
-

这里将“基于税收”设置为最后一项(包裹来源,或类似的内容)。 条件并不完美

或者,您可以根据需要在购物车中相应地更改设置

如果您的代码非常完美,那么您只是缺少一些配置

此外,您还可以将所有内部选项卡用于税务计算


我希望它一定会对您有所帮助

我也花了几天时间研究这个问题,我意识到有时汇总的顺序是错误的

特别是在我的例子中,我使用了目录价格作为含税价格,我计算出了Mage_Sales_Model_Quote_Address_Total_Subtotal::collect()在Mage_tax_Model_Sales_Total_Quote_Subtotal::collect()之前运行的Mage_Sales_tax_Model_Subtotal::collect(),您可以理解的是相同的问题,查看表Sales_flat_Quote_item,当基本价格字段正确设置了不含税价格值且价格字段设置了价格总值(含税)时

您可以在app/code/core/Mage/Sales/Model/Quote/Address.php的第#1004行附近检查每个总计的collect方法的执行顺序

要解决此类问题,您必须在config.xml中定义自定义模块的总计依赖项,必要时定义

<config>

    ...

    <global>
        <sales>
            <quote>
                <totals>
                    <tax_subtotal>
                        <class>tax/sales_total_quote_subtotal</class>
                        <after>subtotal,nominal,shipping,freeshipping</after>
                        <before>tax,discount</before>
                    </tax_subtotal>
                </totals>
            </quote>
        </sales>
    </global>

    ...

</config>

...
税收/销售\总额\报价\小计
小计,标称,装运,自由装运
税收、折扣
...

再次感谢Magento让我的一天变得更加有趣

我尝试了“设置>销售>税务>计算设置>基于的税务计算方法”的所有值,也尝试了“设置>销售>税务>计算设置>基于的税务计算”的所有值,但所有值都产生相同的结果;税总是加在“无税”值上,因此,是“有税”值的两倍!Total当前它们被设置为“Total”和“Delivery Address”。看起来这一切都取决于代码
$\u product->getFinalPrice()
,该代码应该应用折扣(其中没有折扣),但实际上似乎在增加税收!有什么想法吗?
<config>

    ...

    <global>
        <sales>
            <quote>
                <totals>
                    <tax_subtotal>
                        <class>tax/sales_total_quote_subtotal</class>
                        <after>subtotal,nominal,shipping,freeshipping</after>
                        <before>tax,discount</before>
                    </tax_subtotal>
                </totals>
            </quote>
        </sales>
    </global>

    ...

</config>