Вы запустили сайт на 1С-Битрикс и подключили YCLIENTS для онлайн-записи. Клиенты оставляют заявки через виджет, но данные о записях остаются в YCLIENTS — в CRM Битрикс они не попадают. Менеджеры вручную переносят информацию, тратят до 10 минут на одну запись, теряют до 30% лидов. При 50 записях в день это 500 минут — более 8 часов работы одного сотрудника. Средний чек салона красоты — $22–32, 30% потерянных лидов — это около $340–490 упущенной выручки ежедневно. Результат — снижение конверсии и недовольные клиенты.
Наша команда реализовала интеграцию для сети из 12 салонов красоты: после внедрения автоматизации время на обработку одной записи сократилось с 8 минут до 2 секунд — это в 240 раз быстрее ручного ввода, а конверсия в продажу выросла на 22%. Как это работает — разберём ниже.
Почему важна синхронизация YCLIENTS и Битрикс?
Единая CRM — это не просто удобство, а основа для маркетинга и аналитики. Вы видите, с какого источника пришёл клиент, какие услуги популярны, где теряются заявки. Без интеграции эти данные разрознены, а бизнес-процессы тормозятся ручным вводом. Webhook-обработка позволяет реагировать мгновенно: клиент записался — в CRM уже лид.
Что интегрируем: ключевые сценарии
YCLIENTS предоставляет REST API v2. Основные сущности: records, clients, services, staff, bookforms. Для нас приоритетны записи и клиенты.
Сценарии:
- Новая запись в YCLIENTS → лид в CRM (создание или обновление)
- Клиент из CRM → карточка клиента в YCLIENTS (двунаправленная синхронизация)
- Отмена записи → обновление статуса сделки (JUNK)
- Витрина услуг YCLIENTS на сайте через виджет
YCLIENTS API: авторизация
YCLIENTS использует Bearer-токен, получаемый в обмен на логин/пароль. Токен живёт долго (несколько месяцев), храним в настройках модуля.
namespace Local\YClients;
class ApiClient
{
private string $baseUrl = 'https://api.yclients.com/api/v1';
private string $partnerToken;
private string $userToken;
public function __construct()
{
$this->partnerToken = \Bitrix\Main\Config\Option::get('local.yclients', 'partner_token');
$this->userToken = \Bitrix\Main\Config\Option::get('local.yclients', 'user_token');
}
public function request(string $method, string $path, array $data = []): array
{
$url = $this->baseUrl . $path;
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 15,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $this->partnerToken . ', User ' . $this->userToken,
'Accept: application/vnd.yclients.v2+json',
'Content-Type: application/json',
],
]);
if ($method === 'POST') {
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
} elseif ($method === 'PUT') {
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
}
$response = json_decode(curl_exec($ch), true);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode >= 400) {
throw new \RuntimeException("YCLIENTS API error {$httpCode}: " . ($response['meta']['message'] ?? 'unknown'));
}
return $response['data'] ?? $response;
}
} Как настроить вебхук для создания лидов?
YCLIENTS поддерживает события: record_created, record_updated, record_cancelled, client_created. Настройка в ЛК YCLIENTS: Интеграции → Webhook.
// /local/api/yclients-webhook.php
require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php');
$payload = json_decode(file_get_contents('php://input'), true);
$signature = $_SERVER['HTTP_X_YCLIENTS_HOOK_SIGNATURE'] ?? '';
$body = file_get_contents('php://input');
$secret = \Bitrix\Main\Config\Option::get('local.yclients', 'webhook_secret');
if (hash_hmac('sha256', $body, $secret) !== $signature) {
http_response_code(403);
exit;
}
$eventType = $payload['resource'] ?? '';
$data = $payload['data'] ?? [];
match ($eventType) {
'record_created' => (new \Local\YClients\RecordHandler())->onCreate($data),
'record_cancelled' => (new \Local\YClients\RecordHandler())->onCancel($data),
'record_updated' => (new \Local\YClients\RecordHandler())->onUpdate($data),
default => null,
};
http_response_code(200);
Обработчик записи создаёт лид с полями: название (услуги), телефон, имя, комментарий с деталями, а также пользовательские поля для идентификации записи в YCLIENTS. При отмене статус сделки меняется на JUNK.
Синхронизация клиентов из Битрикс в YCLIENTS
При создании сделки в Битрикс (клиент заинтересован в услуге) автоматически создаём клиента в YCLIENTS. Поиск по телефону — если найден, обновляем карточку, если нет — создаём новую. ID клиента сохраняется в пользовательском поле сделки.
Варианты интеграции: таблица сравнения
| Способ | Когда использовать | Сложность | Срок |
|---|---|---|---|
| Вебхуки | Требуется мгновенная реакция на события в YCLIENTS | Низкая | 1–2 недели |
| Pull API | Нужна периодическая выгрузка данных (раз в час) | Средняя | 2–3 недели |
| Двунаправленная синхронизация | Полная консистентность данных | Высокая | 3–5 недель |
Что входит в работу (deliverables)
- Детальная документация по интеграции (схемы данных, конфиги)
- Исходный код модуля с комментариями
- Настройка вебхуков и токенов
- Создание пользовательских полей в CRM
- Тестирование на staging-окружении
- Обучение администраторов (1 час)
- Гарантия на код 6 месяцев и поддержка после запуска
Пошаговая инструкция по настройке вебхука (для администраторов)
- Получите партнёрский токен в ЛК YCLIENTS (Настройки → API).
- Сохраните токен и секрет вебхука в настройках модуля.
- Разместите файл-обработчик по адресу
/local/api/yclients-webhook.php. - В ЛК YCLIENTS добавьте URL вебхука (Интеграции → Webhook → Добавить).
- Проверьте создание записи — в CRM появится новый лид.
Типовые этапы интеграции
| Этап | Что делаем | Срок |
|---|---|---|
| Анализ | Изучаем текущий сайт, YCLIENTS, сценарии | 1–2 дня |
| Проектирование | Создаём схему данных, определяем пользовательские поля | 1 день |
| Разработка | Пишем API-клиент, вебхук-обработчик, синхронизацию | 5–10 дней |
| Тестирование | Проверяем все сценарии, обрабатываем edge cases | 2–3 дня |
| Деплой | Выкатываем на продакшен, настраиваем мониторинг | 1 день |
Сроки и как заказать
Базовая интеграция (вебхук → лид) занимает 1–2 недели. Двусторонняя синхронизация с витриной услуг — 3–5 недель. Средний проект обходится в $1k–2.5k, но финальная стоимость рассчитывается индивидуально и зависит от сложности.
Более 7 лет занимаемся интеграциями Битрикс и YCLIENTS, реализовали 40+ проектов для салонов красоты, клиник и фитнес-центров.
YCLIENTS REST API v2 Documentation
Получите консультацию по интеграции вашего проекта. Оценим сроки и сложность. Закажите интеграцию — и мы подготовим детальный план автоматизации.







