Пример получения информации о торговых предложениях товара через API 1С-Битрикс (php) – доступно из любого скрипта с подключенным PROLOG, проверялось на Управление сайтом 20.0.1650. (версия модуля интернет-магазин 20.0.687)
<?php
$IBLOCK_ID = 1; // id инфоблока товаров
$IDS = array(1, 2, 3); // id товаров, по которым нужно получить торговые предложения
// получаем товары
$arSelect = Array('ID', 'NAME');
$arFilter = Array('IBLOCK_ID' => $IBLOCK_ID, 'ID' => $IDS);
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array(), $arSelect);
// по товарам получаем торговые предложения
while ($ob = $res->GetNextElement()) {
$arElement = $ob->GetFields();
$mxResult = CCatalogSKU::getOffersList(
$arElement['ID'],
0,
array('CATALOG_AVAILABLE' => 'Y', 'ACTIVE' => 'Y'), // берем только активные и в наличии
array('ID', '*'),
array()
);
if (is_array($mxResult[$arElement['ID']])) {
foreach ($mxResult[$arElement['ID']] as $sku) {
// выводим массив с данными о торговых предложениях
print '<pre>'; print_r($sku); print '</pre>';
}
}
}