← К заметкам

Заметки

Почему PRODUCT_ID из товарной позиции не находится через crm.product.get

У товарной позиции есть собственный ID строки и PRODUCT_ID товара каталога. Если передать ID строки в crm.product.get, нужный товар не найдётся.

Даже правильный PRODUCT_ID может относиться к вариации, а старый CRM-метод — не подходить для этой структуры каталога. Начните с современного метода:

BX24.callMethod('catalog.product.get', { id: 456 }, function (result) {
    if (result.error()) {
        console.error(result.error());
        return;
    }
    console.log(result.data());
});

456 здесь заменяют значением PRODUCT_ID, а не ID позиции. Далее смотрят тип объекта и, если нужно, методы товара, SKU или предложения.

У произвольной товарной строки ссылка на существующий товар может отсутствовать. Название и цена в сделке ещё не доказывают наличие отдельной записи в каталоге. Для удалённого товара история позиции также может сохраниться без доступной карточки товара.