Внимание. Перед изменением необходимо сделать резервную копию базы данных (для возможности восстановления), так как изменения носят массовый характер.
Для простановки НДС с указанным ID ставки (его можно посмотреть в разделе системы управления: Магазин -> Настройки -> Налоги -> Ставки НДС, в примере это “VAT_ID = 3”), необходимо выполнить следующий PHP-код (например, из раздела системы управления: Настройки -> Инструменты -> Командная PHP-строка.
Для простановки товарам, у которых НДС не установлен:
global $DB;
$DB->Query("UPDATE b_catalog_product SET VAT_INCLUDED = 'Y', VAT_ID = 3 WHERE VAT_ID IS NULL"); Для простановки всем товарам (в т.ч. тем, у которых НДС уже стоит):
global $DB;
$DB->Query("UPDATE b_catalog_product SET VAT_INCLUDED = 'Y', VAT_ID = 3"); Дополнительно. Если сайт интегрирован с системой 1С и товары загружаются из нее, то желательно также изменить свойство товара “CML2_TAXES”, которое могут использовать некоторые внешние системы и которое может из 1с также приходить заполнено неверным. Сделать это можно с помощью следующего PHP-кода:
$oldValue = 20; // старое значение ндс, которое нужно заменить
$newValue = 22; // новое значение ндс, которое нужно поставить взамен старого
$iblockId = 2; // ID информационного блока с каталогом
if (CModule::IncludeModule("iblock")) {
$res = CIBlockElement::GetList([], ['IBLOCK_ID' => $iblockId, 'PROPERTY_CML2_TAXES' => $oldValue], false, [], []);
while ($el = $res->GetNextElement()) {
$fields = $el->getFields();
CIBlockElement::SetPropertyValues($fields['ID'], $iblockId, $newValue, 'CML2_TAXES');
}
} Проверялось на 1с-Битрикс: Управление сайтом 20.0.1650. (версия модуля интернет-магазин 20.0.687).