Установить произвольную стоимость доставки в заказе
Как задать заказу в Битриксе любую стоимость доставки
Чтобы задать заказу произвольную стоимость доставки, можно воспользоваться следующим кодом:
<?php
//... тут может быть какая-то логика определения цены
$sumDelivery = 1000;
$shipmentCollection = $order->getShipmentCollection(); // получаем коллекцию отгрузок
$shipment = $shipmentCollection->createItem(); // создаем отгрузку
$shipment->setBasePriceDelivery($sumDelivery); // устанавливаем стоимость доставки
$order->doFinalAction(true); // делаем перерасчет
Если вы создаете заказ через API, то дополнительно может потребоваться отключить запросы к провайдеру платежной системы.
<?php
$shipmentItemCollection = $shipment->getShipmentItemCollection();
$shipmentItemCollection->setMathActionOnly(true);
Оставьте комментарий
Если эта статья была полезной для вас, оставьте комментарий ниже или задайте интересующий Вас вопрос. Ваш опыт может помочь другим читателям!
Написать комментарий