Как получить налоговую ставку на товар

8

Я пытаюсь получить налоговую ставку (просто стоимость) для продукта. Я могу получить идентификатор налогового класса $product->getTaxClassId().

Это кажется невероятным, но я не могу найти способ получить ценность. Не Цена с включенным налогом или суммой налога, но процент, примененный к окончательной цене.

Кто-нибудь может помочь?

Заранее спасибо.

Pymoo
источник

Ответы:

26

Чтобы получить налоговую ставку, вам необходимо выполнить налоговый запрос. Это можно сделать с помощью следующего кода.

$store = Mage::app()->getStore('default');
$taxCalculation = Mage::getModel('tax/calculation');
$request = $taxCalculation->getRateRequest(null, null, null, $store);
$taxClassId = $product->getTaxClassId();
$percent = $taxCalculation->getRate($request->setProductClassId($taxClassId));

Здесь вы берете магазин и делаете запрос расчета налога. Вы также можете указать адрес доставки, адрес выставления счета и идентификатор налогового класса клиента, но в этом случае я установил для них значение NULL, и он примет значения по умолчанию, заданные в разделе налогов для конфигурации администратора.

Затем вы берете объект запроса налоговой ставки и назначаете идентификатор класса продукта, который у вас уже есть, и затем вы можете запросить саму ставку.

Дэвид Мэннерс
источник
Спасибо, Дэвид. Я пробовал другие фрагменты кода безрезультатно, но вы человек!
Pymoo
Я использовал это, но мне нужна была только информация для одного из моих магазинов (создание фида товаров Google) и я столкнулся с проблемой, используя идентификатор магазина в методе getRateRequest (), так как он ищет объект магазина, а не идентификатор магазина. Я заменил идентификатор магазина на «default» в методе getStore (), и все хорошо. Спасибо.
Джон