Передача контактов и сделок из amoCRM

Интеграция заключается в:

  • Создании/обновлении контакта в enKod при создании/обновлении контакта в amoCRM - при этом вы сможете выбрать:
    • какие поля контакта буду передаваться
    • на какие группы рассылок в enKod контакты будут подписываться
    • какие теги прикреплять передаваемым контактам
  • Получении информации о сделках из amoCRM - осуществляется с помощью автоматического создания пользовательских событий в enKod при создании или изменении сделки в amoCRM

Подключение

1. Перейдите в Настройки → Интеграции. В разделе «CRM» кликните на «amoCRM Контакты и сделки»

2. В появившемся окне нажмите на кнопку «Подключить»

3. Далее введите данные нужного amoCRM-аккаунта и нажмите на кнопку «Войти» или «Разрешить». Таким образом вы завершите авторизацию amoCRM-аккаунта и сможете перейти к настройке его интеграции с enKod

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

5. Вам также необходимо настроить хотя бы одну из пар: email и email или телефон и телефон.

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

6. Для завершения интеграции нажмите на кнопку «Сохранить».

Для подключения нового amoCRM-аккаунта, вы должны предварительно отключить интеграцию со старым.

Настройка интеграции

Основные емейл и телефон

В amoCRM у контакта может существовать одновременно несколько емейлов и/или телефонов, в то время как у enKod для одной карточки контакта возможно только под одному емейлу и телефону. Поэтому при настройке интеграции вам необходимо выбрать, из какого поля в amoCRM должны передаваться емейлы и телефон в enKod.

Логика передачи при этом следующая:

  • если у контакта заполнены емейл/телефон поля, которые вы указали в этой настройке, то в enKod буду переданы именно они - остальные емейл и телефоны будут проигнорированы
  • если у контакта НЕ заполнены емейл/телефон поля, которые вы указали в этой настройке, то enKod заберет любые другие емейл и телефон
  • если у контакта заполнены те емейл/телефон поля, которые вы указали в этой настройке, при этом у контакта полей этого типа более одного (например, два рабочих телефона и три личных емейла), то enKod заберет только первый из них
  • если первый номер/емейл (уже существующий в enKod) удалится в amoCRM, то при следующем получении события enKod посчитает его, как событие новой персоны, которой нет в базе enKod (при отсутствии неизменного емейла/телефона)
  • если первый номер/емейл (уже существующий в enKod) удалится в amoCRM, то при следующем получении события enKod перезапишет номер/емейл контакта на новый (при наличии неизменного емейла/телефона)

Настройка основного емейла и телефона обязательна для работы интеграции с enKod

Сопоставление полей контактов amoCRM с полями данных в enKod

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

Важно, чтобы тип данных поля amoCRM соответствовал типу данных созданного поля в enKod. При создании полей в enKod вы можете сверяться с таблицами ниже.

Системные поля контактов в amoCRM Типы полей данных в enKod
Имя Имя
Емейл Емейл
Телефон Телефон
id Текст или число
responsible_user_id Текст или число
date_create Дата и время
last_modified Дата и время
created_user_id Текст или число
modified_user_id Текст или число
account_id Текст или число
Типы пользовательских полей в amoCRM Типы полей данных в enKod
Текст Текст
Число Число
Флаг Логический
Дата Дата
Ссылка Текст
Текстовая область Текст
Короткий адрес Текст
День рождения Дата
Дата и время Дата и время

В enKod не обрабатываются и не выводятся в настройки поля amoCRM типа:

  • список,
  • мультисписок,
  • переключатель,
  • адрес,
  • юр. лицо,
  • файл

Если в amoCRM были зачищены или удалены какие-то из передаваемых полей контактов или сделки, то в enKod соответствующие им поля данных перестанут обновляться, но удалены или зачищены не будут.

Для работы интеграции с enKod к заполнению обязательна пара емейл-емейл ИЛИ телефон-телефон

Объединение контактов и создание сделок в контексте главного канала

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

События сделок будут записываться тому контакту, который был создан/обновлен по правилам объединения для выбранного главного канала. Ниже приведены примеры работы со сделками для обоих вариантов.

Главный канал емейл

1. Создана сделка с контактом, у которого есть емейл и телефон, а в базе enKod есть контакт только с этим емейлом

Событие запишется контакту с емейлом

2. Создана сделка с контактом, у которого есть емейл и телефон, а в базе enKod есть контакт только с этим телефоном

Будет создан контакт с телефоном, а событие запишется ему

3. Создана сделка с контактом, у которого есть емейл и телефон, а в базе enKod есть два разных контакта (у одного указанный емейл, у другого указанный телефон)

Событие запишется контакту с емейлом

4. Создана сделка с контактом, у которого есть емейл 1 и телефон 1, а в базе enKod есть контакт, у которого емейл 1 и телефон 2

Событие запишется этому контакту

5. Создана сделка с контактом, у которого есть емейл 1 и телефон 1, а в базе enKod есть контакт, у которого емейл 2 и телефон 1

Будет создан контакт с емейлом 1, а событие запишется ему

6. Создана сделка с контактом, у которого есть один канал (емейл 1), а в базе enKod есть контакт, у которого есть два канала (емейл 1, телефон 1)

Событие запишется этому контакту

7. Создана сделка с контактом, у которого есть один канал (телефон 1), а в базе enKod есть контакт, у которого есть два канала (емейл 1, телефон 1)

Событие запишется этому контакту

Главный канал телефон

1. Создана сделка с контактом, у которого есть емейл и телефон, а в базе enKod есть только контакт с емейлом

Будет создан контакт с телефоном, а событие запишется ему

2. Создана сделка с контактом, у которого есть емейл и телефон, а в базе enKod есть только контакт с телефоном

Событие запишется контакту с телефоном

3. Создана сделка с контактом, у которого есть емейл и телефон, а в базе enKod есть два разных контакта (у одного указанный емейл, у другого указанный телефон)

Событие запишется контакту с телефоном

4. Создана сделка с контактом, у которого есть емейл 1 и телефон 1, а в базе enKod есть контакт, у которого емейл 1 и телефон 2

Будет создан контакт с телефоном 1, а событие запишется ему

5. Создана сделка с контактом, у которого есть емейл 1 и телефон 1, а в базе enKod есть контакт, у которого емейл 2 и телефон 1

Событие запишется контакту

6. Создана сделка с контактом, у которого есть один канал (емейл 1), а в базе enKod есть контакт, у которого есть два канала (емейл 1, телефон 1)

Событие запишется этому контакту

7. Создана сделка с контактом, у которого есть один канал (телефон 1), а в базе enKod есть контакт, у которого есть два канала (емейл 1, телефон 1)

Событие запишется этому контакту

Главный канал можно изменить в любой момент.

Подписка на группы рассылок

В выпадающем списке вы можете выбрать все необходимые вам группы рассылок. В таком случае, при каждом создании, обновлении контакта или сделки с участием этого контакта в amoCRM соответствующий контакт будет подписываться на выбранные группы рассылок, если еще не был подписан на них.

Подписка работает:

  • согласно условию «всех, включая отписчиков»
  • исключая контакты, которые находятся в ЧС или ГЧС (они подписаны не будут)
  • по правилу обновления (без замены) данных о контакте

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

Прикрепление тегов

В соответствующем списке вы можете выбрать теги, которые будут прикреплены к контактам, данные о создании или изменении которых передаются из amoCRM. Например, вы можете прикрепить тег «amoCRM» всем контактам, полученным через интеграцию, чтобы в дальнейшем их можно было легко отсегментировать в enKod.

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

Создание, изменение и закрытие сделок

Для того, чтобы отслеживать сделки amoCRM в enKod вам необходимо в соответствующем разделе настроек выбрать поля сделки, которые вы хотите передавать в enKod, и сохранить настройки интеграции.

В enKod не обрабатываются и не выводятся в настройки поля amoCRM типа:

  • список,
  • мультисписок,
  • переключатель,
  • адрес,
  • юр. лицо,
  • файл

Если в amoCRM были зачищены или удалены какие-то из передаваемых полей контактов или сделки, то в enKod соответствующие им поля данных перестанут обновляться, но удалены или зачищены не будут.

Если поля сделок оставить невыбранными, то данные о сделках в enKod записываться не будут.

Принцип передачи данных о сделках

Если вы выбираете хотя бы одно поле сделки и сохраняете интеграцию, то в enKod автоматически создаются:

  • два пользовательских события
  • параметры, заключающие в себе выбранные поля сделок amoCRM и передаваемые пользовательскими событиями
  • Обрабатываться будут сделки только с контактом внутри, т.к. создание пользовательского события без контакта невозможно
  • В сделке может быть несколько контактов - в enKod это обрабатывается как несколько событий одной и той же сделки с разными контактами внутри
  • Если удалить созданные пользовательские события сделок в enKod, то данные о сделках в amoCRM перестанут записываться

Автоматически создаваемые пользовательские события можно найти в соответствующем разделе сервиса:

Название Системное имя
Событие 1 Создана сделка в amoCRM amocrm_lead_create
Событие 2 Изменена сделка в amoCRM amocrm_lead_change

В истории событий они будут прописаны с источником «amointegration».

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

Автоматически создаваемые параметры можно найти в соответствующем разделе сервиса:

  • Название параметра - дублирует название поля сделки из amoCRM
  • Системное имя параметра - amocrm_name, где
    • amocrm_ - константа для всех параметров событий
    • name - транслитерация названия полей сделки

Например, если поле сделки в amoCRM называется «price», то в enKod появится параметр с системным именем amocrm_price

Редактирование интеграции

Для того, чтобы внести изменения в интеграцию (удалить или добавить передаваемые пары поле amoCRM-enKod; изменить группы рассылок, теги, отслеживание сделок), перейдите в Настройки → Интеграции. В разделе «CRM» кликните на «amoCRM Контакты и сделки», внесите нужные вам изменения и нажмите на кнопку «Сохранить».

Отключение интеграции

Для отключения интеграции достаточно перейти в в Настройки → Интеграции → «amoCRM Контакты и сделки» и, не внося никаких изменений в настройки, нажать на кнопку «Отключить».

В сервисе сохранятся все уже переданные до деактивации интеграции события (пользовательские события, параметры, поля данных; по необходимости их вы можете удалить вручную), новые данные из amoCRM передаваться и записываться в enKod не будут.

После деактивации интеграции вы в любой момент можете повторно подключить и настроить любой amoCRM-аккаунт.

Запросы из enKod в amoCRM и лимиты

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

Для этого перейдите в раздел меню Настройки ➔ Интеграции и активируйте интеграцию «amoCRM Контакты и сделки». Авторизуйтесь в своем аккаунте и установите галочку у «Интеграция для API-запросов из enKod в amoCRM» (не забудьте сохранить изменения). Теперь вы можете настроить передачу контактов из enKod в amoCRM через сценарии.

В мастере создания сценария при использовании основного блока API-запрос активируйте «Авторизацию amoCRM». Теперь все запросы, отправленные через этот блок, будут использовать авторизацию для вашего amoCRM аккаунта.

Настройте блок API-запроса на необходимое действие согласно документации amoCRM.

Обратите внимание, что amoCRM ограничивает количество запросов из сторонних сервисов:

  • для каждой интеграции (включая enKod) максимум 7 запросов в секунду
  • для аккаунта суммарно (то есть для всех интеграций в аккаунте) максимум 50 запросов в секунду

В контексте нашей интеграции это ограничение распространяется и на отправку запросов из enKod через блок API-запроса и на работу веб-хуков (при получении событий и контактов из amoCRM). Т.е. при настройке передачи в обе стороны все события будут ограничены описанным выше лимитом. На своей стороне enKod будет растягивать во времени отправку запросов в amoCRM, чтобы избежать превышения лимита (так как это может привести к блокировке на стороне amoCRM). В процессе использования это будет выглядеть, как медленная работа блока API-запроса (с amoCRM авторизацией) и получение событий из amoCRM с задержкой (при большом объеме контактов, проходящих через блок или при большом объеме событий, получаемых из amoCRM).

Мы не рекомендуем использовать блок API-запроса с «Авторизацией amoCRM» в сценариях, предусматривающих ручные загрузки контактов в сценарий в больших объемах.

Например, если вы начнете сценарий по подписке на группу рассылок, подписав единоразово 10000 контактов, то прохождение такого количества контактов через блок API-запроса займет несколько минут (и это при условии, что в это же время мы не будем получать события и контакты из amoCRM - в таком случае скорость будет еще ниже). В это же время, если в вашем аккаунте amoCRM настроены какие-то иные интеграции - а запросы от них тоже попадают под лимит в 50/секунду - такие действия неизбежно приведут к блокировке доступа к API для всего аккаунта amoCRM или к блокировка доступа к API для конкретной интеграции.

Авторизация amoCRM в блоке API-запроса предусмотрена для автоматизированной передачи единичных контактов, которые оставили данные в форме или поп-апе на сайте и прочих подобных механик.

При получении блокировки доступа к API в amoCRM вам следует:

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

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

Последнее изменение: 2024.12.25 13:08 — Anastasia Aniskova