Экспорт товаров в RetailCRM через ICML

Формат ICML является расширением формата YML. Он позволяет выгружать техническую информацию о товарах в систему (ID и XML ID товаров, информация об остатках), а также сложную структуру каталогов с торговыми предложениями (SKU).
Для формирования ICML-файла экспорта в RetailCRM создайте узел в структуре сайта под узлом интернет-магазина (стандартно узел имеет путь /shop/), укажите для созданного узла название раздела, например, retailcrm, заполните основные атрибуты страницы, выберите раздел типовой динамической страницы «RetailCRM», страницу «Обмен с retailCRM». Выберите из выпадающего списка магазин, для которого необходимо создать экспорт.
Добавление раздела
В аккаунте RetailCRM в разделе «Настройки»«Магазины», во вкладке «Каталог» укажите адрес страницы (1), например, http://www.site.ru/shop/retailcrm/
URL ICML-файла
пример ICML файла

Управление свойствами товаров, экспортируемыми в RetailCRM

Опция itemsProperties() контроллера retailCRM_Controller_ICML позволяет управлять списком дополнительных свойств, указываемых для товара при экспорте в RetailCRM.
А коде настроек типовой динамической страницы можно включить экспорт дополнительных свойств товаров:
1
$retailCRM_Controller_ICML = new retailCRM_Controller_ICML($oShop);
2
$retailCRM_Controller_ICML
3
->itemsProperties(TRUE)
4
->show();
или ограничить по ID список экспортируемых свойств:
1
$retailCRM_Controller_ICML = new retailCRM_Controller_ICML($oShop);
2
$retailCRM_Controller_ICML
3
->itemsProperties(array(17,19))
4
->show();
Опция itemsForbiddenProperties() контроллера retailCRM_Controller_ICML позволяет управлять списком дополнительных свойств, которые требуется исключить при экспорте в RetailCRM
1
$retailCRM_Controller_ICML = new retailCRM_Controller_ICML($oShop);
2
$retailCRM_Controller_ICML
3
->itemsForbiddenProperties(array(11, 12))
4
->show();

Экспорт товаров, присутствующих на складе

Опция checkRest(TRUE) позволяет выгружать только те товары, которые присутствуют на складах.
1
$retailCRM_Controller_ICML = new retailCRM_Controller_ICML($oShop);
2
$retailCRM_Controller_ICML
3
->checkRest(TRUE)
4
->show();

Группировка модификаций

Опция groupModifications(TRUE) объединяет все предложения, которые являются вариациями одной модели (модификации).
1
$retailCRM_Controller_ICML = new retailCRM_Controller_ICML($oShop);
2
$retailCRM_Controller_ICML
3
->groupModifications(TRUE)
4
->show();

Экспорт модификаций

Стандартно модификации не экспортируются совместно с товарами, управлять экспортом модификаций позволяет опция modifications() контроллера retailCRM_Controller_ICML
1
$retailCRM_Controller_ICML = new retailCRM_Controller_ICML($oShop);
2
$retailCRM_Controller_ICML
3
->modifications(TRUE)
4
->show();

Создание статичных ICML-файлов через CRON для больших магазинов

Добавьте в CRON на хостинге вызов файла cron/retailcrm.php. Проверьте работу, в корневой директории будут создаваться XML-файлы по схеме retailcrm1.xml, где 1 — идентификатор магазина.
CRON задача
1
# каждый день в 00:00
2
0 0 * * * /usr/bin/php /var/www/web/sites/site.ru/cron/retailcrm.php
В аккаунте RetailCRM в разделе «Настройки»«Магазины», во вкладке «Каталог» укажите адрес страницы, например, http://www.site.ru/retailcrm1.xml