Экспорт (выгрузка) пользовательских полей заказа из 1C-Bitrix в retailCRM
RetailCRM – это онлайн-сервис, позволяющий без труда вести коммерческую деятельность в Интернете. Он включает в себя сбор данных, аналитику и удобное управление всеми вашими заказами. 1C-Bitrix, как известно, узкопрофильная CMS, которая как раз «плавает» в этой сфере и в связке с retailCRM позволяет значительно сэкономить ваше время при ведении бизнеса.
Зачастую помимо основной информации из магазина необходимо передавать пользовательскую информацию о заказе в retailCRM для дальнейшей ее обработки. О том, как это сделать, я сегодня и расскажу.
Вся процедура экспорта данных в один конец (1C-Bitrix – retailCRM) будет состоять из нескольких несложных шагов.
Создание пользовательских полей в retailCRM
Для начала, чтобы что-то куда-то отправлять, вам необходимо подготовить место, где будет храниться экспортируемая информация.
Для примера создадим одно поле.
1. Авторизовываетесь в retailCRM.
2. В левом верхнем углу жмете шестеренку, далее выбираете раздел «Настройки», пункт «Пользовательские поля». Быстрый переход - /admin/settings/fields/new.
На открывшейся странице вы нажимаете кнопку «Добавить +».
3. В появившейся форме вы заполняете следующие данные.
Где:
- Поле для – это то, где будет отображаться поле (в заказе или в профилей покупателя);
- Название – отображаемое название поля;
- Символьный код – технический код поля, уникальный и на английском языке.
Остальное оставляете без изменений и нажимаете кнопку «Сохранить». После чего (при отсутствии каких-либо ошибок) ваше поле появится в общем списке пользовательских полей, а также в заказах (в самом низу), но там оно будет пустое, так как данные еще никакие не экспортированы.
Если вы хотите настроить отображение ваших полей в другом месте, измените значение полей «Область отображения» и «Сортировка».
Запоминаете символьный код поля и отправляйтесь на следующий шаг настройки экспорта.
Настройка экспорта пользовательских полей из 1C-Bitrix в retailCRM
Итак, для того чтобы отправить нужную вам информацию из CMS 1C-Bitrix в retailCRM, напишем не большую функцию:
function retailCrmBeforeOrderSend($order, $arFields) {
$get_order = CSaleOrderPropsValue::GetOrderProps($arFields['ID']);
while($order_detail = $get_order->Fetch()) {
// Код для одного поля
if($order_detail['CODE'] == 'FIO') {
$order['customFields']['test_field'] = $order_detail['VALUE'];
}
// Код для одного поля
}
return $order;
}
Что здесь что?
$order['customFields']['test_field'], а именно часть «test_field» – это как раз символьный код поля, который мы указывали при создании поля в retailCRM.«FIO» – это код вашего поля в 1C-Bitrix в заказе, которое и нужно передавать в retailCRM. Чтобы узнать код нужного поля, перейдите в раздел «Свойства заказа». Быстрая ссылка – /bitrix/admin/sale_order_props.php?lang=ru
Куда нужно вставлять этот код? В низ файла init.php, который может находиться по следующим адресам:
/bitrix/php_interface/init.php
/local/php_interface/init.php
/bitrix/php_interface/ID сайта/init.php
В моем случае файл был по второму пути в FTP сайта. На этом все. Если остались вопросы – задавайте их в комментариях.