Большое внедрение и настройка CRM Битрикс. Внешняя интеграция

Продолжаем тему Большого внедрения Битрикс24. Это значит — вы купили коробочную версию и развиваете ее возможности.

Серьезное внедрение Битрикс24 обязательно потребует интеграции с внешними системами. Например:

  1. Загрузка базы товаров в CRM из складского или другого учетного ПО.

  2. Синхронизация компаний-контрагентов с бухгалтерской или учетной программой.

  3. Привязка лидов и сделок к заявкам на склад или производство.

  4. Создание лидов при регистрации новых обращений в других системах (сайты, почта, электронные архивы и т.п.).

  5. Получение отчетов, включающих данные из Битрикс24 и других систем

Эта статья — о любви.



Статья длинная, сначала вывод:

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

Мы оказываем услуги по сопровождению сайтов на Битриксе и много знаем о том, с какими проблемами обычно сталкиваются клиенты.

Для погружения в суть вопроса прочитайте статьи на близкие темы:


В сегодняшней статье — обзор задач интеграции Битрикс24 и методов их решения сопутствующих задач.

Интеграция сайта с Битрикс24. Связь с внешними системами. Лоскутная автоматизация.

 

— Г-голубчики, — сказал Федор Симеонович озадаченно, разобравшись
в почерках. — Это же п-проблема Бен Б-бецалеля. К-калиостро же доказал, что она н-не имеет р-решения.
— Мы сами знаем, что она не имеет решения,  —  сказал  Хунта, немедленно ощетиниваясь.
— Мы хотим знать, как ее решать.

Братья Стругацкие, Понедельник начинается в субботу

У некоторых руководителей есть голубая мечта: “все — в одной программе”.

На практике получается монстр, в котором есть “почти все”. Например, нет почты. Или календарей. Или они есть, но “в аутлуке удобнее”.

На мой взгляд для большинства компаний ситуация, которую ИТ-снобы называют “лоскутная автоматизация” — норма жизни и ключ к эффективности.


Если каждый “лоскут” дешев, дружелюбен и открыт к обмену данными — то к короткой перспективе он решит задачу, а в долгой — даст гибкость.

Если же вы пытаетесь “решить все задачи” — внедрения не будет никогда, зато ИТ-департамент будет всегда загружен работой.

— А Битрикс24 — хороший “лоскут”?

С дружелюбием к пользователю и ценой у Битрикс24 все в порядке. Остается обмен данными с внешними системами и дружелюбие к программисту. 

С чем должна обмениваться CRM?

С электронным документооборотом (или хотя бы архивом), учетной программой 1С, заявками на производство, путевыми листами и тому подобным.



С точки зрения программиста это синхронизации справочников, загрузки и выгрузки записей таблиц, уведомления и напоминания. Особо богата на коллизии и потому неприятна двусторонняя синхронизация. Задача не выглядит простой. И технически, и организационно.

Начнем.


Возможности для интеграции и проблемы при работе с внешними данными в Битрикс24. Настройка интеграции 1С и Битрикс

Стандартные возможности интеграции. Интеграция сайта с Битрикс24

— Как же он стрижет? Ведь головы у всех разные.
— Ну, это только до первого раза.
Старый анекдот про изобретателя шлема для стрижки



В Битрикс24 заложены некоторые возможности для интеграции и обмена данными.


Что? Чем полезно? Какие проблемы?
CSV-Импорт и экспорт лидов, сделок, компаний и контактов CRM Табличные данные из “старой системы” можно загрузить в Битрикс 24.
Можно выгрузить данные для ручной обработки
Двустороннюю синхронизацию так не сделать.
Файлы, задачи, связанные сущности не переносятся.
Только вручную, без расписаний и автоматизации.
Создание лидов через веб-формы БУС Удобная передача данных с сайтов на Битриксе в Битрикс24. Нет механизма обработки ошибок валидации данных на стороне Битрикс24.
Списочные свойства передаются неправильно.
Файлы не передаются.
Интеграция с AD и 1С:ЗУП на уровне учетных записей пользователей, политик доступа и сквозной авторизации Единый пароль в домене Windows и КП. Очень полезно если у вас в организации работает 5000 человек, и они не очень понимают зачем им портал. “Лес доменов” не поддерживается.
Учетная запись не создается в портале, пока пользователь не попытается войти.
Интеграция с 1С:УТ на уровне справочника товаров и счетов Передача товаров из 1С в Битрикс24.
Синхронизация счетов и статусов оплаты.
Работает по https, в 1С это поддерживается с версии платформы 8.3.4.
SEND&SAVE Создание записей в CRM на основе электронных писем.
Большой плюс — файлы прикрепляются к письму.
Работает достаточно странно, передаются не все данные.
Передача заказов из интернет-магазина на БУС в Битрикс24 и работа с заказами из CRM Легко настраивается, заказы передаются как сделки, товары ИМ сохраняются локально, доступно редактирование-на-лету из CRM. Статусы заказов не связаны со стадиями сделок.
Разработка приложений “1,2 или 3 типа”, работающих с данными по API
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=5378&LESSON_PATH=3913.5377...
Можно сделать почти все
Например, есть приложения для передачи базы контрагентов даже из 1С 7.7.
https://www.bitrix24.ru/apps/?app=htmls.1c77
Есть успешные примеры.

Это отличный задел. Разработчики сделали самое нужное и показали, как делать все остальное.

Есть весьма неплохая документация по REST API https://dev.1c-bitrix.ru/rest_help/crm/fields.php


Для презентации Битрикс24 наличия этой функциональности более чем достаточно.

Для реального внедрения — требуются опытные люди с собственными программистами.


В живом бизнесе и данные немного другие, и 1С не той версии, и это не 1С, а вовсе даже SAP.

Итак, учтем что “из коробки” больше ничего нет и будем искать решения.


Загрузка базы товаров в CRM из 1С, складского или другого учетного ПО

Если у вас 1С не ниже версии 8.3.4, конфигурация “Управление торговлей”, “Управление небольшой фирмой” или “Комплексная автоматизация” — отлично! Читайте статью и настраивайте готовую интеграцию: https://www.bitrix24.ru/blogs/howto/integration1c.php

Интеграция с 1С-Битрикс. Цена вопроса


Если у вас другая программа (или больее серьезные потребности), есть два варианта:

  • для облака: создать внешнее приложение 3 типа, реализующее интерфейс обмена;

  • для коробочной версии: сделать свой интерфейс обмена силами программистов с обеих сторон: знающих вашу систему и специалистов по Bitrix Framework.

Мы умеем делать и то и другое.

Синхронизация компаний-контрагентов с бухгалтерской или учетной программой. Как можно загрузить базу клиентов Битрикс24?

Существует несколько способов внешней интеграции Битрикс24, в том числе написание собственного приложения (что в итоге и пришлось сделать).

Но начнем с малого.

В Битрикс24 есть штатный импорт компаний и контактов. Что он умеет?
Он умеет загружать контакты и компании из файла csv стандартного формата (скачать  пример) .
Подобный файл можно собрать из “базы клиентов в экселе”, если она у вас есть.


Этот способ работает, но у него есть несколько недостатков:

  • процедура ручная, не предусмотрен запуск по расписанию или иная автоматизация;

  • нет возможности обновлять данные, уже имеющиеся в CRM. Только загрузка и создание новых;

  • синтаксис файла прост, однако на практике из 1С или другой системы такой файл можно получить только с помощью программистов. Учитывая что данные распределены по нескольким сущностям, задача не так проста. Придется оплатить несколько часов кода.

Мы решили задачу получения файла нужной структуры из 1С для упрощения подготовки первичного импорта компаний.

Если вы поделитесь статьей в соц.сетях, мы пришлем вам обработку, которая делает файл нужной для Битрикс24 структуры. Вот такой список полей поддерживается стандартным импортом (на строки разбито для удобства чтения).


Название компании

Логотип

Тип компании

Сфера деятельности

Кол-во сотрудников

Годовой оборот

Валюта

Комментарий

















Ответственный

Адрес

Улица

Квартира

Город

Район

Область

Индекс

















Страна

Юридический адрес

Улица (юридический адрес)

Квартира (юридический адрес)

Город (юридический адрес)

Район (юридический адрес)

Область (юридический адрес)

Индекс (юридический адрес)

















Страна (юридический адрес)

Рабочий телефон

Мобильный телефон

Номер факса

Домашний телефон

Номер пейджера

Другой телефон

Корпоративный сайт

















Личная страница

Страница Facebook

Страница LiveJournal

Микроблог Twitter

Другой сайт

Рабочий e-mail

Частный e-mail

Другой e-mail

















Контакт Skype

Контакт ICQ

Контакт MSN/Live!

Контакт Jabber

Другой контакт

Банковские реквизиты

Доступен для всех


Есть два наблюдения по этому типовому файлу импорта:

  • хорошее: все пользовательские поля, добавленные администратором конкретной CRM, также можно загрузить

  • плохое: ИНН по умолчанию нет, и как следствие — никакой надежды на “обновление данных”, только “пополнение”.

С помощью стандартного импорта Битрикс24 и нашего скрипта выгрузки можно однократно загрузить вашу базу клиентов в Битрикс24.

О том, как научить программы обновлять данные без ошибок и регулярно — далее.

Привязка лидов и сделок к заявкам на склад или производство

Представьте себе — вы сделали продажу. Обычно это означает выставление и оплату счета. Затем заказ уйдет в исполнение.

Почти всегда исполнение заказа отслеживается в какой-то программе.

Например, это будет заявка на склад. Или номер договора. Или ссылка на проект (который можно вести в Битрикс24 или другой системе).

По-хорошему хочется видеть в CRM нечто вроде такого:



В Битрикс24 ничего специально не сделано для поддержки такого процесса.

Тем не менее задача привязки внешней информации — вполне решаемая.
Как?

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

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

  3. Внешняя система может возвращать файл, а не просто текстовую строку.
    Для того, чтобы из карточки лида можно было удобно его просматривать, придется изменить представление поля.
    Это очень непростое изменение.

    Придется изменить шаблон компонента crm.lead ,
    который вызывает компонент crm.lead.show ,
    который вызывает компонент crm.interface.form ,
    который вызывает компонент crm.interface.form.tactile ,
    который вызывает компонент main.interface.form .


    main.interface.form является одним из наиболее низкоуровневых компонентов системы 1С-Битрикс и правильная его кастомизация — сложнейшая задача.



В облачной  версии  для привязки внешней информации к CRM  нужно сделать следующее:
  1. Создать недостающие поля
  2. Обеспечить их заполнение специально написанным приложением для Битрикс24 (это вполне реальный путь, есть успешные кейсы)
  3. Настроить стандартные или в крайнем случае написать нестандартные отчеты по CRM с применением этих данных.
Это реально было сделано нами для компании Nectarin A gency .

Создание лидов при регистрации новых обращений в других системах (сайты, почта, электронные архивы и т.п.).

Крайне рекомендуется обойтись одним из стандартных способов, описанных выше: передача данных лида из веб-форм сайта на БУС, создание лида из письма или сделки из заказа интернет-магазина.

Эти механизмы работают и не требуют к себе внимания.

Если же у вас все сложно (например, нужно создавать лиды по обращению системы электронного документооборота), приглашаем вас в волшебный мир классов модуля CRM, о котором мы уже говорили.

Это — любовь.


Схема примерно та же, что и с загрузкой товаров. Нам потребуются:

  • таблица b_crm_lead

  • класс модуля CRM CCRMLead

Казалось бы, это простая задача. В реальности создание лида и корректное наполнение его данными — непростое дело. Дубли, ссылки на компании, требования к валидации, наполнение ленты лида или создание “писем” для подгрузки файлов, управление “делами” — все это окажется сложнее чем вы думаете.

Получение отчетов, включающих данные из Битрикс24 и других систем

В CRM есть отчеты. Это и популярная “воронка продаж”, и предустановленные отчеты вроде “Объем сделок по менеджерам”


и даже конструктор отчетов.


Иногда нужно построить отчеты на основе внешних данных, которых в CRM Битрикс24 нет.

Есть два варианта: импортировать данные в Битрикс24 и пытаться получить отчетность в этой системе, или выгрузить данные для внешней обработки.


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

Вывод.

Внешняя интеграция, импорт данных и расширение функциональности Битрикс24 — сложная, но решаемая задача.

Кому поручать поддержку и сопровождение порталов Битрикс24?

Неопытные разработчики, как правило, недооценивают калибр задачи.

.

А опытных почти нет.

В ИНТЕРВОЛГЕ есть опытные аналитики и разработчики, специализирующиеся на Битрикс24. Мы решаем сложные задачи программирования для Битрикс24 и готовы вам помочь.

Оставьте заявку, мы ее проанализируем и дадим свои рекомендации.

Комментарии (3)

...
  • Александр
  • 30.06.2015 22:25:40
Приветствую.
плиз поправьте ссылки
текущая статья
http://www.intervolga.ru/blog/bitrix/bitrix24-crm-integration-import-export/
в самом начале указывает на другие статьи
"Вводная статья о том, какие пути внедрения Битрикс24 существуют
Битрикс24 — не игрушка. Внедрение корпоративного портала и CRM
....."
а вот ссылки ведут на закрытую часть вашего портала.
...
  • Никулин Роман Аркадьевич
  • 17.02.2016 00:42:04
"Сенхронизация контактов"
http://www.intervolga.ru/upload/medialibrary/39f/39fc529cb513326fcb97763dd75c6618.png
поправьте - эта мелочь очень влияет на восприятие информации в статье. Да, может быть это только на мое восприятие.
...
Обязательно исправим! Спасибо!