Повний опис
Інтеграція програм BAS з "SalesDrive" - універсальний обмін між об'єктами "SalesDrive" та програм BAS.
Мал. 1. Схема обміну з SalesDrive.
Як реалізовано:
А - Обмін замовленнями з сайтом (може не бути)
Замовлення надходить із сайту. У зворотному напрямку зміни статусу замовлення/предзамовлення.
Б – Обмін замовленнями з BAS.
Замовлення надходить з SalesDrive до BAS. Назад відправляються зміни статусу замовлення/предзамовлення.
Виходячи із схеми обміну (мал. 1), замовлення (заявка) у SalesDrive може бути створена як вручну в SalesDrive, так і отримана під час обміну з сайтом. Але частина Б працюватиме однаково в будь-якому з цих варіантів.
Функціонал інтеграції включає в себе:
1. Отримання замовлення/предзамовлення по WebHook.
При створенні замовлення або зміні його статусу зі сторони SalesDrive надсилається повідомлення з даними замовлення. На боці BAS воно приймається HTTP-сервісом.
Результат:
а) Створюється/змінюється замовлення та його статус у BAS;
б) Надсилається (за допомогою API) у SalesDrive номер створеного документа (якщо це дозволено відповідним налаштуванням).
2. При зміні статусу замовлення в BAS значення статусу відправляється в SalesDrive (за допомогою API) (якщо це дозволено відповідним налаштуванням)
3. Оскільки API SalesDrive не передбачає зміни суми замовлення, при зміні суми замовлення/предзамовлення до BAS, у коментарі замовлення до BAS, додається рядок «Увага змінена сума замовлення - 0000.00 грн.» та значення коментаря (за допомогою API) надсилається до SalesDrive.

Мал. 2. Налаштування інтеграції з SalesDrive.
У налаштуваннях інтеграції вказуються параметри авторизації для роботи з API (Account та API key).
Мал. 3. Як знайти параметри Account та API Key (1).

Мал. 4. Як знайти параметри Account та API Key (2).
Для прийому Webhook необхідно опублікувати HTTP-сервіс інтеграції (називається SalesDrive) та виконати прокидання порту.
В результаті має вийти URL такого виду:
http://<зовнішній IP>:<порт>/<ім'я публікації>/hs/SalesDrive/WebHook
Його потрібно вказати у налаштуваннях Webhook SalesDrive (див. мал. 5).

Мал. 5. Де вказується URL для Webhook SalesDrive.
У цьому рішенні частково використовується функціонал інтеграції з Битрикс24.
Зокрема, використовується механізм налаштування сутності обміну. Він дозволяє в режимі користувача додавати/змінювати необхідні поля в сутність обміну.

Мал. 6. Сутність обміну (Замовлення/Предзамовлення).
Для роботи з довідниками API SalesDrive для довідкових значень сутності додано можливість ідентифікації за ID (у стандартній інтеграції з Битрикс24 цього не потрібно (і не було)).

Мал. 7. Довідники сутностей обміну з ідентифікацією зокрема за ID.
Відповідності значень довідників вказуються так само, як в інтеграції з Битрикс24.

Мал. 8. Налаштування відповідності значень довідників SalesDrive.
ID об'єкта зберігається у тому самому реєстрі, що й для Битрикс24. Щоб зрозуміти, що це SalesDrive ID, він записується з префіксом "SD_":

Мал. 9. ID SalesDrive зберігається в тому ж регістрі, що використовувався в інтеграції з Битрикс24.
Для налаштування сутності обміну можна використовувати всі поля заявки, які надходять по Webhook (усі поля розділу data в JSON Webhook SalesDrive).

Мал. 10. Принцип налаштування сутності обміну для інтеграції з SalesDrive.
Вартість роботи: від 16000 грн.
Розробник: Компанія «ЕНСІТІ»
www.nct.ua
info@nct.ua