Салон красоты или клиника ведёт запись в Dikidi — клиенты бронируют через приложение, мастера видят расписание. Сайт на Битрикс живёт отдельно: каталог услуг, цены, акции, но записаться можно только по телефону или через виджет Dikidi. Интеграция нужна, чтобы сайт и система записи работали как единое целое: актуальное расписание на сайте, запись без перехода на внешний сервис, данные клиентов попадают в CRM. Наша команда уже выполнила более 50 интеграций с внешними сервисами для Битрикс — опыт позволяет предусмотреть все нюансы и гарантировать стабильную работу обмена.
Типичный сценарий: клиент хочет записаться на стрижку, но на сайте видит только цены. Ему приходится либо звонить, либо переходить в Dikidi. При звонке администратор тратит 5 минут на подбор слота вручную. При переходе в Dikidi пользователь покидает сайт, а данные о записи не попадают в CRM. Интеграция решает обе проблемы: форма записи прямо на сайте, расписание синхронизировано, данные клиента автоматически сохраняются в Битрикс24.
Мы интегрировали Dikidi с сайтами на Битрикс более 15 раз. В этой статье — архитектура решения, подводные камни и что получает бизнес.
Что такое Dikidi API?
Dikidi предоставляет REST API (документация по запросу через support), который позволяет управлять услугами, мастерами, расписанием и бронированиями. Основные эндпоинты:
-
GET /api/v2/company/{id}/services— список услуг с ценами и длительностью -
GET /api/v2/company/{id}/masters— мастера с расписанием -
GET /api/v2/company/{id}/schedule— свободные слоты на дату для конкретного мастера и услуги -
POST /api/v2/company/{id}/booking— создание записи (мастер, услуга, дата, время, данные клиента) -
GET /api/v2/company/{id}/booking/{id}— статус записи
Авторизация — по API-ключу в заголовке Authorization. Ключ выдаётся при подключении тарифа с доступом к API. Ограничение: не все тарифы Dikidi включают API. На базовом тарифе доступен только виджет (iframe). API — на тарифах «Бизнес» и выше. Уточняйте перед началом работ.
Какой вариант интеграции выбрать?
Если нужно быстро — можно просто вставить iframe-виджет Dikidi. Код вставки — одна строка в шаблоне компонента или в редакторе страницы:
<iframe src="https://dikidi.net/widget/{company_id}" width="100%" height="700" title="Embedded content from dikidi.net"></iframe> Этот вариант работает за 10 минут, но вы теряете контроль над UX, дизайн чужой, данные не попадают в CRM, SEO-ценность нулевая. Виджет подходит как временное решение, но для полноценного бизнеса лучше кастомная интеграция через API. Она даёт полный контроль над внешним видом, передачу данных в CRM и возможность аналитики.
Почему стоит выбрать кастомную интеграцию?
Кастомная интеграция превращает Dikidi в бэкенд расписания, а форма записи становится частью сайта. Вы контролируете каждый шаг пользователя, дизайн шагов, можете добавлять свои поля (промокоды, комментарии к записи). Данные о записях синхронизируются с CRM Битрикс24, что позволяет менеджерам видеть полную историю клиента, а не только записи через сайт. Такая интеграция окупается быстро: сокращение времени на подбор слота на 80% и исключение двойных записей.
Как работает кастомная интеграция с Dikidi?
Архитектура:
- Ежедневный крон-скрипт (
CAgent) забирает список услуг и мастеров из Dikidi API и сохраняет в highload-блок или инфоблок. Это нужно, чтобы страницы каталога услуг работали без запросов к API Dikidi на каждый хит. - Кастомный компонент
custom:dikidi.bookingна странице услуги:- Шаг 1: выбор мастера (данные из HL-блока)
- Шаг 2: выбор даты и времени — AJAX-запрос к Dikidi API
/schedule(в реальном времени, кешировать слоты нельзя — они меняются ежеминутно) - Шаг 3: контактные данные клиента
- Шаг 4: подтверждение —
POST /booking
- Обработка ответа. При успешной записи Dikidi возвращает
booking_id. Сохраняем в HL-блокDikidiBookingс привязкой к пользователю Битрикс (если авторизован) и к записи CRM.
Что даёт синхронизация с CRM Битрикс24?
Запись через сайт создаёт лид или сделку в CRM:
- При подтверждении записи — REST-запрос
crm.lead.addилиcrm.deal.addс данными: имя клиента, телефон, услуга, мастер, дата/время - Источник лида — «Запись с сайта (Dikidi)» (добавить в справочник источников через
crm.status.add) - В UF-поле сделки сохраняем
booking_idDikidi для сквозной связи
Обратная синхронизация: если менеджер отменяет сделку в CRM — webhook вызывает DELETE /booking/{id} на API Dikidi. Реализуется через робота CRM на стадии «Отменена».
Webhook от Dikidi: как не потерять ни одной записи
Dikidi поддерживает исходящие уведомления о событиях (если настроено): новая запись, отмена, изменение. Endpoint на стороне Битрикс — php-скрипт в /local/tools/dikidi_webhook.php, который:
- Проверяет подпись запроса
- Создаёт или обновляет запись в HL-блоке
- Создаёт лид в CRM (если запись сделана через приложение Dikidi, а не через сайт)
Это закрывает обратный сценарий: клиент записался через приложение Dikidi — сайт и CRM об этом знают.
Подводные камни интеграции
- Часовой пояс. Dikidi хранит время в UTC, Битрикс — в серверном часовом поясе. Если не конвертировать — запись на 15:00 отобразится как 18:00 (для UTC+3).
- Rate limit API. Dikidi ограничивает частоту запросов. Если на сайте 10 пользователей одновременно выбирают слоты — можно упереться в лимит. Решение: кеширование списка мастеров и услуг, запросы расписания — только при выборе конкретного мастера и даты.
- Дубли клиентов. Один клиент записывается через сайт (создаётся в Dikidi) и через приложение. Dikidi идентифицирует по телефону — проблем нет. Но в CRM Битрикс24 дубль может появиться, если webhook и обработчик сайта создадут два лида. Решение: перед созданием лида проверять
crm.duplicate.findbycomm.
Что входит в работу
| Этап | Описание | Результат |
|---|---|---|
| Анализ | Проверка доступности API Dikidi, согласование архитектуры | Техническое задание |
| Проектирование | Разработка схемы данных, компонентов, обработчиков | Документация по интеграции |
| Разработка | Написание компонента, крон-скриптов, webhook | Рабочий код на staging |
| Интеграция с CRM | Настройка REST API, бизнес-процессов, роботов | Лиды и сделки из записей |
| Тестирование | Проверка сценариев записи, отмены, дублей | Протокол тестирования |
| Деплой и сопровождение | Развёртывание на продакшн, обучение администратора | Инструкция по эксплуатации |
Сроки реализации
| Вариант | Работы | Срок |
|---|---|---|
| Виджет (iframe) | Вставка кода, стилизация обёртки | 1 день |
| API-интеграция: каталог + форма записи | Компонент, AJAX, кеширование, HL-блок | 1 неделя |
| API + CRM + webhook + обратная синхронизация | Полная двусторонняя интеграция | 1.5–2 недели |
Dikidi — закрытая экосистема, и качество интеграции зависит от доступности API на вашем тарифе. Оценим ваш проект бесплатно — свяжитесь с нами для консультации. Наш опыт более 8 лет в разработке на Битрикс гарантирует, что интеграция будет работать стабильно и без сюрпризов. Закажите интеграцию сегодня — получите рабочий прототип в течение недели.







