Потратил много времени, что бы понять, почему не работают скидки.
Оказалось всё просто - при добавлении товара в корзину методом CSaleBasket::Add обязательно нужно указывать параметры:
Без них не будут применяться правила работы с корзиной.
Печально, что в документации к методу об этом ничего не сказано.
И... так и не понял зачем так сделано - не считать скидку без именно таких параметров.
Оказалось всё просто - при добавлении товара в корзину методом CSaleBasket::Add обязательно нужно указывать параметры:
"MODULE" => "catalog", "PRODUCT_PROVIDER_CLASS" => "CCatalogProductProvider", |
Без них не будут применяться правила работы с корзиной.
Печально, что в документации к методу об этом ничего не сказано.
И... так и не понял зачем так сделано - не считать скидку без именно таких параметров.