Tutorial по обмену с 1С. Часть пятая: Наш опыт настройки 1000 и 1 обмена
В своей предыдущей статье я начала раскрывать тему того, как правильно настраивать обмен между крупными сайтами и B2B-системами на Битрикс с системами учета 1С:Предприятие.
Если еще не читали — посмотрите, будет полезно, типовой модуль обмена многое умеет, а то, что не умеет — можно обойти и доработать.
В этой статье коснемся кастомизации и отладки обмена, а также выгрузки оффлайн-заказов.
1. Кастомизация обмена
Практика – это не то, что вы делаете,
когда становитесь мастером.
Практика – это то, что делает вас мастером.
Малколм Гладуэлл
Кастомизация предполагает уникальное для конкретного проекта изменение типовой логики и конечного результата обмена — без модификации ядра 1С-Битрикс, с сохранением возможности обновления платформы (если, конечно, вы не хотите потом получить претензию от владельца сайта).
Если есть штатный вариант решения задач проекта без кастомизации — именно его и стоит выбрать. Например, воспользоваться событиями или выгрузить дополнительные данные справочником.
Кастомизация, так или иначе, может «выстрелить в ногу» при серьезных обновлениях модулей обмена 1С и/или сайта.
Если кастомизация все же требуется — постарайтесь ограничить степень своего вмешательства в логику обмена написанием обработчиков для типовых событий платформы 1С-Битрикс, к числу которых относятся, например:
- события информационных блоков (при импорте номенклатуры на сайт):
- событие добавления элемента инфоблока (onAfterIBlockElementAdd),
- событие обновления элемента инфоблока (onAfterIBlockElementUpdate) и другие.
- события highload-блоков (в ответ на импорт справочников), к примеру:
- перед добавлением записи в highload-блок (OnBeforeAdd),
- до изменения записи в highload-блоке (OnBeforeUpdate).
Работаем с highload-блоками мы как с таблицами, создавая ORM сущности в Битрикс D7 и используя встроенные события ORM .
- события модуля «Интернет-магазин» (при работе с заказами) такие, как:
- событие начала сохранения заказа (OnSaleOrderBeforeSaved),
- событие завершения сохранения заказа и связанных сущностей (OnSaleOrderSaved),
- событие отмены заказа (OnSaleBeforeOrderCanceled) и прочие.
- события модуля «Торговый каталог» (для товаров, типов цен, цен, складов, остатков; включает события импорта каталога из 1С). Особенно интересными здесь являются:
- события OnBeforeCatalogImport1C и OnSuccessCatalogImport1C компонента bitrix:catalog.import.1c, срабатывающие до и после успешной обработки xml-файла обмена при импорте каталога. Вызываются они несколько раз за один обмен (так как и файлов в обмене несколько — import_***.xml, offers_***.xml, prices_***.xml, rests_***.xml).
- Недокументированное событие OnCompleteCatalogImport1C того же компонента bitrix:catalog.import.1c, сигнализирующее о полном завершении импорта каталога.
Примеры ситуаций, когда мы можем использовать обработчики событий:
- Для товаров с торговыми предложениями (SKU) нужно рассчитать минимальную и максимальную цену (в свойствах товара) для вывода в публичной части сайта.
- В зависимости от цены требуется изменить статус товара.
- Необходимо установить значение поля «Коэффициент единицы измерения» товара каталога из свойства «Кратность», заполняемого в 1С (для продажи товаров на сайте только по числу, кратному импортированному значению, например, когда шурупы продаются не поштучно, а по 100 штук).
- Нужно создать/изменить пользователя сайта и его профиль покупателя в ответ на импорт справочников контактных лиц и контрагентов из 1С.
- Требуется заполнить служебное свойство вновь созданного онлайн-заказа для корректной связи этого заказа на стороне 1С с существующим там контрагентом (XML_ID контрагента).
Примеров может быть масса.
Раскрывая тему кастомизации обмена, расскажу о том, как можно и как правильно импортировать на сайт скидки каталога из 1С. Типовой обмен не предусматривает импорта скидок на товары каталога (кроме скидок, зависящих от количества товара в заказе), а скидки часто нужны. Кастомизация здесь рассматривается в контексте подхода к реализации задачи, а не в плане изменения кода типового модуля обмена с 1С Битрикс. Есть несколько решений:
- Завести в 1С дополнительные типы цен, уже учитывающие величину скидки.
Здесь есть ограничения:
- Если типов скидок в 1С очень много (например, это персональные скидки, и все скидки рассчитываются вручную), более 50 штук, то импорт номенклатуры с ними будет происходить оооооооооооооочень медленно, потому что будет выгружаться декартово произведение всех товаров на все типы цен. И это вариант не подойдет.
- Редакция «Малый бизнес» 1С-Битрикс позволяет импортировать из 1С только один тип цены, поэтому придется либо расширить используемую редакцию сайта, либо найти другой способ выгрузки скидок номенклатуры из 1С.
- Выгрузить одну базовую цену, общую для всех покупателей (в таком виде она будет отображаться в умном фильтре и списке товаров). А на детальной странице товара, в корзине и при оформлении заказа запрашивать из 1С реальную цену товара для текущего пользователя в real-time режиме.
- Выгрузить скидки из 1С в виде справочника (в highload-блок).
На события создания/изменения элементов highload-блока скидок установить создание/редактирование кастомных битриксовых скидок через API «Товарного маркетинга» 1С-Битрикс.
Этот вариант подходит и для сложных персональных скидок, даже когда их очень много.
Если добавление обработчиков событий не позволяет решить задачи проекта (например, когда модуль обмена на стороне 1С-Битрикс в принципе не подразумевает распознавание и сохранение необходимых приходящих из 1С данных), приходится кастомизировать компонент обмена на стороне сайта. Делать это нужно следующим образом:
1. Скопируйте стандартную страницу обмена по адресу /bitrix/admin/1c_exchange.php и назовите ее, например, /bitrix/admin/1c_custom_exchange.php.
2. На скопированной странице в зависимости от переданных параметров запроса вызывается тот или иной битриксовый компонент обмена:
- sale.export.1c (обмен заказами)
- catalog.import.1c (импорт каталога товаров из 1С на сайт)
- catalog.import.hl (импорт справочников)
- catalog.export.1c (экспорт каталога товаров с сайта в 1С)
Определите, в логику какого компонента необходимо внести изменения.
Скопируйте этот компонент в свое пространство имен и подключите уже свой компонент на странице 1c_custom_exchange.php (типовая схема кастомизации компонентов, принятая в 1С-Битрикс).
Не забудьте сделать отдельный коммит в системе контроля версий сразу после копирования типового компонента, чтобы по истории git можно было потом понять, что именно вы изменили.
3. Внесите необходимые изменения в кастомизируемый компонент обмена.
Подобные компоненты используют системные битриксовые классы (например, классы модуля «Интернет-магазин», /bitrix/modules/sale/lib/exchange).
Вы можете создать собственные классы для задач кастомизации обмена с 1С, унаследовав их от системных классов обмена ядра Битрикс.
В своих классах можно переопределять методы родительских классов и дописывать свои.
Для того, чтобы минимально влиять на логику ядра в переопределяемом методе вызывайте аналогичный метод родительского класса.
Используйте ваши классы в кастомизированном компоненте обмена.
4. В настройках узла обмена в 1С измените адрес, по которому 1С отправляет запрос для старта
обмена с сайтом, на ваш (например, /bitrix/admin/1c_custom_exchange.php).
5. Проведите ревью и рефакторинг кода, тщательно опишите созданные методы и классы. Ваш код должен быть масштабируемым, понятным, обновляемым (должен позволять обновлять ядро 1С-Битрикс и работать корректно после обновлений).
6. Будьте людьми, составьте подробную и понятную хоть какую-нибудь документацию по проведенным работам для владельца сайта и специалистов, которые будут работать с проектом в будущем.
Описанный процесс разработки позволяет решать широкий спектр задач, поддерживая при этом философию разработки самого Битрикса и одновременно учитывая требования и потребности конкретного бизнеса.
2. Отладка обмена. Не бойтесь погрузиться глубоко в ядро.
Чтобы исправить ошибку, ее нужно уметь повторить.
Инженерная мудрость
В программировании — как в жизни: ваш успех в задаче зависит от ваших личных качеств и способности продолжать идти к намеченной цели, сМИРенно и достойно принимая все неудачи и непредвиденные трудности. Какая бы проблема ни встретилась на пути — примите ее с благодарностью, в итоге это сделает вас сильнее и повысит ваш профессиональный уровень.
Новички обычно теряются, когда сталкиваются с непонятными ситуациями, начинают гуглить, искать помощи у коллег. Это нормально и в типовых случаях может помочь.
Но в теме обмена, а особенно при его кастомизации, этот прием чаще всего окажется малоэффективен.
Нужно углубляться в код, а это означает, что потребуется отладка.
Отладку на бою не делают — нужна копия сайта. А еще лучше и копия 1С.
На момент написания статьи обмен — это X компонентов + Y классов на ZZZZZZZ тысяч строк кода, и слабонервным туда погружаться страшно.
Но все не так печально. Советую прийти к общему пониманию того, что происходит, когда вы запускаете обмен, что и в каком виде передается. И это уже всего лишь 4-7 файлов обмена и 1 типовой сценарий выгрузки .
Начинать отладку причины конкретной проблемы в существующем обмене нужно с анализа того, что на самом деле приходит на сайт из 1С в xml-файле обмена (или отправляется с сайта).
Для этого в 1С (вкладка «Настройка параметров обмена» / «Хранение логов» узла настройки обмена с сайтом) включите логирование и сохранение логов обмена на сайте.
В Битриксе объявите константу BX_CATALOG_IMPORT_1C_PRESERVE .
Запустите обмен, дождитесь его завершения и приступите к изучению файлов в папке /upload/1c_catalog/ сайта.
Сопоставьте данные по конкретным элементам на сайте и в xml-файлах обмена.
Возьмем такой кейс. В 1С меняется свойство товара каталога (например, “Сезонная распродажа”), а на сайте оно не обновляется. Обмен настроен на выгрузку изменений. Как будем отлаживать эту ситуацию:
- Поскольку нас интересует свойство товара — находим import.xml в файлах прошлого обмена в папке /upload/1c_catalog/.
- Уточняем конкретный товар, на котором наблюдаем проблему. Проверяем, что в 1С установлено новое значение свойства, а на сайте оно старое — ошибка точно есть.
- Ищем данные по товару в файле import.xml. Скорее всего, нужное свойство будет находится в узле . Нам нужно проверить, что пришло из 1С на сайт по данному свойству для искомого товара. Предположим, что в файле мы вообще не находим нужного товара (напомню, что в нем изменилось только свойство) — он вообще не попал в выгрузку изменений 1С.
- Проверяем, установлена ли опция «Использовать контрольные суммы элементов для оптимизации обновления каталога» в форме настройки интеграции с 1С. Включена.
- Сверяем контрольные суммы тестируемого товара на сайте и в 1С. Они одинаковые, а значит 1С думает, что товар не был изменен, и не добавляет его в очередной обмен изменений.
- Скорее всего, установка свойства на стороне 1С происходит кастомно. Ставим специалисту 1С задачу на пересчет контрольной суммы товара после кастомной установки свойства. Я уже писала о контрольных суммах в предыдущей статье.
В том случае, если проблема находится на стороне сайта (в xml-файле приходят данные, идентичные 1С) — может потребоваться отладка, логирование и анализ соответствующей части кода ядра на стороне Битрикс (компонентов и классов обмена).
Это не страшно, но требует времени и внимания, а еще важно потом откатить свой код отладки к первоначальному состоянию.
Мы отлаживаем обмен часто. Очень часто. И даже написали собственный модуль отладки обмена сайта с 1С. Он пошагово логирует весь процесс обмена номенклатурой, заказами и справочниками, предоставляет информацию о возникающих в процессе ошибках, позволяет построить диаграмму Ганта за интересующий временной промежуток, следит за размерами логов и сроками их хранения. С его помощью можно изучить копии xml-файлов выгрузки (ссылки на них есть в общей таблице логов) и список GET-параметров запросов из 1С. Доступен поиск по логам (нужен, например, для поиска данных конкретного товара в файлах обмена по его артикулу или названию). Логирование можно настраивать. Удобно.
Интерволга. Пример логов модуля отладки обмена с 1С
Интерволга. Логирование обмена с 1С. Диаграмма Ганта
Интерволга. Настройки логирования обмена с 1С
3. Оффлайн заказы из 1С
Но мед это очень уж хитрый предмет —
Всякая вещь или есть, или нет.
А мед — я никак не пойму в чем секрет —
Мед если есть — то его сразу нет.
Песенка про мед Винни Пуха
Оффлайн заказы обрабатываются и хранятся в той же системе учета 1С, обмен с которой настраивается для сайта.
Оффлайн заказ приходит в 1С из любого другого источника, кроме интегрируемого сайта, например, из оффлайн магазина или внешней системы, связанной с той же 1С (например, с другого сайта или учетных систем Axapta и SAP).
В нашей практике задача настройки обмена оффлайн заказами между 1С и сайтом встречается не часто, но запросы и реализованные проекты есть в достаточном количестве.
Импорт оффлайн заказов на сайт имеет смысл для бизнеса, имеющего долгую историю работы с клиентами, когда:
- нужно предоставить возможность частого повторения предыдущих заказов;
- на сайте реализована дисконтная программа, связанная с объемом выкупа;
- нужно предоставить визуальный интерфейс для отслеживания движения оффлайн заказов клиентов.
Импорт оффлайн заказов всегда подразумевает предварительную выгрузку номенклатуры, пользователей и контрагентов из 1С. Это необходимо для корректной привязки заказа к пользователям сайта, а товаров в нем к каталогу. Вопрос импорта пользователей и номенклатуры мы поднимали в предыдущей части статьи.
Штатный модуль обмена систем 1С-Битрикс: Управление сайтом и 1С прежде всего решает задачи передачи онлайн заказов с сайта в 1С. А вот импорт оффлайн заказов на сайт, несмотря на заявленную коробочную поддержку, работает довольно ограниченно и в большинстве случаев требует кастомизации.
Рассмотрим некоторые проблемы штатного импорта оффлайн заказов из 1С на сайт, с которыми мы встречались на практике.
Реквизиты и свойства оффлайн заказов
Если вы успешно настроили экспорт онлайн заказов с нужными свойствами и дополнительными реквизитами с сайта в 1С (профили обмена формы «Интеграция с 1С:Предприятие») и затем в аналогичной структуре данных xml импортируете оффлайн заказы, то по умолчанию не все поля, свойства и реквизиты будут сохранены. Чувствуется некоторое разочарование 🙁
По оффлайн заказам 1С-Битрикс импортирует лишь фиксированный список полей и реквизитов. Список зашит в код и не учитывает всех настроек профилей обмена.
Для заказа импортируются : узлы «Номер1С», «НомерВерсии», «Время», «Налоги», «Товары»; реквизиты «Статуса заказа ИД» (да, да, именно “СтатусА”), «Дата оплаты по 1С», «Дата отгрузки по 1С», «Отменен».
Для контрагента импортируются узлы «Ид», «НомерВерсии», «ОфициальноеНаименование», «ПолноеНаименование», «Наименование», «ИНН», «КПП», «КодПоОКПО», «ЕГРПО», «ОКВЭД», «ОКДП», «ОКОПФ», «ОКФС», «АдресРегистрации», «ЮридическийАдрес», «Адрес», «Контакты», «Представители».
В процессе тестирования и отладки обмена оффлайн заказами по указанным полям бывает нужно дополнительно (к настройкам, произведенным по онлайн заказам) настроить профили обмена на стороне сайта, чтобы данные сохранялись в нужном месте.
Для импорта других данных нужно написать немного кода… . .
В нашей практике, например, не хватало данных по импортируемым свойствам (в т.ч. реквизитам) оффлайн заказов, а также по банковским сведениям («Наименование банка», «БИК», «Расчетный счет», «Корреспондентский счет»).
Правильно, если кастомизация импорта оффлайн заказов будет учитывать список существующих на сайте свойств заказов по типам плательщиков и настройки профилей обмена с 1С (на уровне кода это потребует работы с таблицей свойств b_sale_order_props и таблицами дополнительных реквизитов профилей обмена b_sale_bizval и b_sale_bizval_code_1c).
Количественный учет и резервирование товаров.
Перед тем, как я раскрою особенности импорта оффлайн заказов при включенном количественном учете, нужно объяснить механизм его действия. Это даст представление о том, что происходит с остатками товаров на сайте при обмене.
Для запрета реализации товаров, которых нет в наличии (с нулевым остатком), следует использовать количественный учет товаров (и, возможно, их резервирование).
Количественный учет активируется настройкой «Включить количественный учет» модуля «Торговый каталог».
Включенный количественный учет регулирует порядок уменьшения остатков товаров.
Событие, в связи с которым остаток уменьшается, определяется настройками поля «Товар резервируется» настроек модуля «Интернет-магазин» (возможные варианты: при оформлении заказа, при частичной оплате заказа, при полной оплате заказа, при разрешении доставки, при отгрузке).
Одновременно с количественным учетом может включаться резервирование товара (настройка «Включить резервирование» модуля «Торговый каталог»). Условия резервирования устанавливаются в настройках модуля «Интернет-магазин» (блок «Настройки резервирования товара»). Как это работает?
С заказом происходит событие инициализации резервирования (из настройки “Товар резервируется”).
Для каждого товара в этом заказе уменьшается его остаток (поле “Доступное количество”) согласно числу заказанных товаров. И пропорционально увеличивается зарезервированное количество.
Резервирование сохраняется в течение установленного настройками срока. Если никаких изменений по заказу за это время не происходит, резерв снимается (пропорционально уменьшается зарезервированное количество, увеличивается остаток).
Списание резерва (уменьшение зарезервированного количества без увеличения остатка) происходит в момент отгрузки товаров (в документе отгрузки заказа приходит статус «Отгружено»).
Если в настройках модуля «Интернет-магазин» установлен чекбокс «Разрешать отгрузку при разрешении доставки», то списание зарезервированного товара произойдёт автоматически при разрешении доставки (статус «Доставка разрешена» в документе отгрузки).
Параллельно со списанием остатков товаров в системе 1С-Битрикс при включенном количественном учете, остатки на сайте могут (должны) обновляться и импортом номенклатуры из 1С.
Для онлайн заказов обычно не возникает расхождений в значениях остатков товаров, рассчитываемых сайтом и приходящих из 1С.
А вот по оффлайн заказам включение количественного учета может вызывать вопросы.
Например, в нашей практике в Интернет-магазине клиента был включен количественный учет без резервирования товаров, остатки Битрикс списывал на сайте при полной оплате заказа. Дополнительно остатки обновлялись импортом номенклатуры из 1С.
При штатном импорте оффлайн заказов с включенным количественным учетом наблюдались такие проблемы:
- количественный учет сайта не различал источник заказа (оффлайн или онлайн), списывая остатки по оплаченным оффлайн заказам, что приводило к ненужному обнулению остатков товаров каталога (а оффлайн заказов было много);
- оплаченные оффлайн заказы, количество товаров в которых было больше, чем остатков этих товаров в каталоге, не выгружались на сайт совсем.
Решение указанных проблем потребовало кастомизации импорта заказов на стороне 1С-Битрикс.
Каждый заказ со всеми сопутствующими документами (оплаты, доставки) обрабатывается обменом поочередно. Поэтому для оффлайн заказов в начале импорта на сайт мы отключаем количественный учет, а в конце — включаем снова (сбрасывая системный кеш) . Таким образом онлайн заказы участвуют в обмене с количественным учетом, а оффлайн без него.
У этого решения есть нюанс: при наличии в одном пакете заказов, импортируемых из 1С, одновременно полностью оплаченного онлайн заказа и полностью оплаченного оффлайн заказа (т.е. при одновременной полной оплате этих заказов), отключение количественного учета для оффлайн заказа формально происходит (т.е. настройки меняются), но остатки по оффлайн заказу все же списываются (чтобы это понять, мы ставили отладку в коде импорта заказов в Битрикс).
Настройки узла обмена в 1С не позволяют разделить обмен онлайн и оффлайн заказами (можно только включить/отключить импорт оффлайн заказов на сайт), а еще более глубокое погружение в ядро продукта 1С-Битрикс для анализа и исправления ситуации может потребовать значительного объема времени.
Самым быстрым решением здесь служит установка параметра «Количество контейнеров в пакете», равным 1 (единице), в настройках узла обмена на стороне 1С.
Таким образом, в файле импорта всегда находится информация только по одному заказу, без пересечения онлайн и оффлайн заказов. Костыль? Костыль! Но в описываемом кейсе он сэкономил много времени.
Другие ошибки обмена
Для оффлайн заказов наблюдали еще такую ошибку: «Попытка увеличить количество товара в отгрузке до количества, которое превышает не отгруженное в заказе«.
Причиной этой ошибки, если ваш каталог не содержит торговых предложений (SKU), может служить указание в xml-файле обмена в составе заказа некоторого товара несколько раз — с разным количеством заказанных товаров, а в отгрузке только один раз — с суммарным количеством. В этом случае следует на стороне 1С в xml-файле выгрузки для заказа объединить записи по идентичным товарным позициям в одну. Например, если раньше в составе заказа “товар А” был указан дважды с количеством 8 400 шт. и 1 600 шт., а в отгрузке только один раз — с количеством 10 000 шт., то теперь и в заказе, и в отгрузке «товар А» указывается только по одному разу с количеством в 10 000 шт.
Сложно подробно и при этом весело и задорно (чтобы вы не уснули на полпути) описать все тонкости обмена сайта с 1С, эта тема неисчерпаема и, прямо скажу, “на любителя”.
Надеюсь, что та информация, которой я поделилась, окажется вам полезной и приоткроет завесу тайны, висящей над затронутой темой для любого, кто впервые сталкивается с обменом.
Настройка обмена данными между 1С, сайтом на 1С-Битрикс и CRM Битрикс24
CRM Битрикс24 сама по себе является мощным инструментом, с помощью которого можно оптимизировать и автоматизировать работу сотрудников. Контроль над отделом продаж и другими подразделениями, четкое планирование и проверка выполнения поставленных задач, хранение корпоративной информации позволяет устранить «узкие места» в работе и увеличить рентабельность.
Но настройка обмена данными между Битрикс24, сайтом на CMS 1C-Битрикс и учетными программами на платформе 1С Предприятие позволяет вывести автоматизацию на новый уровень. Отпадает необходимость в повторном вводе данных, что экономит деньги, время, а также дает возможность устранить ошибки, вызванные человеческим фактором.
Зачем нужна интеграция Битрикс24 с CMS Битрикс и программами 1С
Настройка обмена данными и построение единой IT-инфраструктуры в компании позволяет полностью использовать возможности всех перечисленных продуктов. У пользователей не будет необходимости повторно вводить данные в каждую из программ и постоянно поддерживать их актуальность. Посетители сайта и клиенты будут владеть наиболее актуальной информацией о доступности товаров, их стоимости, этапах обработки заказа.

Интеграция является обязательной, если в компании используются продукты от 1C и CRM Битрикс24. В противном случае преимущества, которые могли бы быть достигнуты с их помощью, сведутся к нулю.
Что дает интеграция компании:
- Постоянно актуальные данные об остатках товаров на складах, которые могут быть отгружены оптовым покупателям и розничным клиентам.
- Полный контроль над стадиями обработки заказа в зависимости от разработанной воронки. Контроль перемещения ТМЦ между магазинами и складами, обновление остатков в автоматическом режиме.
- Доступ к любой необходимой информации в зависимости от должности сотрудника и задач, которые он выполняет. Доступ можно организовать с компьютера или с мобильного устройства удаленно. Данные берутся из одной базы, что гарантирует их актуальность.
- Исключается двойной ввод данных. Не нужно нанимать и содержать сотрудников, которые будут вручную вводить информацию или делать постоянный экспорт/импорт из программ. Это чревато ошибками и нерационально.
Наиболее простой вариант интеграции — односторонняя загрузка справочников и первичных документов. Но максимальную отдачу можно получить при настройке двустороннего обмена. Тогда все программы будут работать как единая система, давая пользователю множество преимуществ.
Какими данными можно обмениваться
При разработке индивидуальных решений по интеграции специалисты компании-интегратора могут организовать обмен любыми необходимыми данными, которые хранятся в базах данных Битрикс24, CMS 1С-Битрикс и учетными приложениями на платформе 1С: Предприятие.

В типовом обмене участвуют:
- Заказы.
Владелец компании и менеджеры по продажам будут всегда знать, на какой стадии находится работа с определенным заказом и связанными с ним документами. Кроме того, появляется возможность автоматически формировать первичные документы при заказе на сайте и контролировать его оплату в учетном приложении. В зависимости от поступления оплаты заказ двигается дальше по воронке продаж. - Товары.
Все заинтересованные сотрудники компании будут знать, сколько и какого товара осталось на складах. Причем независимо от того, на каком именно складе или в каком магазине он хранится. Актуализируется информация о ценах и автоматически отображается на сайте. Менеджер, работающий в CMS, всегда может получить доступ к необходимым справочникам. - Контакты контрагентов.
Введенные один раз в CRM Битрикс24 или в программных продуктах на платформе 1С предприятие контактные данные и платежная информация клиента используется всеми приложениями. Нет необходимости вводить реквизиты в договорах и счетах, что чревато ошибками. Все данные синхронизируются даже при их изменении. - Отчетность.
Сотрудники, руководители подразделений и директор компании всегда могут получить данные к консолидированным отчетам в бухгалтерских приложениях и CRM. Можно узнавать остатки средств на счетах, выручку магазина, эффективность работы менеджеров, дебиторскую и кредиторскую задолженность, товарные остатки и многое другое.
Какие задачи решает синхронизация
Настройка двустороннего обмена данными между упомянутыми выше программными продуктами позволяет решить сразу несколько задач:
- Полная автоматизация всех процессов.
Программы передают друг другу данные по всем необходимым позициям товаров. Клиенты всегда будут видеть ту цену, по которой продавец готов отгрузить им продукцию, что снижает процент отказов и увеличит конверсию. Приложения будут автоматически формировать необходимые первичные документы для отражения сделок в бухгалтерском и налоговом учете. - Настройка обмена с определенной периодичностью по заранее установленному расписанию.
На сайте будет отображаться каталог товаров с актуальными данными по остатками и ценам. Это позволит обрабатывать заказы быстрее и дешевле. В случае оформления реализации остатки обновляются автоматически, проданные товары становятся недоступными для заказа. Интеграция сайта с 1С позволяет менеджерам сразу информировать клиентов о доступных позициях и ценах, не дожидаясь подтверждения от других сотрудников. - Повышение лояльности клиентов.
Актуализация информации значительно увеличивает лояльность клиентов к компании. Не придется сообщать покупателю, что та или иная позиция продана или цена изменилась из-за роста курса доллара. Благодаря этому посетитель с большей вероятностью конвертируется в покупателя и совершит повторные покупки. - Экономия средств и повышение рентабельности.
Автоматический обмен данными между CRM, CMS и учетными программами позволяет менеджерам заниматься своими прямыми обязанностями, а не техническими работами по вводу и актуализации данных. Не нужно тратить время на формирование документов и контроль за их прохождением по воронке. За счет этого можно уменьшить число сотрудников, сократить расходы по оплате труда и увеличить рентабельность работы компании практически без капитальных вложений. - Мультиканальность.
Интеграция учетных приложений, CRM-платформы и системы управления сайтом позволяет объединить все торговые объекты в одну сеть. Можно организовать отображение данных в режиме реального времени, перераспределять товары в зависимости от сделанных заказов, отслеживать обработку независимо от точки продажи и т. п.
Какие возможности дает интеграция между тремя системами
Интеграция сразу трех систем в одну экосистему в компании значительно расширяет их возможности и эффективность работы сотрудников.
- Актуализация перечня позиций, доступных для продажи и отображение их в виде справочника для менеджера по продажам. Импортировать и экспортировать справочник не придется, синхронизация происходит постоянно. Обновление происходит для менеджеров в CRM и в каталоге на сайте, при продаже количество товарных позиций обновляется.
- Формирование заказов и другой первичной документации на основе сделки в CRM. Как только менеджер сформирует сделку, в бухгалтерской программе появятся первичные документы, которые можно отправить клиенту. При этом на сайте уменьшится количество товаров в остатке.
- Информирование заказчиков о стадии обработки заказа в режиме реального времени. Нет необходимости вручную двигать сделку по стадиям воронки продаж в CRM. В зависимости от поступивших данных с сайта или бухгалтерской программы это происходит автоматически. Например, сформированный менеджером заказ передвигается вглубь по мере его обработки сотрудниками. Как только деньги поступают, карточка заказа смещается на этап доставки и так далее. Все это исключает простои, связанные с невнимательностью менеджера или не своевременностью постановки задач другим подразделениям или сотрудникам компании.
Какие выгоды дает интеграция клиенту
Настройка интеграции не просто упрощает работу. Она дает несколько дополнительных преимуществ:
- Снижение затрат на организацию бизнес-процессов. Автоматизация позволит уменьшить трудоемкость работы сотрудников, сократить штат и, тем самым, фонд оплаты труда. Так как себестоимость продажи или производства товаров, оказания услуг уменьшится, возрастет рентабельность работы предприятия.
- Повышение качества обслуживания клиентов. Клиенты не будут слышать отказа в оформлении покупки из-за отсутствия товаров на складе, им не нужно ждать уточнения наличия на складе. Вся информация на сайте и на складе актуальна, что повышает лояльность по отношению к компании.
- Сокращение времени обработки заказов. Благодаря автоматизации исключаются некоторые этапы обработки сделки, что ускоряет работу с каждым клиентом. Благодаря этому можно увеличить количество продаж, не прибегая к кардинальной и дорогой перестройке бизнес-процессов.
- Правильное отражение операций в учетах. При интеграции информация в учетные программы на платформе 1С предприятие (например, складской учет) будет вносится параллельно с движением сделки по воронке продаж. Поэтому исключается опасность, что продажа не будет учтена в налогообложении и компания получит штраф или с нее взыщут недоимку по налогам.
- Полноценный управленческий учет. Не нужно просить сотрудников подготовить отчет об остатках денег или товаров. Руководитель подразделения в любой момент и из любого места получает актуальную информацию и принимает на ее основе решения.
Возможности по настройке обмена в коробочной и облачной Битрикс24
Степень и глубина интеграции зависит от того, какую версию CRM Битрикс24 использует компания. Возможны два варианта:
- Облачная.
Возможности для изменений и настройки интеграции ограничены. Обмен данными производится через API разработчика. - Коробочная.
Эта версия CRM позволяет полностью изменять исходный код продукта, что открывает неограниченные возможности для обмена данных. Компания-интегратор может изменить программный код или дополнить его, чтобы организовать полноценный двусторонний обмен данными.
Схемы обмена и преимущества каждого варианта
Разработчиками приложения Битрикс24, системы управления сайтом 1C-Битрикс и учетных программ на платформе 1С Предприятие предусмотрены две схемы обмена:
Предусматривает настройку обмена с помощью стандартных модулей, которые предлагают разработчики. Возможности такого обмена ограничены, особенно в случае доработок приложений под нужды компании. Чаще всего речь идет только о количестве товаров и ценах, что существенно сокращает возможности интеграции. Иногда возможен только односторонний обмен.
Модули для обмена данными в режиме реального времени разрабатываются для клиента с учетом особенностей его бизнеса, используемых программ и нюансов организации учета. Только такая интеграция позволяет создать действительно целостную информационную экосистему, которая будет работать со 100% эффективностью, экономить время и деньги компании.
Заказать интеграцию с 1С
Как настроить синхронизацию самостоятельно
Для самостоятельной настройки синхронизации корпоративного портала на Битрикс24 с продуктами от 1C используется стандартный инструмент, встроенный в платформу.
Для настройки нужно получить ключ, с помощью которого сторонняя программа подключается к порталу. Далее полученный ключ вставляется в соответствующее поле и настраиваются данные, которыми нужно обмениваться.
Кроме того, нужно выбрать способ синхронизации данных: автоматический, ручной и по расписанию.
Такой вариант настройки дает лишь очень ограниченные возможности по обмену данными. Для большей автоматизации понадобится
Преимущества заказа услуг по настройке синхронизации у специалистов
Хотите полностью синхронизировать данные между CRM-платформой, сайтом и бухгалтерией? Закажите услугу настройки обмена данными у профессионалом. Они разработают индивидуальное решение с учетом особенностей работы компании, создадут необходимые модули и подключат их к вашим программам.

В результате вы получите целостную информационную экосистему, в которой можно максимально эффективно решать бизнес-задачи и развивать компанию.

Редакция WRP
CRM Битрикс24 сама по себе является мощным инструментом, с помощью которого можно оптимизировать и автоматизировать работу сотрудников. Онлайн заказ
Настройка обмена 1C с Битрикс и Битрикс24
Для того, чтобы произвести установку, его нужно сначала скачать и распаковать. Для этого:

-
Узнаем конфигурацию нашей базы, нажав на кнопку ( i ) справа сверху.

Выбираем нашу конфигурацию из списка на сайте

Находим модуль, у которого версия 1С максимально близкая к нашей

Заходим по ссылке и скачиваем модуль и инструкцию по установке.

Теперь нужно распаковать архив. Для этого нажимаем на скаченном файле правой кнопкой мыши и выбираем «Извлечь все…»

Теперь запускаем извлечённый файл setup.exe.
- Откроется окно установщика


Нажимаем «Далее», указываем, куда установить модуль. На приведённом ниже рисунке выбрана папка «D:\МодульОбмена\КонфигурацияМодуля». Вы же должны выбрать любую папку на Вашем компьютере и обязательно запомнить её путь
- Нажимаем «Далее», «Готово» и переходим в папку, куда был установлен модуль.
В ней будет находиться каталог с названием «1С-Битрикс», а в нём несколько файлов. Нам нужен файл 1Cv8.cf.

- Этот файл нужно скопировать в облако, зайдя в него через удалённый рабочий стол. Для этого откроем на рабочем столе в облаке компьютер и перейдём на диск, куда был сохранён файл.

Чтобы установить полученный модуль в Управление торговлей, следуйте инструкции с официального сайта, которую можете скачать вместе с модулем. Установка продолжается по инструкции с момента когда необходимо сделать сравнение и объединение конфигурации с полученным файлом формата xxx.cf
Как настроить обмен 1с с сайтом битрикс
Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы ( Marketplace > Обновление платформы ).
Старт, Стандарт, Энтерпрайз
Главное окно настроек
Перейти на форму списка настроек обмена можно из раздела 1С-Битрикс: Управление сайтом» > Настройки подключения .
В открывшемся окне можно увидеть список созданных настроек, создать новую или запустить выполнение обмена выбранной настройки.

Настройка подключения
При нажатии на кнопку Создать подключение к БУС откроется окно создания/редактирования настроек обмена.
- В поле Название настройки указывается наименование настройки, которая будет отображаться в списке настроек.
- При нажатии на кнопку Принудительная выгрузка картинок производится передача данных по открытой настройке обмена с признаком принудительной выгрузки всех картинок/файлов товаров и предложений. В обычном варианте передаются только новые и измененные картинки.
Раздел Назначение
Настройка обмена может предназначаться для следующих режимов:
- Обмен данными с сайтом (Выгружать на сайт). Необходимо указать следующие настройки:
- Адрес сайта – путь до интернет-магазина, с которым должен производиться обмен. Необходимо указывать по шаблону + /bitrix/admin/1c_exchange.php . Т.е. нужно указывать конкретную страницу-инициализатор.
- Имя пользователя – имя пользователя, под которым производится авторизация на сайте для выполнения обмена. У указанного пользователя сайта должны быть права на эту функцию.
- Пароль пользователя – пароль указанного выше пользователя.
- При нажатии на кнопку Проверить соединение производится проверка соединения с сайтом по указанным параметрам. Результат подключения будет выведен на экран.
- Выгружать данные в каталог на диске ПК (Выгружать в каталог на диске). При выгрузке данных 1С в каталог на диске указываются следующие настройки:
- Каталог выгрузки – адрес, где хранятся выгруженные XML файлы. Если база 1С клиент-серверная, то адрес должен быть корректен для пользователя, под которым запущена служба 1С.
- Файл загрузки — адрес, по которому модуль ищет файл с документами, который пришел из интернет-магазина. Указывать адрес необязательно.
Раздел Способ выгрузки данных
В разделе указывается, каким способом будет происходить обмен данными с интернет-магазином:
- В режиме реального времени – если выбран этот способ, то изменения в 1С будут сразу же отправлены на сайт. Изменения из интернет-магазина попадут в 1С или при ручном обмене, или при запущенном канале подключения к интернет-магазину, который следит за изменениями.
- По расписанию – если выбран этот способ, то передача данных между 1С и сайтом производится по установленному расписанию.
- Только ручной обмен – если выбран этот способ, то передача данных между 1С и сайтом производится только в ручном режиме, по нажатию на соответствующие команды: в разделе 1С-Битрикс: Управлением сайтом и в окне списка настроек обмена.
Раздел Контроль изменений
В разделе указывается, какой объем данных будет выгружаться на сайт: все данные или только измененные. Рекомендуется при первом обмене выполнять полную выгрузку по кнопке Принудительная выгрузка картинок, а далее только измененные данные.
Раздел Режим обмена данных
В разделе указывается, какими данным должны обмениваться 1С и интернет-магазин. При нажатии на кнопку Настроить происходит открытие окна настройки обмена данных выбранного вида.
Раздел Прочие настройки
- Настройка Порядок выполнения обмена определяет, порядок выполнения. Сначала данные в 1С загружаются, а затем выгружаются, или наоборот. Имеет значение только для обмена документов.
- В настройке Количество повторений при ошибках задается значение, сколько раз пытаться отправить пакет с данными при неудачной отправке пакета.
- В поле Таймаут между ошибочными повторами задается значение, сколько секунд должно пройти, перед тем как снова передать неудачно отправленный пакет данных.



