Интеграция 1С-Битрикс с 1С

Интеграция 1С-Битрикс с 1С — проект Василия Киреева
Для повышения эффективности продаж был настроен обмен остатками товаров и заказов между сайтом 1С-Битрикс и программой складского учета 1С: Управление торговлей.

Причины

Для масштабного роста компании и продаж интернет-магазинов Roof-Rack.ru, Green-Battery.ru, Worx Tools Russia и других, была необходима интеграция сайта на 1С-Битрикс с программой складского учета 1С: Управление торговлей. Обмен информации должен был осуществляться по двум направлениям.

  • Загрузка информации о количестве товаров на складах на сайт.
  • Передача заказов в 1С.

Стандартная интеграция не подходила по следующим причинам.

  • Из единой базы 1С было необходимо выгружать отдельные номенклатуры для каждого сайта.
  • В 1С товары хранились без характеристик, а на сайтах использовались торговые предложения.
  • В ассортименте компании были товары и торговые предложения, которые продавались на сайте, как один комплект, но собирались из 3 разных товаров в 1С. Багажники на Roof-Rack.ru собирались из комплектующих: дуга, опора, аксессуары для крепления; комплектации техники на Green-Battery.ru могли включать помимо товара аккумулятор и зарядное устройство в комплекте либо поставляемым производителем, либо собираемом на складе.

Обновление остатков товаров

Для выгрузки остатков товаров на стороне 1С был настроен штатный обмен с сайтом, который создавал на FTP-сервере 1С в папке webdata файлы import0_1.xml и offers0_1.xml.

Были настроены соглашения о продаже, без которых для обновления было нужно импортировать сначала import0_1.xml для загрузки внешнего кода по артикулу, а затем offers0_1.xml для загрузки товаров по внешнему коду. После настройки соглашений вся необходимая информация выгружалась в offers0_1.xml.

Для гибкого обновления остатков товаров интернет-магазинов Roof-Rack.ru, Green-Battery.ru, Worx Tools Russia и других сайтов компании использовался модуль Импорт из XML/YML от esolutions.su. Профиль модуля загружал XML-файлы и, при необходимости производил манипуляции с остатками.

Профили обновления остатков были добавлены в cron и последовательно загружались в следующем порядке.

  1. Остатки ключевого товара в комплекте. Для багажников это была поперечная дуга, а для садовой техники — товар без аккумулятора и зарядного устройства.
  2. Другие товары в комплекте, остатки которых обновлялись, если товаров было меньше. Если у багажника опор или крепежа меньше, чем дуг, а у инструментов аккумуляторов и зарядок меньше техники, то общее количество товаров в комплекте считается по наименьшему.
  3. Остатки основного ассортимента. При наличии информации, что это составной комплект техники, который также поставляется производителем, количество не переписывалось, а добавлялось к имеющемся остаткам. Если на сайте нет составных комплектов, это единственный профиль обновления ассортимента.

Манипуляции обновлением и суммированием остатков производились отдельно для каждого склада с сопоставлением внешних кодов, и доступное количество насчитывалась, как сумма остатков по складам. При этом, если была загружена информация об артикуле других составных частей комплекта, но не было внешнего кода какой-то составной части, остатки обнулялись, потому что это значило, что товара нет в 1С.

Передача заказов сайта в 1С

В компании использовалась версия 1С, для которой не было модуля 1C-Битрикс: Управление сайтом. Поэтому первоначальная интеграция настраивалась с помощью штатного обмена заказами 1С.

Системный интегратор Ипол доработал обмен. Передача данных из 1С в 1С-Битрикс была заблокирована для повышения стабильности работы с единым ассортиментом на нескольких сайтах.

Торговые предложения сайта сопоставлялись с номенклатурой 1С без характеристик. Для корректной передачи составных товаров в 1С были настроены наборы номенклатуры. Если какой-то товар с сайта не сопоставлялся с товаром в базе, из заказа 1С удалялись все товары.

Кроме этого были сделаны незначительные доработки для удобства работы сотрудников.

После обновления 1С до свежей версии, был установлен модуль 1C-Битрикс: Управление сайтом, перенесены и адаптированы необходимые доработки для штатного обмена, а также автоматизированы действия по установке соглашений, организаций и проведению оплат.

Результаты

Передача остатков на сайт повысила эффективность работы электронной коммерции. Это позволило:

  • работать с маркетплейсами без риска не отгрузить товар, которого нет в наличии, и получить санкции площадок;
  • добавить в корзину возможность оплатить товар без подтверждения заказа менеджером;
  • улучшить факторы ранжирования сайта в поисковых системах за счет актуальной информации о товарах в микроразметке.

Передача заказов с сайта снизила нагрузку на сотрудников, работающих с 1С, и повысила эффективность их работы.