⚙ Настройки
🏢 Тенант: бренд, часовой пояс, реквизиты
Профиль вашей площадки. Эти значения видят гости и сотрудники: название — в шапке и сообщениях,
часовой пояс — во всём расписании и кассе, валюта — в ценах, реквизиты — на бланках и в договоре.
Меняются редко; после сохранения всё применяется сразу, без перезапуска.
Реквизиты юрлица — печатаются на бланках, в договоре, футере кабинета гостя и подписях писем.
Поле можно оставить пустым, тогда его просто не будет на бланке.
🔑 Ключи агента (MCP)
Ключ, которым ваш ИИ-агент (Claude Code, Claude.ai, Cursor, ChatGPT) читает данные площадки
через MCP-эндпоинт /mcp. Чтение — всегда; изменения — только если отметить права ниже,
и каждое из них попадает в «Журнал действий агентов».
Ключ показывается один раз — скопируйте его сразу. Как подключить агента — docs/MCP.md.
Что разрешить этому ключу
Чтение включено всегда. Права на изменение выдавайте по одному — ключ, которому можно
всё, отзывать придётся целиком. Каждое изменение видно в «Журнале действий агентов» ниже.
Новый ключ — показывается один раз
Положите его в менеджер паролей. В CRM хранится только отпечаток — снова показать ключ нельзя. Потеряли — отзовите и выпустите новый.
🔗 Подключённые приложения (OAuth)
Приложения, которым вы разрешили читать данные площадки кнопкой «Разрешить»: в Claude.ai, ChatGPT
или Cursor добавьте MCP-сервер по адресу /mcp — приложение само откроет страницу входа.
Ключ копировать не нужно. Права приложение запрашивает само, и они перечислены на странице «Разрешить»;
каждый запрос — в журнале.
🧾 Журнал действий агентов
Что агенты СДЕЛАЛИ, а не только спросили: последние 50 операций.
Сухие прогоны (агент сперва проверяет, что получится) сюда не попадают — они ничего не меняют.
Где отмена однозначна, есть кнопка «Отменить»; где нет — написано, чем это делается вручную.
🏷 О продукте
Как называется сама CRM — то, что видят вы и ваши сотрудники на экране входа,
в мастере первого запуска и в служебных письмах. Гостям это не показывается нигде: в кабинете,
киоске, SMS и письмах с билетом стоит только название вашей площадки.
Обычно эти поля заполнены при установке — трогайте их, только если знаете зачем.
🗺 Ценовые зоны
Зона — это группа площадок с ОДНИМ прайсом. У сети из двух городов зон
обычно две; у одной площадки — одна, и выбирать в прайсе будет нечего. Прайс, пакеты и услуги
к празднику задаются на зону, а площадка к зоне привязывается.
Зона не удаляется, а отключается: её код остаётся в проданных абонементах и в прошлых записях.
Площадки и их зоны
Перевод площадки в другую зону меняет ей весь прайс: цены билетов, комнат,
аренды парка и услуг возьмутся из новой зоны. Уже посчитанные записи не меняются — у каждой своя дата прайса.
📣 Telegram и уведомления
Токен бота @HEROPARK_online_booking_bot и chat_id чатов арен. Сводка уходит каждый вечер в чат арены и чат руководства; алерты аренды парка — сразу.
🏷 Наклейка гостю
🏷 Размер ленты по аренам (пусто = общий; свой размер — «ширина×высота» в мм, 20–150)
⏱ Время на переодевание, мин
⏱ Час прыжков считать от отметки «Пришёл», а не от времени сеанса
Только для прыжков: праздники и аренда всегда идут по времени брони — комната занята с него.
Сетка сеансов и загрузка зала не меняются; меняется только время на наклейке и в строке дня.
Начисляется тому, кто провёл продажу. Бесплатные носочки и купленные
сотрудником себе не считаются. Видно отдельной колонкой в ведомости ЗП.
Считается за день и по человеку: перевалил за порог — весь этот день
оплачивается по повышенной ставке, включая первые пары. Ноль в пороге выключает правило.
⚠ Для справки: рекорд за всю историю — 18 пар за день, так что при пороге 20 правило
не сработает ни разу.
Столько минут добавляется к концу сеанса: гость успевает переобуться
и не теряет оплаченное время. Видно на наклейке и в списке дня. На загрузку зала
и на цену не влияет — записи по-прежнему идут получасовой сеткой.
Размер — тот, что заправлен в принтер: кнопка печати в записи сразу отдаёт
наклейку этого размера, администратору выбирать нечего. Сдвиг нужен, если оттиск
ложится не по центру ленты: уходит влево — поставьте +1, уходит вправо — −1.
Сдвиг задаётся для каждой арены отдельно — принтеры разные, и одно значение на сеть
выправляло одну арену, уводя другие; пустое поле означает «взять общий».
Печатайте по одной наклейке и подбирайте по половине миллиметра, пока не станет ровно.
⭐ Клубная карта: кэшбэк
Пока выключено: в кабинете гостя нет вкладок «Клуб» и «Призы», баллы не показываются,
оплатить ими нельзя и кэшбэк не начисляется — считать начнём со дня запуска программы.
Той же галочкой выключены призы за визит: рулетка Хиро, награды за серии визитов и
челленджи (20.08 — до запуска карты). Уже выигранные купоны продолжают действовать и
принимаются на стойке. Гостю на вопрос: «программа готовится, о запуске объявим отдельно».
Процент начисляется от оплаты живыми деньгами. На записи со скидкой, промокодом и спец-ценой кэшбэк НЕ начисляется. В ±3 дня от дня рождения гостя процент удваивается. 1 балл = 1 копейка. Всё, что ниже, правится без выкатки — и кабинет гостя показывает ровно эти числа.
Меняются только проценты. Сколько визитов нужно для уровня — часть правил программы, из настроек это не редактируется: подписи выше показывают действующие пороги.
Нужно перед официальным запуском программы: гости не должны получить баллы, накопленные за тестовый период. Обнуление гасится операцией и видно в истории клиента.
🧾 Надбавки к ФОТ
Зарплата — не вся стоимость сотрудника. Эти проценты добавляются к ФОТ в отчёте владельца: без них прибыль завышена почти вдвое. На выплаты сотрудникам не влияют.
🏋️ Бонус тренеру
Обе суммы начисляются автоматически, когда запись закрывают как завершённую, — тому, кто указан тренером. Один раз на запись. Пустое поле = 10 BYN, ноль = не начислять. Раньше сумма за личную тренировку была зашита в коде и не менялась отсюда.
🎂 Комнаты ДР (переименование)
Название видно в календаре и билетах. Цвет и арена не меняются.
📊 амоCRM (отчёт по праздникам)
Нужен для блоков «лиды из инсты» и «звонки ивента» в ночном отчёте по праздникам. Вставьте значение из файла ~/.heropark/secrets/amocrm-token.txt. Пусто — отчёт приходит без этих блоков.
🤖 ИИ (распознавание накладных по фото)
Запросы идут через ваш прокси ai.heropark.by — так Anthropic доступен из Беларуси и виден весь трафик. Поле «Модель» можно оставить пустым: тогда claude-opus-5. Токен никому не пересылайте.
💳 Онлайн-оплата bePaid (после договора с МТБанком)
Впишите ключи из кабинета bePaid — симуляция сама сменится настоящей оплатой. Банку сообщите адрес уведомлений: https://admin.demo.playcontrol.by/pay/notify. Пока ключи пустые — кабинет работает в тестовом режиме, как раньше.
Пока выключено, в кабинете гостя нет кнопок «Оплатить онлайн», «Внести предоплату»
и «Купить сертификат онлайн» — вместо них написано, что оплата на арене. Включайте, когда банк
подтвердит боевой режим: страницы «Оплата» и «Возврат» на сайте от этой галочки не зависят,
они нужны банку и остаются на месте.
Включайте, только когда банк подтвердит подключение услуги. Тогда в карточке
записи появится кнопка «🧾 счёт ЕРИП»: CRM выставит счёт на номер телефона гостя, он введёт
его в ЕРИП, и оплата придёт сразу — разносить реестром вручную больше не нужно. Пока
выключено, оплаты по ЕРИП приходят как раньше, реестром на следующий день.
Задайте любую длинную строку и пропишите её на каждом терминале. Пока поле
пустое, ручки терминала открыты всем, кто знает адрес — включая поиск чужой брони по номеру.
Работает, только когда сошлось ВСЁ: гость платил онлайн или по счёту ЕРИП,
платёж по записи ровно один и не возвращался, часть денег не принимали на арене, сумма
и суточные потолки не превышены, до сеанса есть запас времени. Всё остальное — кнопкой
директора, как раньше. О каждом автовозврате приходит сообщение управляющим.
📧 Email-билеты (SMTP)
Гость получает билет и подтверждение оплаты на почту. Возьмите SMTP-доступ у почтового провайдера (hoster.by, Яндекс 360, Mail.ru для бизнеса). Рекомендуется порт 465 (SSL). Пока поля пустые — письма не отправляются, всё как раньше.
Эта ссылка уходит в сообщение ивент-менеджеру вместе с обращением — чтобы
не искать нужную вкладку среди полутора десятков листов. Скопируйте адрес из браузера,
открыв именно лист обращений.
⚠ Почта домена heropark.by обслуживается Mail.ru, а письма CRM отправляет
через hoster.by — это разные ящики с одинаковым адресом. Если реестры приходят на Mail.ru,
сюда нужно вписать imap.mail.ru и логин с паролем того ящика.
CRM раз в полчаса заглядывает в ящик demo@playcontrol.by и разбирает
письма с реестром: оплаты сами привязываются к броням, ивент-менеджер получает сообщение
о предоплате за праздник. Проверить вручную — кнопка «📬 Проверить почту» в разделе Операции.
📱 SMS (вход гостей в кабинет)
Тот же аккаунт, с которого сайт уже шлёт брони. Пока поля пустые, работает dev-режим (код входа показывается на экране). Заполните — и сообщения начнут уходить гостям по-настоящему.
Через сайт — самый простой путь: сообщения уходят тем же механизмом, которым сайт уже полтора месяца шлёт брони. Ни логин, ни пароль SmartDelivery не нужны — релей на сервере сайта знает их сам. Нужен только его секретный ключ (лежит в sms/sms-config.php на сервере сайта, поле secret).
⚠ Прямые каналы требуют, чтобы IP сервера CRM был в белом списке SmartDelivery — иначе придёт отказ 403. У сервера сайта такой доступ уже есть, у CRM — нужно запрашивать отдельно.
Группа viber-sms сама выбирает канал: есть Viber — идёт Viber, нет — SMS. И сама подставляет имя отправителя на каждом плече (Viber → Демо-парк, SMS → HEROPARK.by), поэтому своё имя ей передавать не нужно.
Пока список не пустой — сообщения уходят только на эти номера, остальным гостям остаётся dev-режим. Так можно обкатать записи и рассылки, не задев боевые арены. Опустошите список — и сообщения пойдут всем.
⚠ Настройки шлюза общие для всей сети, а не для отдельной арены: как только они заполнены, коды входа перестают показываться на экране и уходят настоящими SMS всем гостям. Сначала проверьте связь на своём номере.
🩺 Здоровье CRM и аварийные кнопки
Загружаю последнюю проверку…
Если CRM совсем не открывается, эти кнопки не помогут — но на сервере есть внешний сторож: он сам перезапустит CRM через три минуты молчания и напишет управляющим в Telegram. Те же действия — руками через guard-бота в Telegram (токен ниже, в блоке Telegram): команды /status, /restart, /rollback, /log; отвечает владельцу и управляющей компанией с привязанным Telegram.
🤖 Голосовой агент «Гера»
Токен для телефонного робота (Bearer в /api/agent/*). Никому не пересылайте. При утечке — «Перегенерировать» (старый перестанет работать сразу).
🔌 Ключ API для внешних систем (Telegram-помощник сотрудников)
⚠ Это НЕ токен Telegram-бота и не имеет отношения к BotFather — токен своего бота команда делает сама. Это ключ доступа к нашему API: с ним внешняя система читает справочник должностей (/api/positions), список сотрудников с никами (/api/staff) и базу знаний (/api/kb/manifest). Передаётся заголовком X-KB-Token, базовый адрес — https://admin.demo.playcontrol.by.
Передавайте ключ там, где сообщения не хранятся, и не в общие чаты. Засветился — жмите «Перегенерировать»: старый умирает сразу.