Імпорт заявок і товарів із CRM SalesDrive

5 хв

SalesDrive — українська CRM для інтернет-торгівлі: у ній менеджери обробляють заявки, дзвонять покупцям, оформлюють доставку й друкують ТТН. Elbuz підключається до неї з іншого боку: веде каталог і залишки, а заявки забирає до себе, щоб продажі, склад і документи зійшлися в одному місці.

Це підключення відрізняється від інших тим, що працює двома каналами одночасно: заявки приходять миттєво вебхуком, а каталог і залишки завантажуються з YML-експорту SalesDrive. Спільні правила приймання замовлень описано в огляді імпорту замовлень через API; тут — про SalesDrive.

Де це у програмі

У вікні завантаження створіть шаблон і оберіть тип «CRM SalesDrive». У картці «Підключення» три поля, і кожне відповідає за свій канал:

ПолеЗа що відповідає
Посилання (URL)YML-експорт товарів із SalesDrive — каталог і залишки
Кабінет SalesDriveСубдомен вашого кабінету (наприклад mycompany) — потрібен для завантаження замовлень по API
API-ключКлюч для читання заявок — історія замовлень і добір змінених

Окремо у формі є поле з адресою вебхука: Elbuz генерує її сам, вам лишається скопіювати (достатньо клацнути по полю) і вставити в налаштування SalesDrive.

Форма підключення CRM SalesDrive — картка «Підключення»
1Посилання на YML-експорт — каталог і залишки
2Поле «Кабінет SalesDrive» — субдомен
3Поле «API-ключ» — для завантаження замовлень
  1. Посилання на YML-експорт товарів із кабінету SalesDrive використовується для завантаження каталогу і залишків.
  2. У полі «Кабінет SalesDrive» вказується субдомен облікового запису, наприклад mycompany.
  3. API-ключ потрібен для завантаження історії замовлень через API.

Де що взяти в кабінеті SalesDrive

ДеЩо зробити
SalesDrive«Установки» → «Товари/Послуги» → «Експорт YML» — скопіювати посилання на експорт
Там само«Установки» → «Інші сервіси» → «Webhook» — вставити адресу вебхука з Elbuz
Там само«Установки» → «Інші сервіси» → «API» — створити ключ із правами «Заявки — читання»
ElbuzВікно завантаження → ваш шаблон «CRM SalesDrive» → картка «Підключення»

Elbuz забирає заявки й нічого не змінює в CRM, тож ключу вистачає прав читання заявок. Не видавайте інтеграції зайвих прав — це загальне правило безпеки, і тут воно нічого не коштує.

Як підключити крок за кроком

Створіть шаблон типу «CRM SalesDrive» і збережіть його — адреса вебхука з'являється саме для збереженого шаблону. Вставте посилання на YML-експорт, субдомен кабінету й API-ключ, скопіюйте адресу вебхука й пропишіть її в налаштуваннях SalesDrive. Порядок тут зручніший такий: спершу запустіть завантаження каталогу, щоб товари вже були в Elbuz, і лише потім вмикайте заявки.

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

Вебхук: заявки без затримки

Більшість підключень у Elbuz працюють поллінгом — програма періодично питає майданчик, чи є новини. SalesDrive — один із двох випадків, коли працює вебхук: CRM сама стукає в Elbuz, щойно заявка створена або змінена. Заявка з'являється в Elbuz за секунди, а не за розкладом.

Адреса вебхука містить секретний ключ, який Elbuz генерує при першому відкритті форми шаблону, — саме за ним він розуміє, у який шаблон класти заявку. Тому адресу не варто публікувати десь, окрім налаштувань самої CRM.

Обидва канали пишуть заявки з однаковими ознаками джерела, тому одна й та сама заявка, що приїхала й вебхуком, і плановим завантаженням, не подвоюється — вона впізнається й оновлюється. Практично це означає: вебхук ловить поточний потік, а планове завантаження добирає те, що могло загубитися (наприклад, поки Elbuz був недоступний), і переносить історію при першому підключенні.

Що приходить у заявці

Дані SalesDriveПоле документа в Elbuz
зовнішній номер заявкиНомер документа
дати створення й зміниДата замовлення, дата зміни
ім'я, по батькові, прізвище контактуПІБ покупця
телефон і пошта контактуТелефон, e-mail
сума до сплатиСума документа
коментарОпис замовлення
статус заявкиСтатус документа (через зіставлення)
спосіб оплатиВид оплати (через зіставлення)
служба доставки, статус ТТНВид доставки, статус доставки
номер ТТН, місто, адреса, відділенняДані доставки
позиції: назва, артикул, ціна, кількістьРядки документа

Статуси заявки, види оплат і служби доставки приходять кодами SalesDrive. Зіставити їх зі своїми довідниками можна кнопками в картці «Пов'язані налаштування» у формі шаблону — це різні таблиці: окремо статуси замовлення, окремо статуси доставки, оплати й види оплат.

Якщо в заявці на позицію задано знижку — у відсотках чи сумою, — Elbuz перераховує ціну рядка одразу, з урахуванням цієї знижки. Тому ціна позиції в Elbuz може відрізнятися від «базової» ціни товару: це та ціна, за якою реально продано.

Каталог і залишки

Товари з SalesDrive приходять не по API, а звичайним YML-фідом: ви вставляєте посилання на експорт із кабінету, і Elbuz читає його так само, як будь-який інший XML-прайс. Це зручно тим, що фід можна відкрити в браузері й побачити на власні очі, що саме віддає CRM.

Головна користь цього каналу — зіставлення позицій. У заявці SalesDrive у кожної позиції є поле «ID товару/послуги», і саме туди потрапляє ідентифікатор з фіда. Коли каталог і заявки приходять з одного джерела, позиції зіставляються з вашими картками автоматично, без здогадок за назвою.

Ліміти й розклад

API SalesDrive має жорсткі обмеження: близько 10 запитів на хвилину, 100 на годину і 1000 на добу. Elbuz їх поважає — між сторінками заявок він витримує паузу в кілька секунд, — але це означає, що масове завантаження історії йде неквапливо. Розклад планового завантаження тримайте консервативним: не частіше ніж раз на 15 хвилин. Поточний потік усе одно ловить вебхук, тож частіше й не треба.

Часті труднощі

Перша — заявки не приходять вебхуком. Перевірте, що адресу скопійовано повністю, разом із ключем на кінці, і що вона прописана в налаштуваннях SalesDrive, а не збережена десь у документі. Адреса генерується для конкретного шаблону, тож із чужим ключем заявка просто не знайде, куди їй лягти.

Друга — позиції не зіставляються з каталогом. Майже завжди причина в тому, що каталог у Elbuz прийшов не з того самого YML-експорту: ідентифікатори в заявці й у картках різні. Завантажте каталог із фіда SalesDrive і повторіть.

Третя — помилка про перевищення лімітів. Зменшіть частоту розкладу: поточний потік заявок і так ловить вебхук, а планове завантаження потрібне лише для історії та добору.

Навіщо зводити SalesDrive в Elbuz

SalesDrive сильна там, де йдеться про роботу менеджера із заявкою: воронка, дзвінки, ТТН. Але вона не веде склад із партіями й собівартістю, не рахує націнки за правилами й не збирає прайси постачальників. Elbuz бере на себе саме це: каталог, ціни, залишки, закупівлі й документи. Заявки, що приїхали з CRM, стають повноцінними документами продажу — з них списується товар, за ними видно виторг і маржу, а покупець лягає у вашу базу контрагентів разом із історією покупок.

Часті питання

Які права потрібні API-ключу SalesDrive?

Достатньо читання заявок («Заявки — читання»). Elbuz забирає дані й нічого не змінює в CRM, тож зайві права видавати не потрібно. Ключ створюється в кабінеті: «Установки» → «Інші сервіси» → «API».

Навіщо вебхук, якщо є API-ключ?

Вони роблять різне. Вебхук приносить заявки миттєво — CRM сама повідомляє Elbuz про нову чи змінену заявку. API-ключ потрібен, щоб перенести історію при першому підключенні й добрати те, що могло не дійти. Разом вони не конфліктують: та сама заявка не подвоюється, а оновлюється.

Чому завантаження історії таке повільне?

Через ліміти SalesDrive: близько 10 запитів на хвилину. Elbuz витримує паузи між сторінками, щоб не впертися в обмеження, тому велика історія переноситься поступово. Розклад планового завантаження не варто ставити частіше ніж раз на 15 хвилин.

Звідки беруться товари — теж по API?

Ні, каталог і залишки приходять з YML-експорту SalesDrive: ви вставляєте посилання на нього в поле URL шаблону. Це ж дає точне зіставлення позицій у заявках, бо в заявці зберігається ідентифікатор товару з цього самого фіда.

Чому всі заявки отримали однаковий статус?

Швидше за все, не заповнена таблиця зіставлення статусів: статус приходить кодом SalesDrive, і якщо відповідності не знайдено, документ отримує статус за замовчуванням. Відкрийте кнопку «Статуси замовлення» в картці «Пов'язані налаштування» і додайте потрібні рядки.

Чи була стаття корисною?