# Интеграция BotMan и YCLIENTS через Albato

Source: https://docs.botman.pro/a/110-integratsiya-botman-i-yclients-cherez-albato

## Что можно сделать

Если вы ведёте запись клиентов в YCLIENTS, BotMan можно связать с ним через [Albato](https://albato.ru/integration-yclients-botman). Обмен работает в обе стороны.

**Из YCLIENTS в BotMan** (триггер YCLIENTS → действие BotMan):

- клиент записался → подтверждение записи в боте;
- приближается визит → напоминание за нужное количество часов;
- визит прошёл или запись отменена → тег, сценарий с отзывом или повторной записью.

**Из BotMan в YCLIENTS** (триггер BotMan → действие YCLIENTS):

- новый подписчик оставил телефон → клиент в базе YCLIENTS;
- подписчик выбрал услугу и время в боте → новая запись в YCLIENTS.

Эта статья — только про YCLIENTS. Как зарегистрироваться в Albato, подключить BotMan, а также полный список триггеров и действий BotMan — в статье [Что такое интеграция с Albato](https://docs.botman.pro/a/64-chto-takoe-integratsiya-s-albato).

## Что понадобится

Платный тариф BotMan, аккаунт Albato и подключённый BotMan — как в [общей статье](https://docs.botman.pro/a/64-chto-takoe-integratsiya-s-albato). Для YCLIENTS дополнительно нужны:

| Что | Зачем |
| --- | --- |
| Логин и пароль YCLIENTS | Для подключения YCLIENTS к Albato |
| Токен интеграции с телефонией | Тоже для подключения. Находится в YCLIENTS: выбор сети (логотип в левом верхнем углу) → «Телефония» |
| Аккаунт разработчика YCLIENTS | Нужен только для триггеров-вебхуков (запись, клиент, операции): через него Albato получает события из YCLIENTS |

---

## Как подключить YCLIENTS к Albato

Подробная инструкция с картинками — в статье Albato [Подключение YClients к Albato](https://help.albato.ru/ru/article/podklyuchenie-yclients-k-albato-1h0acrb/). Ниже — краткая версия.

**Шаг 1️⃣. Подключите BotMan**

Если BotMan ещё не подключён к Albato, сделайте это по разделу «Как подключить BotMan к Albato» в статье [Что такое интеграция с Albato](https://docs.botman.pro/a/64-chto-takoe-integratsiya-s-albato).

**Шаг 2️⃣. Создайте подключение YCLIENTS**

1\. В Albato откройте **Подключения** и нажмите **Добавить подключение** (или выберите YCLIENTS прямо на шаге связки и нажмите **Добавить подключение** в поле «Подключите свой аккаунт YClients к Albato»).

2\. В окне **Создаем подключение к: YClients**заполните поля:

- **Название вашего подключения** — любое, по умолчанию «Мой аккаунт YClients»;
- **Логин** и **Пароль** — от вашей учётной записи YCLIENTS;
- **Токен интеграции с телефонией** — в YCLIENTS нажмите на логотип в левом верхнем углу, выберите сеть, откройте раздел «Телефония» и скопируйте токен. Другой путь: «Обзор» → «Звонки» → ссылка «Настроить интеграцию можно в главной сети Вашего филиала». Токен у каждой сети свойё

![](https://storage.yandexcloud.net/botman-knowledge-prod/kb/6aec5304d3ac9dc31d82ccf6/d7519d8402a508bfc10e1967d68e5c63e36f9ff5880e7f89bf8f03f9bff1d8f2.jpg)

3\. Нажмите **Далее**.

![](https://storage.yandexcloud.net/botman-knowledge-prod/kb/6aec5304d3ac9dc31d82ccf6/34943b74c63b7ad1acf46adc33d3cae1e8fc575903fa6757dcb08024298c1bd4.png)

**Шаг 3️⃣. Настройте вебхуки (для триггеров с вебхуком)**

Большинство триггеров YCLIENTS работают через вебхуки: YCLIENTS сам отправляет события в Albato. В YCLIENTS это настраивается только через Маркетплейс:

1. Зарегистрируйтесь в [личном кабинете разработчика YCLIENTS](https://yclients.com/appstore/developers/registration).
2. Создайте новое приложение с типом **«Непубличное»**.
3. Откройте приложение → **«Настройки подключения»** и вставьте адрес вебхука из Albato (в Albato: «Подключения» → ваше подключение YClients → поле с адресом вебхука) в поле **«Адрес, на который отправлять уведомления»**.
4. В разделе **«Аккаунт разработчика»** откройте карточку приложения и скопируйте **«Ссылку на приложение»**.
5. Откройте эту ссылку в браузере и нажмите **«Подключить»** — вебхуки установятся в выбранный филиал.

Для API-триггеров («Получить записи за день», «Получить записи за кол-во часов до визита») и для действий YCLIENTS шаг 3 не нужен.

Адрес вебхука один на подключение: все триггеры-вебхуки YCLIENTS в ваших связках получают события через него, а Albato сам определяет, какую связку запустить. Поэтому вебхук в YCLIENTS настраивается один раз, даже если связок несколько.

---

## Триггеры и действия YCLIENTS

У YCLIENTS в Albato два типа триггеров — их видно по значку справа от названия события.

| Тип | Значок | Как работает |
| --- | --- | --- |
| Вебхук | Значок вебхука | YCLIENTS сам отправляет событие в Albato, связка запускается сразу. Нужна настройка вебхуков (шаг 3 выше) |
| API | Надпись API | Albato сам опрашивает YCLIENTS по расписанию — по умолчанию раз в пять минут — и забирает новые данные. Каждая найденная запись запускает связку отдельно, повторно одна и та же запись не обрабатывается. [Подробнее о типах триггеров](https://help.albato.ru/ru/article/triggery-yd8qb6/) |

**Триггеры YCLIENTS**

| Триггер | Тип | Когда полезен |
| --- | --- | --- |
| Получена запись | Вебхук | Клиент записался или запись изменилась — подтверждение, отмена, перенос |
| Получен клиент | Вебхук | Новый клиент в базе YCLIENTS |
| Получить записи за кол-во часов до визита | API | Напоминание о визите за N часов |
| Получить записи за день | API | Сводка или напоминания по всем записям дня |
| Получена финансовая операция | Вебхук | Оплата визита — благодарность, бонусы |
| Получена операция продажи товара | Вебхук | Покупка товара в салоне |
| Получена услуга, категория услуг, сотрудник, товар | Вебхук | Изменения в справочниках — для синхронизации, в связках с ботом нужны редко |
| Операции прихода, списания, перемещения товара и расходников | Вебхук | Складской учёт — в связках с ботом нужны редко |

**Действия YCLIENTS:** Новый клиент, Найти клиента, Новая запись, Создать запись на сеанс (для онлайн-форм), Изменить запись, Удалить запись, Найти запись, Получить записи клиента, Получить рабочие даты салона/сотрудника, Получить свободное время сотрудника в чат, Кастомный API-запрос.

**Создание, изменение и удаление записи.** YCLIENTS отправляет вебхук не только при создании записи, но и при её изменении и удалении — тип события передаётся в поле статуса (create, update, delete). Поэтому триггер «Получена запись» может срабатывать несколько раз на одну и ту же запись. Чтобы реагировать только на нужное событие, добавьте после триггера фильтр по этому полю. Точное название поля посмотрите в тесте триггера.

---

## Пример 1. Новая запись в YCLIENTS → подтверждение в боте

**Задача:** клиент записался в YCLIENTS (сам через виджет или через администратора) — бот присылает ему подтверждение с датой, временем и мастером.

**Схема:** YCLIENTS: Получена запись → BotMan: Поиск подписчика → BotMan: Отправка сообщения.

1. **Триггер.** Добавить триггер → YCLIENTS → **Получена запись**, выберите подключение YCLIENTS и нажмите «Продолжить». Убедитесь, что вебхуки настроены (шаг 3 подключения).
2. **Найдите подписчика.** Добавить действие → BotMan → **Поиск подписчика**: поле — телефон, значение — телефон клиента из записи. Телефон в BotMan хранится в формате +79991234567 — если YCLIENTS передаёт его иначе, приведите формат инструментами Albato.
3. **Фильтр.** Продолжать, только если подписчик найден — иначе связка будет падать на клиентах, которых нет в боте.
4. **Отправьте сообщение.** Добавить действие → BotMan → **Отправка сообщения**: в «ID подписчика» — результат шага 2, в текст — данные из записи, например:

> Вы записаны на {услуга} к мастеру {сотрудник} — {дата}, {время}. Ждём вас!

5. Запустите связку и проверьте: создайте тестовую запись в YCLIENTS на телефон подписчика бота.

Чтобы клиент не получал подтверждение повторно при каждом изменении записи, добавьте сразу после триггера фильтр: статус события — create. Отдельной связкой с фильтром delete можно сообщать об отмене записи, с фильтром update — о переносе.

Вместо сообщения можно поставить тег (например, «Записан») или запустить сценарий — с адресом салона, правилами подготовки к процедуре и т.д.

## Пример 2. Напоминание о визите за N часов

**Задача:** за 24 часа (или любое другое время) до визита бот напоминает клиенту о записи и предлагает подтвердить или перенести её.

**Схема:** YCLIENTS: Получить записи за кол-во часов до визита → BotMan: Поиск подписчика → BotMan: Запуск сценария.

1. **Триггер.** Добавить триггер → YCLIENTS → **Получить записи за кол-во часов до визита** и укажите, за сколько часов напоминать. Это API-триггер: вебхуки для него не нужны.
2. **Найдите подписчика.** Добавить действие → BotMan → **Поиск подписчика** по телефону клиента (формат +79991234567).
3. **Фильтр.** Продолжать, только если подписчик найден.
4. **Запустите сценарий.** Добавить действие → BotMan → **Запуск сценария**: выберите сценарий-напоминание с кнопками «Подтверждаю» и «Перенести». Сценарий должен быть из того же канала, что и подписчик.

Чтобы подставить в сценарий дату и время визита, сначала запишите их в пользовательские поля подписчика действием **Изменение пользовательского поля подписчика**, а затем используйте эти поля в тексте сообщения.

API-триггер опрашивает YCLIENTS по расписанию (по умолчанию раз в пять минут), поэтому напоминание может прийти на несколько минут позже ровного срока.

Открытый вопрос: как в триггере задаётся количество часов и можно ли сделать два напоминания (например, за сутки и за 2 часа) — двумя связками или одной.

## Пример 3. Подписчик бота → клиент в YCLIENTS

**Задача:** подписчик оставил в боте имя и телефон — он появляется в базе клиентов YCLIENTS, и администратор может сразу записать его.

**Схема:** BotMan: Изменение подписчика → фильтр «телефон заполнен» → YCLIENTS: Найти клиента → YCLIENTS: Новый клиент.

1. **Триггер.** Добавить триггер → BotMan → **Изменение подписчика**. Он сработает, когда у подписчика появится телефон. Если бот спрашивает телефон сразу после подписки, подойдёт и триггер **Новый подписчик**.
2. **Фильтр.** Продолжать, только если в «Изменённых полях» есть телефон и поле «Телефон» не пустое.
3. **Проверка дубликатов.** Добавить действие → YCLIENTS → **Найти клиента** по телефону.
4. **Создайте клиента.** Добавить действие → YCLIENTS → **Новый клиент** — только если поиск ничего не нашёл. Поля: имя, телефон, email, комментарий «Из бота BotMan».
5. **(Опционально) Отметьте подписчика.** Добавить действие → BotMan → **Добавление тега подписчику**, например «Клиент YCLIENTS» — так в боте будет видно, кто уже передан.

Если бот сам записывает клиентов (подписчик выбирает услугу, мастера и время в сценарии), вместо «Новый клиент» используйте действие **Новая запись**. Для показа свободных окон в боте пригодится **Получить свободное время сотрудника в чат**.

Открытый вопрос: какие поля обязательны в действиях «Новый клиент» и «Новая запись» (филиал, услуга, сотрудник).

---

## Частые проблемы

| Проблема | Что делать |
| --- | --- |
| Не удаётся создать подключение YCLIENTS | Проверьте логин, пароль и токен интеграции с телефонией («Обзор» → «Звонки» в YCLIENTS) |
| Связка с триггером «Получена запись» или «Получен клиент» не запускается | Не настроены вебхуки. Проверьте шаг 3: приложение в кабинете разработчика YCLIENTS, адрес вебхука из Albato и подключение приложения к нужному филиалу |
| События приходят не из того филиала | Вебхуки устанавливаются в филиал, выбранный при подключении приложения. Подключите приложение и к другим филиалам |
| Напоминание приходит с опозданием | API-триггеры опрашивают YCLIENTS по расписанию, по умолчанию раз в пять минут. Это нормально |
| Подписчик не находится по телефону из YCLIENTS | Телефон в BotMan хранится в формате +79991234567. Приведите номер из YCLIENTS к этому формату инструментами Albato |
| В YCLIENTS появляются дубли клиентов | Добавьте перед созданием действие «Найти клиента» и создавайте клиента, только если поиск ничего не нашёл (пример 3) |

Ошибки BotMan (тариф, ID подписчика, отправка сообщений) — в разделе «Частые проблемы» статьи [Что такое интеграция с Albato](https://docs.botman.pro/a/64-chto-takoe-integratsiya-s-albato). Вопросы по работе коннектора YCLIENTS — в [поддержку Albato](https://help.albato.ru).

