Русский  English  Все проекты

Настроить интеграцию между двумя компаниями посредством API



Этап 1 Заказы создаются на стороне Компании 1 и передаются в AmoCRM в виде сделок.

Порядок действий:

Создание заказа в Компании 1 в статусе “В обработке”.
Поиск контакта в AmoCRM по кастомному полю detmirUserId (field_id: 932790), в котором хранится идентификатор пользователя Компании 1.
Если контакт не найден, создается новый. Заполняются поля: имя, фамилия, телефон, detmirUserId.
Создание сделки. Параметры:
Воронка: Компания 2,
Начальный статус: Новый лид,
Контакт: из п.2,
Тег: “Компании 1. Сервисы” (ID тега 499278),
ID заказа в Компании 1: кастомное поле detmirOrderId (field_id: 932792).
В заказе Компании 1 сохраняется дополнительная информация в поле addtitionalInfo
{
"contactId": number,
"externalId": number,
"closedByDetmir": boolean
}
где
contactId - ID контакта в AmoCRM,
externalId - ID сделки в AmoCRM,
closedByDetmir - признак закрытия заказа со стороны Компании 1.
Спустя 4 часа созданные на стороне Компании 1 заказы переводятся в статус “Исполнено”, а в addtitionalInfo выставляется флаг closedByDetmir = true
Этап 2 Создание заказов на стороне Компании 1 и отправка их в AmoCRM как на этапе 1.

Компания 1 отключает автоматическое закрытие заказов. Вместо этого редактирование заказов осуществляет интеграционный сервис Компании 2.

Обновления необходимо передавать в Компании 1 по факту наступления событий в сделках.

Список событий для обработки

Событие в AmoCRM

Действие в Компании 1

Переход в “Записан на пробное”

Сменить статус заказа с on_approval на approved

Переход в “Подтвердили ВУ”

Сменить статус заказа с approved на in_work

Переход в “Занятие прошло”


Переход в “Ждем решение”


Переход в “Ждем оплату”

Передать сумму заказа (поле cost)

Получена оплата

Отметить заказ как оплаченный

(paid: true)

Передать состояние подписки

Прошел очередной урок

Обновить состояние подписки

Успех


Отказ

Перевести заказ в статус rejected



Этап 3 “Компания 2” создает вебвью с поддержкой бесшовной авторизации, а также реализует полный флоу работы с заказами в Компании 1 посредством интеграционного API.

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

Компания 1 в свою очередь отключает возможность создания заказов по услуге от сервиса Компании 2.


28.05.2022 20:07



 Ответы фрилансеров