• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/order/productmanager.php
  • Класс: Bitrix\Crm\Order\ProductManager
  • Вызов: ProductManager::getProductTaxRate
private function getProductTaxRate(array $product): float
{
	if (isset($product['taxRate']))
	{
		return (float)$product['taxRate'];
	}

	$taxId = $product['taxId'] ?? null;
	if (!$taxId)
	{
		return 0.0;
	}

	if (!isset(self::$taxRates))
	{
		self::$taxRates = [];

		if (Loader::includeModule('catalog'))
		{
			$rows = VatTable::getList([
				'select' => [
					'ID',
					'RATE',
				],
				'cache' => [
					'ttl' => 86400,
				],
			]);
			foreach ($rows as $row)
			{
				self::$taxRates[$row['ID']] = (float)$row['RATE'];
			}
		}
	}

	return self::$taxRates[$taxId] ?? 0.0;
}