integration_roistat-1S-crm
0

5 граблей, на которые лучше не наступать при интеграции Roistat и 1С

Если у вас CRM система на базе 1С или та, которой нет в списке стандартных интеграций – прочтите это и сэкономьте время себе и саппорту Roistat.

1. Ограничение длины входящего запроса

Первая «фишка» которая встречает вас при интеграции.

Суть в том, что развернутые «с нуля» веб-сервера (либо IIS, либо Apache) через которые «наружу» будут опубликованы HTTP-сервисы Вашей CRM по умолчанию имеют ограничения на длину входящих запросов.

Заранее увеличьте лимит на веб-сервере до 6 000 символов.  Если же планируете включать email-трекинг – смело увеличивайте до 12 000. 

В случае использования  email трэкинга письма проксируются в Роистат и передаются в вашу CRM со всеми «потрохами». И длина запросов особо графоманствующих лидов тут запросто достигает десятка тысяч символов.

 

2. Ответ об успешной сделке

При отправке запроса на создание сделки Роистат ожидает от сервера правильного ответа.

Вот пример рабочего ответа от сервера, который удовлетворит Roistat:

Однако здесь может возникнуть проблемка.

Ваша CRM система может отдавать ответ в формате UTF-8 with BOM, в связи с этим в ответе могут появиться лишние символы.

лишние символы в ответе при интеграции roistat и 1С

Три вопросительных знака здесь лишние

 

 

 

Из-за этого Роистат не воспринимает ответ как корректный.

 

Решение

Надо принудительно указать кодировку CESU-8 (либо UTF-8 wthout BOM).

Прикладываю код из модуля интеграции на «боевом» сервере 1С.

 

3. Дата создания сделки

Когда все пройдено и ваш глаз радуют графики с лидами и первыми продажами внезапно может расстроить несоответствие времени создания проскированной сделки в Роистат и в CRM.

Проксированная сделка в Roistat

Проксированная сделка в Roistat

Сделка созданная из Roistat в 1С

Сделка созданная из Roistat в 1С

Как видим разница строго в 3 часа.

Все дело в том, что сервера Roistat работают по времени UTC +0.

Все заявки они фиксируют по времени указанному в настройках проекта (в данном случае UTC+3).

А отдают в CRM в UTC+0.

Решение

Решение 1. При создании сделок в CRM и «разборе» параметра created_date в запросе – «накидывайте сверху» 3 часа.

Решение 2. Дату создания сделки присваивайте из даты вашей CRM системы.

 

4. Кодировка при выгрузке сделок

Roistat при чтении вашей выгрузки в формате XML или JSON «понимает» только кодировку UTF-8. Если кодировка будет другой, то сервер будет видеть выгрузку, но не сможет распознавать информацию в массивах statuses и orders.

Решение

Позаботьтесь о том, чтобы выгрузка была именно в формате UTF-8.

Прикладываю образец кода

 

5. Различные IP-адреса Roistat

Если вы для обеспечения безопасности собираетесь применять ограничение на IP адреса с которых разрешены входящие запросы к серверам, необходимо понимать 2 вещи:

  • Сервера Roistat «отдают» вебхуки к вашим серверам (при создании и при запросе сделок) с разных IP-адресов
  • Сотрудники саппорта Roistat не обладают техническими знаниями и компетенциями и вероятнее всего дадут Вам неполную информацию об IP-адресах серверов.

Опытным экспериментальным путем установлено что IP адреса с которых приходят запросы от Roistat принадлежат одному узлу, а значит можно смело расширять известные вам от саппорта IP-адреса до диапазонов на узловом уровне.

Решение

Запросив пул IP-адресов в Roistat расширьте каждый IP адрес до диапазона. Например. Если Вам Роистат выдал 2 адреса 87.982.33.45 и 89.44.678.43, то в настройках прокси-сервера пропишите следующие диапазоны с которых разрешены входящие запросы: 87.982.хх.хх и 89.44.ххх.хх

 

Успехов!

admin • 07.09.2017


Предыдущая запись

Следующая запись

Добавить комментарий

Почта не будет опубликована *