Дистриб'ютор запчастин витрачав 30 секунд на перемикання між 1С та Бітрікс24, поки ми не впровадили REST-віджет. Менеджер з продажу відкриває угоду, а перед ним — лише поля, які він заповнив вручну. В обліковій системі — три роки історії, кредитний ліміт, рекламації, архів замовлень. Щоб їх переглянути, доводиться перемикатися між вкладками, копіювати ID, втрачати час. Дані розходяться — в CRM одна сума, в 1С — інша. REST-додаток для Бітрікс24 вирішує цю проблему: він вбудовує зовнішню інформацію прямо в інтерфейс порталу, через віджети та REST API. Ми, сертифіковані Bitrix-розробники з десятирічним досвідом, реалізували понад 50 таких інтеграцій. Середня економія на ручному введенні — 200 000 грн на рік. Кожен додаток — це продумана архітектура: від OAuth-потоку до обробки лімітів API. Отримайте консультацію — ми оцінимо ваше завдання.
Як влаштований REST-додаток в Бітрікс24?
REST-додаток — це зовнішній веб-сервіс, який взаємодіє з порталом через OAuth 2.0 та REST API (https://domain.bitrix24.ru/rest/). Додаток може вбудовувати віджети в картки CRM, підписуватися на події, читати та записувати дані. Є два типи: тиражні (публікуються в Маркетплейс) та вбудовані (для одного порталу). Для корпоративних завдань частіше обирають вбудовані — вони простіші, але не масштабуються на кілька порталів. Ми допоможемо визначитися з архітектурою, враховуючи ваші бізнес-процеси та необхідність інтеграції з 1С через CommerceML. REST API Бітрікс24 налічує понад 700 методів, що покриває всі сутності CRM, задачі, дзвінки, бізнес-процеси.
Які дані можна отримати через REST API?
Через REST API доступні всі ключові об'єкти: угоди, контакти, компанії, ліди, рахунки, пропозиції, задачі, календарі, дзвінки, бізнес-процеси (Bizproc). Методи дозволяють не лише читати, а й створювати, оновлювати, видаляти записи. Також є доступ до користувацьких полів та подій. Це дає можливість будувати гнучкі інтеграції з будь-якими зовнішніми системами — від складського обліку до CRM.
Чому REST-додаток швидше за самописні скрипти?
Самописний скрипт без кешування та batch-запитів може бути в 10 разів повільнішим. REST-додаток використовує теговане кешування, зменшуючи навантаження на сервер та час відгуку віджета до 1–2 секунд. Згідно з офіційною документацією REST API, підтримка batch-запитів скорочує кількість викликів. Офіційний API підтримує події, що дозволяє реагувати на зміни даних в реальному часі. Ми реалізували додаток для дистриб'ютора запчастин: віджет в картці угоди завантажує залишки з 1С та кредитну історію. Час завантаження скоротився з 30 секунд до 0.5 секунди за рахунок Redis-кешу. Економія часу на 30% еквівалентна 150 000 грн на місяць. Таке рішення окупається в середньому за 3–6 місяців за рахунок скорочення ручного введення.
Детально: віджет в картці угоди
Найчастіший сценарій — вбудувати зовнішні дані прямо в CRM. Реєстрація placement через REST API:
// Виклик при встановленні додатку $client->call('placement.bind', [ 'PLACEMENT' => 'CRM_DEAL_DETAIL_TAB', 'HANDLER' => 'https://myapp.example.com/widget/deal/', 'TITLE' => 'Історія клієнта', 'OPTIONS' => ['extraData' => 'ENTITY_ID'], ]); Коли менеджер відкриває угоду, Бітрікс24 завантажує iframe з URL вашого додатку, передаючи ENTITY_ID.
Додаток:
- Отримує
ENTITY_IDзplacement.info() - Робить REST-запит
crm.deal.getдля отримання ID контакту/компанії - За ID контакту звертається до внутрішньої облікової системи
- Відображає історію покупок, кредитний ліміт, відкриті задачі
Для надійності ми додаємо обробку помилок та повтор при збоях.
OAuth 2.0: авторизація та зберігання токенів
При реєстрації додатку портал видає client_id та client_secret. Користувач авторизує додаток, отримуємо access_token (TTL 1 година) та refresh_token (TTL 30 днів). Ми зберігаємо токени в зашифрованому вигляді (AES-256) та автоматично оновлюємо їх перед кожним запитом:
class Bitrix24OAuth { public function refreshToken(string $refreshToken): array { $response = Http::post('https://domain.bitrix24.ru/oauth/token/', [ 'grant_type' => 'refresh_token', 'client_id' => config('b24.client_id'), 'client_secret' => config('b24.client_secret'), 'refresh_token' => $refreshToken, ]); TokenStorage::save($response['access_token'], $response['refresh_token']); return $response; } } Типові помилки при розробці REST-додатків
- Небезпечне зберігання токенів: токени у відкритому вигляді або в базі без шифрування. Використовуйте AES-256.
- Ігнорування лімітів API: без черги запитів та повторних спроб додаток буде блокуватися. Налаштуйте rate limiter на Redis.
- Відсутність обробки подій: постійний polling замість підписки на події створює зайве навантаження.
Що входить в розробку REST-додатку?
| Тип роботи | Базовий | Розширений |
|---|---|---|
| OAuth 2.0 | Так | Так |
| Один віджет | Так | Так |
| Додаткові віджети | Ні | До 3 |
| Вебхуки | Ні | Так |
| Документація | Базова | Повна |
| Навчання | Ні | 1 година |
| Масштаб | Склад | Термін |
|---|---|---|
| Базовий | OAuth + 1 віджет + читання CRM | 2–3 тижні |
| Середній | Кілька віджетів + запис + вебхуки | 4–6 тижнів |
| Розширений | Складні інтеграції + черга + моніторинг | 8–12 тижнів |
Як будується процес роботи?
- Аналітика: вивчаємо вашу бізнес-логіку, поточні процеси та облікові системи.
- Проектування: узгоджуємо архітектуру, стек та API.
- Розробка: створюємо REST-додаток на PHP 8.1+ з інфоблоками v2.0 та ORM.
- Тестування: перевіряємо віджети в тестовому порталі, навантажувальне тестування.
- Деплой та супровід: встановлюємо на бойовий портал, передаємо документацію.
Зв'яжіться з нами для обговорення проекту — оцінимо завдання та запропонуємо архітектуру. Ми готові взятися за інтеграцію будь-якої складності: від простого віджета до комплексного рішення з 1С, amoCRM та іншими системами. Замовте розробку REST-додатку — ми підберемо оптимальне рішення під ваше завдання.







