Добавление товара в корзину (D7) - sidigi/bitrix-info GitHub Wiki

Добавление товара

//количество
$quantity = 1;

//ID товара (торговый каталог)
$productId = 233;

// Получение корзины для текущего пользователя
$basket = \Bitrix\Sale\Basket::loadItemsForFUser(
   \Bitrix\Sale\Fuser::getId(), 
   \Bitrix\Main\Context::getCurrent()->getSite()
);

if ($item = $basket->getExistsItem('catalog', $productId)){

   //Обновление товара в корзине
   $item->setField('QUANTITY', $item->getQuantity() + $quantity);
}else{

   //Добавление товара
   $item = $basket->createItem('catalog', $productId);
   $item->setFields([
      'QUANTITY' => $quantity,
      'CURRENCY' => \Bitrix\Currency\CurrencyManager::getBaseCurrency(),
      'LID' => \Bitrix\Main\Context::getCurrent()->getSite(),
      'PRODUCT_PROVIDER_CLASS' => \Bitrix\Catalog\Product\Basket::getDefaultProviderName() ,
   ]);
}

//Сохранение изменений
$basket->save();

Полезные ссылки