AmoCRM - снова в строю!
Друзья, как некоторые из вас знают с июля 20 года AmoCRM изменили способ авторизации, после чего новые аккаунты в принципе не смогли работать с нашей версией AmoCRM для MODX, а уже существующие аккаунты постепенно (после изменения пароля) стали отваливаться от MODX.
Свежее обновление посвящено новой авторизации и решает эту проблему.
Давайте разберемся что вообще изменилось.
Раньше в личном кабинете вашей CRM нужно было сформировать просто API ключ, указать его в админке сайта и все работало.
Теперь механизм изменен на oAuth авторизацию. Если кратко — это означает что можно сформировать множество «ключей» у каждого из которого будет определенный владельцем уровень доступа к информации, с возможностью просто отозвать ключ.
Если интересно более детально почитать зачем и почему сменен механизм авторизации — вот ссылка
Пошаговая инструкция для работы с новой системой авторизации.
Здесь я буду частично цитировать пошаговую инструкцию по настройке CRM от самих AMO, так что можно и там почитать.
Шаг 1 — Регистрация приложения
Все начинается с того, что вам необходимо зайти в раздел Интеграции того аккаунта, в котором вы будете осуществлять поддержку интеграции в будущем. Для создания интеграции вам необходимо обладать правами администратора аккаунта

После нажатия на кнопку Создать Интеграцию, в появившейся форме, вам необходимо указать Название интеграции, выбрать требуемые доступы и указать описание. Также необходимо указать Redirect URI – url страницы получения токенов. Здесь указываем адрес главной страницы сайта. Тот адрес что доступен у вас при написании [[++site_url]] — Обязательно сделать это один в один, включая слеш в конце адреса
В статье написано что обязательно наличие SSL, но пока что это не строго. И без https соединения все работает.
Кроме этих пунктов администраторам аккаунта, в котором создана интеграция, будут доступны: id интеграции, секретный ключ интеграции, код авторизации (после включения интеграции).
После заполнения полей вам необходимо нажать Сгенерировать ключ. После этого новая интеграция будет создана и на следующей странице модального окна будут отображены необходимые ключи.
Обратите внимание, что Secret key и Integration ID привязаны к интеграции и будут показаны только в вашем аккаунте разработчика.
Должна получиться следующая картина

Ну и заполняем эти данные в системных настройках обновленного компонента AmoCRM
Обратите внимание — Код авторизации действует только 20 минут
Нам важно быстро его получить, заполнить и первый раз обратиться к AmoCRM для того чтобы привязаться к интеграции.
Если этого не сделать вовремя — интеграцию придется обновлять, менять коды доступа и проделывать процедуру заново.
Шаг 2 — Первоначальная авторизация
Это единственное место в котором мы используем Код авторизации полученный в личном кабинете. Далее он не понадобится.
Как это работает.
При первом запросе в amoCrm (например заказ или отправка контактной формы) компонент пытается авторизоваться. Он отправляет код доступа и если он еще актуален (прошло не более 20 минут с момента получения) мы получаем постоянный код авторизации действующий сутки.
Постоянный код авторизации записывается в кэш и хранится там в течение всего времени жизни сайта. По истечение отведенного срока он автоматически обновляется.
Если вы не успели получить постоянный код за 20 минут — нужно обновить виджет интеграции в AMO и попробовать снова.
Страница компонента на modstore.pro
Свежее обновление посвящено новой авторизации и решает эту проблему.
Давайте разберемся что вообще изменилось.
Раньше в личном кабинете вашей CRM нужно было сформировать просто API ключ, указать его в админке сайта и все работало.
Теперь механизм изменен на oAuth авторизацию. Если кратко — это означает что можно сформировать множество «ключей» у каждого из которого будет определенный владельцем уровень доступа к информации, с возможностью просто отозвать ключ.
Если интересно более детально почитать зачем и почему сменен механизм авторизации — вот ссылка
Пошаговая инструкция для работы с новой системой авторизации.
Здесь я буду частично цитировать пошаговую инструкцию по настройке CRM от самих AMO, так что можно и там почитать.
Шаг 1 — Регистрация приложения
Все начинается с того, что вам необходимо зайти в раздел Интеграции того аккаунта, в котором вы будете осуществлять поддержку интеграции в будущем. Для создания интеграции вам необходимо обладать правами администратора аккаунта

После нажатия на кнопку Создать Интеграцию, в появившейся форме, вам необходимо указать Название интеграции, выбрать требуемые доступы и указать описание. Также необходимо указать Redirect URI – url страницы получения токенов. Здесь указываем адрес главной страницы сайта. Тот адрес что доступен у вас при написании [[++site_url]] — Обязательно сделать это один в один, включая слеш в конце адреса
В статье написано что обязательно наличие SSL, но пока что это не строго. И без https соединения все работает.
Кроме этих пунктов администраторам аккаунта, в котором создана интеграция, будут доступны: id интеграции, секретный ключ интеграции, код авторизации (после включения интеграции).
После заполнения полей вам необходимо нажать Сгенерировать ключ. После этого новая интеграция будет создана и на следующей странице модального окна будут отображены необходимые ключи.
Обратите внимание, что Secret key и Integration ID привязаны к интеграции и будут показаны только в вашем аккаунте разработчика.
Должна получиться следующая картина

Ну и заполняем эти данные в системных настройках обновленного компонента AmoCRM
Обратите внимание — Код авторизации действует только 20 минут
Нам важно быстро его получить, заполнить и первый раз обратиться к AmoCRM для того чтобы привязаться к интеграции.
Если этого не сделать вовремя — интеграцию придется обновлять, менять коды доступа и проделывать процедуру заново.
Шаг 2 — Первоначальная авторизация
Это единственное место в котором мы используем Код авторизации полученный в личном кабинете. Далее он не понадобится.
Как это работает.
При первом запросе в amoCrm (например заказ или отправка контактной формы) компонент пытается авторизоваться. Он отправляет код доступа и если он еще актуален (прошло не более 20 минут с момента получения) мы получаем постоянный код авторизации действующий сутки.
Постоянный код авторизации записывается в кэш и хранится там в течение всего времени жизни сайта. По истечение отведенного срока он автоматически обновляется.
Если вы не успели получить постоянный код за 20 минут — нужно обновить виджет интеграции в AMO и попробовать снова.
Страница компонента на modstore.pro
Комментарии: 25
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Еще почему-то после обновления перестала поступать информация о купленных товарах, поля пустые, в настройках вроде все указано по дефолту
буду благодарен за ответ, в техподдержку написать не могу, потому что дополнение куплено больше года назад
Вебхуки честно говоря не проверял. Может и не работают. Инструкция как и код были ООООЧЕНЬ старыми. инструкцию нужно обновить. Выберу время.
Сейчас как минимум вижу что вам нужно указать ответственного по умолчанию в системных настройках.
Причем, заказы перестают отправляться уже после установки компонента даже без настроек, а после внесения настроек эта ситуация не меняется.
В логах выдает ошибку запроса, код — 401, см. скриншот.
Попробуйте очистить кэш, а конкретно удалить в кэше каталог amocrm, затем заново создайте в личном кабинете ключ авторизации (он всего 20 минут действует), обновите эти данные в системных настройках сайта и сделайте заказ.
Если не поможет — пишите в техподдержку на modstore — разберемся.
Как уже писал заказы из корзины перестают работать уже после установки компонента, даже без всяких настроек, и их внесение не меняет ситуацию.
Обратиться в modstore — это конечно хорошо. Но компонент был приобретен в 2018 году и прекрасно работал до вчерашнего дня. А значит нам нужно будет платить только за то, что что-то пошло не так после обновления.
Несколько десятков проектов обновились — и ничего работают. Проблем нет.
Платить вас никто не заставляет конечно — ровно как и меня вам помогать.
Единственное что я могу вам посоветовать вслепую не щупая проблему — Попробуйте саму интеграцию удалить, создайте заново, прямо с нуля с новым client ID -
Только что купил модуль, сделал все по инструкции и похожая ошибка с авторизацией
Сразу после инсталляции пакета невозможно сделать заказ на сайте, магазин ms2
Скорее всего вы не заполнили системные настройки ID воронки и ID заказа
Я следую вашему руководству по настройке интеграции с AmoCRM, но у меня возникли трудности. Я делаю все по инструкции, но ничего не работает. В частности, не появляется параметр «amocrm_token_field» в настройках, о котором вы упоминаете в руководстве.
Пожалуйста, помогите мне разобраться в этой ситуации и найти решение проблемы. Буду благодарен за вашу помощь!
С уважением, Артур.
@highpppower
Этот параметр появляется при установке компонента.
Возможно вы имели в виду, что он остается пустым?
Что я делаю не так?