SpikePCПосібник користувачаUKRUENPL

Посібник користувача SpikePC

Інструкція для власника та адміністраторів комп'ютерного клубу: що вміє система, де що налаштовується і що означає кожен параметр.

Це посібник із панелі організації (вебінтерфейс). Технічна документація для розробників клієнтського ПЗ, клубного сервера та мобільного застосунку постачається окремо.

---

1. Що таке SpikePC

Система управління комп'ютерним клубом. Складається з чотирьох частин:

ЧастинаЩо робить
Панель організаціїВебінтерфейс: клуби, станції, клієнти, гроші, товари, аналітика
Клієнтське ПЗ станціїПрограма на ігровому ПК: вхід клієнта, каталог ігор, магазин, облік часу
Клубний серверОдин сервер на клуб: увімкнення станцій (Wake-on-LAN), золоті образи, стан дисків
Мобільний застосунокДля клієнта: реєстрація, вхід на станцію за QR, історія відвідувань

Усе пов'язано через сервіс реального часу: станція тримає постійне з'єднання із сервером, тому карта клубу показує стан одразу, а команди оператора долітають миттєво.

Ролі

РольЩо доступно
Власник організаціїУсе без обмежень; групи доступу на нього не діють
СпівробітникЛише те, що дозволено його групою доступу та призначеними клубами
ФраншизаОкремий кабінет: каталог і налаштування клубів мережі з різних організацій
Адміністратор системиОбслуговування платформи: організації, реєстр, логи обміну

Документи. Під час першого входу (і після кожної нової редакції) панель просить прочитати й підтвердити ліцензійну угоду та інформування про персональні дані. Вікно не закривається без підтвердження: без згоди ми не маємо права продовжувати обробку даних. Посилання відкриваються в новій вкладці — панель залишається на місці. Обидва документи завжди доступні в підвалі сайту, і клуб зобовʼязаний довести документ про персональні дані до своїх клієнтів і співробітників: розпорядником їхніх даних є клуб, сервіс лише обробник.

---

2. Інтерфейс

Угорі — єдина смуга:

Суми виторгу й бонусів — посилання на касу: побачили цифру — переходьте розбиратися, з чого вона склалася. Посилання з'являється лише в тих, кому відкрито цей розділ.

Мова інтерфейсу вибирається в профілі (меню користувача → «Профіль», список мов поряд з ім'ям і телефоном) — окремого перемикача у смузі більше немає. Мова зберігається тією самою кнопкою, що й решта полів карточки, і застосовується відразу: панель відкривається знову на тому ж розділі.

Розділи системи (іконка сітки) відкривають вікно з усіма розділами панелі, з пошуком. Розділи згруповано за змістом: Клуб, Клієнти (разом з історією листування), Магазин (разом зі складом), Тарифи й оплата (разом із касою та касовими змінами), Ігри, Персонал, Франшиза, Система. Меню користувача (іконка людини) — профіль, зміна пароля та вихід.

Показники рахуються по клубах, доступних вам: власник бачить усі, співробітник — лише свої.

З телефона

Панель відкривається з телефона й планшета — окремого застосунку для персоналу немає. У шапці залишаються знак організації та одна кнопка меню: усі розділи, а разом з ними профіль, зміна пароля й вихід — усередині неї (пошук за розділами на телефоні прибрано, його місце віддано назві та закриттю вікна). Показників, годинника та погоди на телефоні в шапці немає: смуга цілком віддана вмісту розділу, а виторг і завантаження дивляться в касі та в аналітиці. Повне зведення залишається на моніторі та планшеті. Списки прокручуються вбік усередині своєї рамки, вікна займають майже весь екран, а фільтри складені під значком лійки праворуч у рядку з назвою розділу — натискання їх розгортає, повторне складає, і задане залишається заданим.

Списки виводяться карточками. Рядок — окремий блок: головне поле заголовком, інші колонки парами «підпис: значення», кнопки рядка внизу. Кнопка створення запису переїжджає в рядок з назвою розділу, бо шапка таблиці на телефоні не показується.

Чотири екрани залишаються таблицею й прокручуються: розписання тарифів і абонементів, дошка замовлень, бронювання станцій і каса. Там сенс саме в сітці — години тижня, колонки статусів, станції за часом, — і в карточки її розгортати не можна.

На карті клубу замість лійки стоїть шестерня, і під нею не лише вибір клубу: туди ж прибрані лічильники станцій за статусами, масштаб, запит стану сервера та перехід до редагування схеми. У рядку з назвою залишаються імʼя відкритого клубу й дві кнопки праворуч: чати з лічильником непрочитаних і шестерня — решту місця віддано залу.

Що робиться інакше:

ДеЯк на телефоні
Карта клубуМеню станції відкривається торканням замість правої кнопки (у режимі редагування схеми, де торкання ставить елементи, — довгим натисканням). Схему рухають пальцем, масштаб — кнопками «− / % / +» у шапці
Дошка замовленьКолонки статусів гортаються вбік, по одній на екран
БроніДоба по годинах ширша за будь-який телефон, сітку рухають пальцем. Виділити рамкою кілька станцій одразу не вийде: натискання вибирає одну годину, решта — через вікно «+» з точним часом
ЗамовленняЛічильника нових замовлень у шапці немає (там одна кнопка меню), але звук про нове замовлення грає як раніше; дошка замовлень відкривається з меню
Розставляння схеми залу та області банераПотрібне протягування мишею — ці дві справи роблять з монітора

---

3. Клуби

Розділ Клуби — список майданчиків організації. Параметри картки:

ПараметрЗміст
Назва, адреса, описПоказуються клієнту на станції
Координати (lat / lon)Потрібні для погоди в шапці та карт
ТелефониКонтакти для клієнта
ВалютаТрибуквений код (UAH, EUR, USD, PLN…) зі списку. Нею підписуються суми цього клубу. Валюта в кожного клубу своя — мережа може працювати в різних країнах, і суми різних валют ніде не додаються й не перераховуються за курсом
Безкоштовні хвилиниСкільки перших хвилин сесії не тарифікуються взагалі (ні грошима, ні абонементом). За замовчуванням 3, максимум 1440, 0 — вимкнено
Приймання замовленьТумблер: вимкнений — станції отримують відмову і замовлення не створюється
Контроль простоюДва числа: через скільки хвилин простою попередити оператора (за замовчуванням 7) і через скільки вимкнути станцію (10). 0 у полі вимикає свій крок
Попереджати при зайнятому місці на дискуВідсоток заповнення диска клубного сервера, при якому панель починає попереджати: за замовчуванням 90, 0 — не попереджати. Перевіряється і диск сервера в цілому, і кожен його пул окремо
Telegram-канал замовленьЯкщо заповнений, сповіщення про замовлення цього клубу йдуть туди, інакше — у загальний канал організації
Пароль адміністратора WindowsГенерується при створенні клубу, показується лише для читання. Станція отримує його сама, до журналів не пишеться

Під час створення клубу система автоматично заводить 10 тестових клієнтів (логін і пароль збігаються з поштою виду <club><org>NN@домен) — щоб одразу було на кому перевірити вхід, тарифи та замовлення.

---

4. Ігрові станції

Ігрові станції — список ПК і консолей. Параметри:

ПараметрЗміст
НомерНазва станції, її бачить оператор і клієнт
ТипПК або консоль
IP, MACІдентифікація пристрою. MAC унікальний і використовується для Wake-on-LAN
Група станційВід неї залежить тариф: розклад цін прив'язано до групи
Частота оновлення екранаГц, за замовчуванням 60 (припустимо 24–480). Станція застосовує при підключенні
Посилання на QR ExpirenzaСвій QR у кожної станції — клієнт сканує його просто з екрана. Вставляється посиланням (https://…); порожньо — QR не показується
Версія ПОЛише для читання: версію повідомляє сама станція при підключенні. Прочерк — ще не повідомляла (стара програма або машина не вмикалася). За колонкою видно, де парк не оновлено; підказка над значенням каже, коли версію повідомлено

Посилання Expirenza можна змінювати окремо від картки станції: у списку поруч зі значком QR є олівець. У цієї дії своє право («Expirenza link»), тому посилання довіряють змінному персоналу, не відкриваючи йому правку IP, MAC і групи — там одна помилка відключає станцію від сервера.

Групи станцій — розділ для поділу залу на зони (наприклад Standard, VIP, PS5). У групи є назва й колір; за групами рахуються тарифи, завантаження та аналітика.

Якщо в налаштуваннях організації увімкнено автовиявлення, нова станція може зареєструватися сама при першому підключенні — залишиться вказати її групу та номер.

У новій організації вже є три станції — «1», «2» і «3», по одній у кожній стартовій групі. Це заготовки: IP 192.168.1.1–3 і MAC aa:aa:aa:aa:aa:aa…cc у них умовні, і підключати за ними нічого. Відкрийте карточку та впишіть справжні IP і MAC своєї машини — станція заробить. Зайві заготовки видаліть.

---

5. Групи ігрових станцій

Поділ залу на зони: Standard, VIP, PS5, «кермо». У групи є назва і колір — кольором вона підписана на карті клубу та в сітці бронювання.

Група — це не оздоба, а основа тарифікації: розклад цін привʼязаний до групи, а не до станції. Тому абонемент діє в тій групі, в якій куплений, завантаження й аналітика рахуються за групами, а банер можна показати лише у вибраних зонах.

Станція вказує свою групу у своїй картці (розділ Ігрові станції). Станція без групи залишиться без тарифу — час на ній не тарифікуватиметься.

У новій організації вже створено три групи — pro, vip і normal, у кожній по одній станції. Перейменуйте їх під свій зал або видаліть зайві; головне — не залишити станцію без групи й не забути про розписання цін: поки група не закрашена тарифом, час у ній іде безкоштовно.

6. Карта клубу

Карта клубу: статуси станцій оновлюються в реальному часі
Карта клубу: статуси станцій оновлюються в реальному часі

Головний робочий екран адміністратора. Показує зал у реальному часі.

Що видно на карті

ОзнакаЗначення
Колір станціїСірий — вимкнена, зелений — увімкнена й вільна, зайнята — триває сесія
Значок людиниНа станції авторизований клієнт
Значок бейджаНа станції працює співробітник
Значок інструментівСтанція на обслуговуванні (сервісний режим)
Значок людини із шестернею, бурштинова обводкаЗа станцією працює адміністратор (режим адміністрування)
Приглушена станція з перекресленим номеромВиведена з прокату
Помаранчевий контурЄ бронь: суцільний — триває зараз, пунктирний — скоро почнеться (за скільки хвилин попереджати, задається в картці клубу, за замовчуванням 30)
Значок картки (синій/червоний)Клієнту видано кредит / у нього вже виник борг
Час зверхуЗалишок часу клієнта; менше 15 хвилин — червоним

Онлайн визначається за фактом з'єднання станції із сервером, а не за останньою активністю — вимкнений ПК стає сірим одразу.

Масштаб схеми змінюється кнопками «− / % / +» у шапці (клік по відсотку повертає стартові 90%, Ctrl+колесо миші теж працює). Обране значення запам'ятовується за оператором і переживає перехід в інший розділ та повторний вхід: за одним комп'ютером працює зміна, і налаштування слідує за людиною, а не за машиною.

Дії правим кліком

ДіяКоли доступнаЩо робить
Інформація про станцію, події сесіїзавждиПоказує дані станції та журнал поточної сесії
Рядок «Клієнт на станції»за станцією є клієнтХто зараз грає; значок «i» праворуч відкриває картку клієнта — контакти, гроші, знижки, абонементи, поточна сесія
Історія входівзавждиОстанні 10 сесій: дата, пошта клієнта, тривалість
Увімкнути / вимкнутиза станомУвімкнення йде через клубний сервер (Wake-on-LAN), вимкнення — команда станції
Перезавантажити ПКстанція на зв'язкуКоманда перезавантаження самої станції. Станції в особливому режимі її не отримують — на машині в цей момент працюють
Надіслати повідомленнястанція на зв'язкуТекст до 1000 символів і час показу (0 — до закриття клієнтом)
Авторизувати клієнтастанція вільна і на зв'язкуОператор вводить пошту та пароль клієнта; сесію відкриває сама станція
Завершити сесіюза станцією є клієнтСтанція закриває сесію сама: рахується остання хвилина, клієнт відв'язується, екран повертається до входу
Поповнити рахунокза станцією є клієнтМиттєве зарахування на баланс із вибором каси
Продати абонементза станцією є клієнтКлієнт уже грає і просить абонемент: виберіть абонемент і касу — гроші підуть у касу, абонемент з'явиться в клієнта відразу
Поповнити після авторизаціїзавждиЗаявка на 30 хвилин: сума зарахується тому, хто увійде на цій станції — паролем, за тикетом оператора, за QR або зареєструвавшись і увійшовши. Тут же можна вибрати абонемент: під час входу система зарахує гроші й одразу купить його
Дати кредитза станцією є клієнтДозвіл піти в мінус до кінця сесії (див. розділ 9)
Режим станціїстанція вільнаСписок із трьох режимів: обслуговування, адміністрування, виведена з прокату (див. нижче)
Створити золотий образстанція вимкненаЗнімає еталонний образ диска через клубний сервер

Окремих пунктів «Заблокувати» і «Розблокувати станцію» в меню немає: вони говорили про те саме, про що «Завершити сесію» та «Авторизувати клієнта». Стан станції для людини один — за нею або грає клієнт, або ні; тому ці два пункти взаємно виключають один одного.

Режими станції

Зазвичай станція «в роботі»: клієнт входить, контроль простою діє, оператор керує нею як завжди. Крім цього є три особливі режими — їх ставить і знімає лише адміністратор із панелі, правим кліком по станції:

РежимКоли ставлятьКлієнт може увійти
Обслуговуваннямашину лагодять, чистять, міняють залізоні
Адмініструванняза станцією працює адміністратор: ставить ігри, править налаштуваннятак — машина залишається в прокаті
Виведена з прокатузламана, продана, стоїть у куткуні

Відмінність адміністрування від обслуговування одна, але важлива: поки станція в ньому, клубний сервер не відкочує її диск до еталонного образу при перезавантаженні. Інакше все, що адмін поставив, зникало б на першому ж рестарті.

Загальні правила для всіх трьох:

Групові дії

Виділіть станції рамкою — з'явиться панель дій. У ній лише те, що застосовно до виділення: кнопка з'являється, якщо серед виділених станцій є хоч одна підхожа, а поряд із підписом стоїть число таких станцій. Дія йде саме їм, інших не торкається.

ДіяКому підходить
Увімкнутивимкненим станціям
Вимкнути, перезавантажитиувімкненим, крім станцій в особливому режимі
Завершити сесію, надіслати повідомленнястанціям з авторизованим клієнтом
Поповнити рахунок, продати абонементстанціям з авторизованим клієнтом
Поповнити після авторизації, продати абонемент при авторизаціївільним — і увімкненим, і вимкненим: заявка чекає на того, хто сяде

Перед виконанням ви побачите розбір виділення: двома групами — кому дія піде і кого пропускаємо. Станції в списку намальовані тим самим значком і кольором, що на схемі зали, а при наведенні підписана причина пропуску. У дій із введенням (сума, текст, абонемент) цей розбір стоїть у шапці форми — склад групи видно, поки ви заповнюєте поля.

Результат по кожній станції показує окрема панель статусу: «виконано», «доставлено», «не в мережі» або «пропущено» — стан міг змінитися між останнім оновленням карти і натисканням, і такі станції сервер пропустить сам.

Абонемент прямо на місці

Абонемент не обов'язково продавати з картки клієнта — його можна продати там, де людина сидить. Два випадки:

Клієнт уже грає. Правий клік на його станції → «Продати абонемент». У вікні — абонементи клубу з ціною для цього клієнта (постійну знижку враховано, якщо абонемент її допускає), каса і коментар. Гроші приймає каса, абонемент з'являється в клієнта відразу і прив'язується до групи тієї станції, за якою він грає.

Абонемент, якого немає в прайсі цієї зали, у списку підписаний — продати його можна, але ви побачите розбіжність до того, як візьмете гроші.

Клієнт ще не сів. Правий клік на вільній станції → «Поповнити після авторизації», і поряд із сумою виберіть абонемент. Щойно людина увійде на цю станцію, система зробить дві дії підряд: зарахує прийняті гроші й купить на них абонемент. Так зручно працювати на вході: прийняли оплату, призначили станцію, людина сіла і вже грає за абонементом.

Сума в заявці залишається окремим полем і підставляється за ціною абонемента. Це не дрібниця: заявка ставиться на станцію, а хто за неї сяде — ще невідомо, і в нього може виявитися особиста знижка. У касу йде те, що ви прийняли, абонемент купується за його ціною, різниця залишається клієнту на балансі.

Для обох випадків потрібна відкрита касова зміна — як для будь-якого приймання грошей. Право на продаж те саме, що в картці клієнта: «Продаж абонемента».

Станції, які простоюють

Станція увімкнена, але за нею нікого немає: ні клієнта, ні співробітника, і вона не в особливому режимі. Через число хвилин із налаштувань клубу (за замовчуванням 7) у лівому нижньому куті карти з'являється вікно зі списком таких станцій: скільки вже простоює і скільки залишилося до вимкнення. Кнопка «Скинути» поруч зі станцією обнуляє лічильник — це відповідь «бачу, вона зайнята, не вимикай»; кнопка в шапці вікна скидає одразу всі.

Якщо лічильник не скинути, через друге число хвилин (за замовчуванням 10) станція вимикається сама. Відлік починається заново щоразу, коли станція звільняється, а станції в особливому режимі (обслуговування, адміністрування, виведена з прокату) під контроль не потрапляють — їх тримають увімкненими навмисно.

Чати з клієнтами

Клієнт на станції може написати адміністратору, не встаючи з місця, — наприклад, «не працює мишка» або «принесіть колу». Листування прив'язане до поточної сесії клієнта: він пішов — розмова закінчена, наступний за цією станцією починає з чистого аркуша.

Кнопка «Чати з клієнтами» в шапці карти показує число непрочитаних повідомлень і відкриває панель праворуч від схеми залу. У ній два екрани:

1. Список чатів — рядок на станцію: іконка станції з номером і тим самим підсвічуванням, що на схемі, ім'я клієнта, останнє повідомлення та лічильник непрочитаних. Спершу показуються станції з непрочитаними, потім зі свіжими розмовами. У списку лише станції, де зараз авторизований клієнт — писати більше нема кому. 2. Листування — відкривається кліком у тому ж місці, назад веде стрілка. Історія, поле введення, набір смайликів (разом із кальяном). Enter надсилає, Shift+Enter переносить рядок.

Поруч з іменем клієнта — іконка «i»: відкриває його картку, не виходячи з чату. Там контакти й дата народження, баланс і борг, знижки, мова, нотатки, поточна сесія (початок, тривалість, залишок часу, витрачено на час і покупки, кредит), невитрачені абонементи та п'ять останніх операцій за рахунком.

Статус повідомлення видно галочками, як у месенджерах: без іконки — надіслано, одна галочка — станція отримала, дві — клієнт прочитав. Повідомлення, надіслане вимкненій станції, дійде, коли вона знову опиниться на зв'язку.

Минулі розмови залишаються в розділі Історія листування: закрита сесія з чату на карті зникає, але сама розмова нікуди не дівається. Там список усіх діалогів — дата, станція, клієнт, число повідомлень і непрочитані, — з фільтрами за клубом і періодом та пошуком за текстом повідомлень: згадати, про що домовлялися, зазвичай можна лише за фразою. Клік відкриває листування повністю; продовжити його не можна — клієнта за станцією вже немає.

Нове повідомлення супроводжується звуком. У чату він свій — вибирається в налаштуваннях організації поряд із сигналом замовлення: на слух повідомлення має відрізнятися від замовлення, інакше персонал іде до стійки замість відповіді в переписці. Поки клуб не вибрав чату окремий сигнал, звучить той самий, що в замовлень. Звук вмикається після першого кліку по сторінці (вимога браузера) і не звучить, якщо ви вже відкрили листування з цією станцією.

Клубний сервер

Окремий об'єкт на карті. Правим кліком: стан (завантаження, диски), запит свіжих даних, перезавантаження (з підтвердженням). Через нього ж ідуть увімкнення станцій і робота із золотими образами.

Закінчується місце на диску — панель скаже сама. Сервер повідомляє про себе кожні кілька секунд, і щойно зайняте місце переходить поріг клубу (параметр «Попереджати при зайнятому місці на диску», за замовчуванням 90%), у шапці панелі з'являється значок диска з найгіршим відсотком — він видний у будь-якому розділі, не лише на карті. Натисніть на нього: відкриється те саме вікно стану сервера, переповнений диск у ньому підсвічено червоним. Якщо попереджень кілька, згори вікна з'являться кнопки клубів. Перевіряється і диск сервера в цілому, і кожен його пул: місце під образами станцій закінчується саме в пулі, а системний диск при цьому буває майже порожнім. Значок не зникне, доки місце не звільнять, — навіть якщо сервер перестане виходити на зв'язок: диск сам себе не чистить, а час останнього звіту видно у вікні.

---

7. Клієнти

Розділ Клієнти — люди, які грають у ваших клубах.

Обліковий запис клієнта глобальний: одна пошта — один клієнт у всій системі. Тому ім'я, прізвище, пошта, телефон, дата народження, стать і пароль у панелі організації лише показуються: їх власник змінює сам через станцію або мобільний застосунок.

Організація керує своїми даними про клієнта:

ПараметрЗміст
БалансГроші клієнта у вашій організації
СтатусАктивний чи ні
ДжерелоЗвідки прийшов (для статистики)
ЗнижкаПостійна знижка клієнта, % — діє на час і на ціну абонемента (див. розділ 7.1)
Рейтинг, нотатки, аватарВнутрішні позначки клубу
ЛокальМова, якою клієнт бачить станцію
БанЛокальний (лише ваша організація) або глобальний — за контактом, тому новий обліковий запис на той самий телефон чи пошту не допомагає

Операції з грошима

ОпераціяДеЩо відбувається
Поповнитикартка клієнта або карта клубуСума зараховується на баланс і потрапляє в обрану касу. Каса обов'язкова
Продати абонементкартка клієнтаСписує вартість і видає пакет часу
Обнулити баланссписок клієнтівСписує залишок коригуванням; каси не торкається
Поверненнярозділ операційСкасовує поповнення: знімає суму з балансу (можна в мінус) і робить зворотний запис у касу

Кожен рух грошей фіксується в розділі Операції за рахунком: дата, клієнт, тип, сума, каса, залишок після операції. Нічого не видаляється — скасування робиться зворотним записом.

Коментар до поповнення. Під час зарахування можна вказати, за що воно. Для бонусної каси коментар обов'язковий — інакше система не прийме операцію: бонус без пояснення неможливо розібрати у звітах.

---

8. Тарифи

Розділ Тарифи — вартість години гри.

ПараметрЗміст
НазваНаприклад «Денний», «Нічний», «VIP»
Ціна за годинуСкільки списується за годину гри
КолірДля наочності в сітці розкладу
СтатусТумблер у списку: в обігу або вимкнений. Вимкнений тариф не можна призначити в розклад, але години, де він уже стоїть, продовжують рахуватися за його ціною

Розклад — сітка «день тижня × година». Обираєте тариф як пензель і зафарбовуєте години для потрібної групи станцій. Година, позначена в сітці, входить цілком: «10:00–14:00» означає, що оплата за цим тарифом іде до 13:59:59 включно.

Якщо на поточну годину тариф не заданий, станція повідомить про це, а час не тарифікуватиметься — стежте, щоб у сітці не залишалося дірок.

Як вивести тариф з обігу, не видаляючи його. У кожного тарифу в списку є тумблер статусу. Вимкнений тариф залишається в розділі зі своєю ціною та кольором, але призначити його в розклад уже не можна — ні новим інтервалом, ні заміною тарифу в наявному.

Вимкнення не знімає тариф з тих годин, де він уже стоїть. Так зроблено навмисно: хвилина без тарифу безкоштовна, і тумблер, що прибирав би тариф із сітки, тихо зробив би зал безкоштовним. Поряд зі статусом у списку є колонка «У розкладі» — скільки інтервалів ще рахуються за цим тарифом; поки там не риска, тариф продовжує брати гроші. Щоб він перестав застосовуватися, зніміть його з цих годин у розкладі (у сітці вони позначені штрихуванням) або зафарбуйте їх іншим тарифом.

Саме тому вимкнення й потрібне замість видалення, коли тариф знімають на час: видалення забирає разом із тарифом і всі його інтервали, і години залишаться без тарифу, тобто безкоштовними.

---

8.1 Знижки

Знижок дві, і до одного клієнта застосовується лише одна — вони не додаються.

Постійна стоїть у картці клієнта. Діє на списання за час і на ціну абонемента при покупці. Саме нею дають 100% співробітникам клубу: вони грають при нульовому балансі.

За випадком — окремий розділ Знижки: список підстав із відсотком (день народження, вибачення за зламану мишку, акція вихідного дня). Діє лише на час, зате й у постоплаті; на абонементи — ні. Така знижка замінює постійну і живе до кінця сесії.

Видається з карти клубу: правий клік по станції → «Видати знижку» → вибір підстави зі списку. Пункт з'являється лише у ввімкненої станції і лише якщо знижки створені в розділі «Знижки» — відсоток на місці не вигадується. Якщо за станцією грає клієнт, знижка йде в його сесію; якщо станція вільна — чекає на того, хто сяде, 30 хвилин. Зняти знижку можна там само.

На карті станція зі знижкою підписана відсотком («−20%»); у знижки, що чекає, підпис приглушений — обіцянка є, але діяти почне з входом клієнта.

У картці тарифу та абонемента є галочка «Знижки діють». Зніміть її там, де ціна й так нижча за звичайну (нічний тариф, акційний пакет) — знижка до них не застосовуватиметься, якою б вона не була.

Відсоток, під яким пройшло списання, видно в історії операцій: за ним розбирають питання «чому за годину списали 52, а не 60».

У списку клієнтів є колонка знижки, фільтр «зі знижкою / без знижки» та сортування за розміром — зручно перевірити, кому й скільки роздано.

---

9. Абонементи

Розділ Абонементи — пакети часу за фіксовану ціну.

Абонемент належить клубу: у нього своя ціна та свої сітки розпису, тому список завжди показує один вибраний клуб (як і розділ тарифів), і створюваний абонемент дістається саме йому. Варіанта «усі клуби» у фільтрі немає навмисно: при ньому новий абонемент зберігався без клубу — у розписі його не можна було вибрати, і на станції він не з'являвся.

ПараметрЗміст
Назва, цінаЩо бачить клієнт
ТривалістьСкільки годин дає пакет. Задається у годинах дробом, із кроком 0,1 години = 6 хвилин: «0,5» — пів години, «1,5» — півтори. Під полем одразу показано «г:хв», щоб було видно, скільки саме отримає клієнт. Мінімум — 0,1 години; менше 6 хвилин абонементом не виразити
КолірДля сітки розкладу
Вмикати автоматичноТак — абонемент вмикається сам, коли він у клієнта єдиний придатний. Ні — станція запитає. Якщо придатних абонементів кілька, станція запитує в будь-якому разі
СтатусПеремикач у списку: у продажу або вимкнений. Вимкнений абонемент залишається в розділі, але купити його не можна ніде

В абонемента дві сітки розкладу:

Важливе правило: абонемент горить за звичайним годинником з моменту активації. Купили о 12:00 на 3 години — о 15:00 його немає, незалежно від того, грав клієнт чи пішов пити каву. Пауза час не зберігає.

Абонемент діє лише в тій групі станцій, де куплений. Якщо клієнт сяде в іншу зону, час піде за гроші за її тарифом.

Коли абонемент вмикається сам, а коли обирає клієнт. Сам — лише якщо придатний абонемент у клієнта один і в нього стоїть галочка «Вмикати автоматично». Якщо придатних кілька, станція завжди запитує, який увімкнути: піднятий абонемент одразу починає горіти за годинником, і вирішувати, який із двох палити, має людина. Відмову («граю за гроші») станція запам'ятовує до кінця сесії; клієнт може увімкнути абонемент пізніше сам із меню.

Якщо станція не відповіла протягом хвилини, абонемент вмикається сам — перший за чергою, навіть коли галочку знято. Так зроблено на час, поки не всі зали оновили програму на машинах: клієнт з абонементом на рахунку не має платити грошима через версію програми. Мовчання станції — не те саме, що відмова клієнта: саму відмову система пам'ятає і абонемент після неї не вмикає.

Коли в абонемента закінчується вікно дії за розкладом, він припиняє роботу, і станція запропонує обрати наступний. Годинник при цьому не зупиняється — він уже йде.

У налаштуваннях організації можна обмежити: максимум збереженого часу і «не більше одного невитраченого абонемента».

Як зняти абонемент з продажу, не видаляючи його. У списку в кожного абонемента є перемикач статусу. Вимкнений абонемент зникає з продажу всюди: з меню на станції, з мобільного застосунку, з каси та з вікна «Продати абонемент» на карті клубу. При цьому він залишається в розділі зі своєю ціною і обома розкладами — увімкнути назад можна тим самим перемикачем.

Уже куплені абонементи продовжують працювати і горіти за годинником: вимкнення знімає з продажу, а не забирає в клієнтів куплене. Тому не потрібно видаляти абонемент, коли скінчилася акція або перераховується ціна — достатньо вимкнути.

Якщо абонемент вимкнули в той момент, коли клієнт уже відкрив меню покупки, станція відповість «Цей абонемент не продається» і обновить список.

---

10. Кредит: гра в борг

Коли в клієнта закінчуються гроші, а він хоче дограти, адміністратор видає кредит: правий клік по станції → «Дати кредит» → сума.

Це не зарахування грошей, а дозвіл балансу піти в мінус до кінця поточної сесії. Клієнт продовжує грати, баланс іде у від'ємні значення, на карті станція позначається значком картки (червоним, коли борг уже виник).

Після гри клієнт розраховується, а ви проводите звичайне поповнення на суму боргу — баланс повертається до нуля. Поки борг не погашений, клієнт не зможе увійти на станцію: вона покаже «На рахунку є борг, зверніться до адміністратора».

Каса й постоплата

Розділ «Каса» збирає роботу касира на одній сторінці, за вкладками:

ВкладкаЩо там
ЗмінаВідкрити й закрити зміну, виторг по касах. Закрити зміну може той, хто її відкрив, або власник
ПоповненняСтатистика зміни, історія поповнень і форма: пошук клієнта за іменем, поштою чи телефоном, сума, каса
ПостоплатиПоточні та ті, що очікують оплати, постоплати, нижче — завершені; форма ввімкнення
МагазинЗамовлення та виторг магазину за зміну

Історія поповнень фільтрується: список кас і пошук за клієнтом, коментарем касира та сумою — «поверни мені ту тисячу» зазвичай і шукають за сумою, коли імені не згадати. Фільтр застосовує сервер, тому він знаходить операції по всій зміні, а не лише серед останніх показаних рядків; поруч підпис «знайдено N з M». Хрестик біля пошуку скидає обидва фільтри.

Пробили не ту касу? У рядку історії є кнопка зі стрілками — вона відкриває під рядком вибір каси та коментар. Це не повернення: гроші залишаються в клієнта, сума й час операції не змінюються — змінюється лише те, у якій касі вони облікуються. Виторг зміни, показання кас і «має бути в шухляді» перераховуються відразу. Змінити касу можна в поповненнях поточної відкритої зміни (саме їх історія й показує) і лише поки поповнення не повернуто; перенесення до бонусної каси вимагає коментаря — «за що». Кожну таку правку записує журнал змін: видно, хто й куди переніс гроші. Якщо кнопки немає — у вашої групи доступу немає права «Change payment method» у блоці «Каса».

Постоплата — клієнт грає, а час не списується з балансу, а накопичується до оплати; після закінчення сесії адміністратор приймає оплату в касу. Увімкнути можна:

Те саме доступне правим кліком по станції на карті; станція в постоплаті позначена значком, жовтим — коли чекає на оплату. Ліміт — стеля суми: дійшли до неї — сесія завершується. Не задали — діє максимум із налаштувань організації; у поточній постоплаті ліміт можна змінити, але не вище за максимум. У постоплаті не витрачаються абонементи і не заважає борг на балансі; безкоштовні хвилини клубу діють. Набігнув нуль — постоплата закривається сама. Потрібна відкрита зміна.

---

11. Магазин

Категорії товарів

Розділ Групи товарів — категорії (напої, їжа, снеки). Спільні для всієї організації, у кожної є назва й картинка.

Товари

Розділ Товари. Параметри картки:

ПараметрЗміст
Назва й описПерекладаються мовами організації (вкладки в картці)
Артикул, штрихкодДля обліку та сканера; за ними ж працює пошук у списку
КатегоріяГрупа товарів
ЦінаЗадається окремо для кожного клубу
ЗображенняПоказується клієнту
АктивністьВимкнений товар залишається у списку, але станціям не віддається і замовити його не можна
18+ (алкоголь / кальян)Такі товари приховуються від клієнтів, чий вік не підтверджено
Залишок на складіПоточна кількість
Мінімальний залишокПри досягненні в Telegram іде попередження; 0 — не попереджати
Канал попередженьКуди слати сигнал про малий залишок (інакше — канал клубу, потім організації)
Супутні товари«До цього беруть ще»: підказка клієнту при замовленні
Комбо-набірТовар із позицій із вибором: наприклад «Перше: каша/суп» + «Напій: кава/сік»
Час доступності«Доступний завжди» або дні тижня зі своїм вікном часу в кожному

Списання зі складу вмикається у налаштуваннях організації (розділ «Глобальні налаштування»).

Час доступності — коли товар узагалі продається. За замовчуванням «доступний завжди», і більшості товарів цього достатньо. Якщо вибрати «за розписом», з'являються сім рядків — день тижня і вікно часу: понеділок 00:00–23:59, вівторок 18:00–22:00, а неділю можна просто не відмічати, і цього дня товар не продаватиметься. Поза своїми годинами товар не показується клієнту на станції взагалі — як вимкнений, тому кухню, що працює до 22:00, більше не потрібно вимикати й вмикати руками щовечора. Якщо кошик зібрали до закриття, а замовлення надіслали після, станція отримає відмову «цей товар зараз не продається».

Кінець вікна включає вибрану хвилину цілком, тому «00:00–23:59» — це рівно доба. Якщо кінець раніше за початок, вікно переходить на наступну добу: «п'ятниця 20:00–04:00» означає ніч із п'ятниці на суботу. У списку товарів колонка «Доступність» показує значок у тих, хто має розпис (години видно, якщо затримати на ньому курсор), і прочерк у решти.

Склад: рух товару

Розділ Склад — журнал, у якому видно кожну зміну залишку: що прийняли, що продали, що списали. Раніше залишок був просто числом у картці товару, і відповісти на запитання «куди поділися двадцять банок коли» було нічим.

Тип рухуЗвідки береться
Прихідприйняли постачання
Списанняпсування, бій, внутрішнє споживання
Продажзамовлення зі станції — записується автоматично
Поверненняскасування замовлення — товар повертається на склад
Коригуваннярезультат інвентаризації

Приймання товару оформлюється одним вікном. Ліворуч — пошук по товарах клубу: за назвою, артикулом або штрихкодом, тому можна просто сканувати штрихкоди сканером (Enter додає знайдений товар). Праворуч набирається список: кількість і ціна по кожній позиції, внизу — число позицій і сума. Коментар — постачальник або номер накладної. Кнопка «Провести документ» записує все однією операцією: або документ проходить цілком, або не проходить зовсім.

Тим самим вікном оформлюються списання та інвентаризація. Різниця у змісті кількості: у приході вона додається, у списанні віднімається, в інвентаризації вводиться зі знаком — +10 надлишок, −10 нестача.

У журналі є фільтри за клубом, типом руху та періодом, пошук за назвою, артикулом і штрихкодом, а над таблицею — підсумки за обраний період. Кожен рядок показує «було → стало», а за номером документа відкривається весь прихід цілком.

Право на перегляд журналу видається разом із товарами, а проведення документів — окреме: дивитися залишки може весь персонал, а приймати постачання — не кожен.

---

12. Замовлення

Клієнт робить замовлення зі станції; гроші при цьому не списуються — оплата на місці.

Дошка замовлень — робочий екран: колонки «Нові», «У процесі», «Готово», «Скасовано». Картка показує станцію, клієнта, позиції (разом із вибором у комбо), суму та коментар клієнта. Кнопки рухають замовлення за статусами. Дошка оновлюється сама, і список замовлень теж: обидві сторінки перемальовуються тієї ж миті, коли в шапці змінюється лічильник, тому сигнал і поява замовлення збігаються.

У замовлення три робочих стани: нове → в обробці → готове (або скасоване). Окремого «готується» немає — на дошці воно потрапляло в ту саму колонку «В процесі», відрізнити його від «в обробці» було нічим, а персонал тиснув зайву кнопку.

Фільтри: клуб, період (доба, 3 дні, тиждень, усе), пошук за клієнтом.

Тумблер «Приймання замовлень» вимикає приймання для обраного клубу — станції отримають відмову.

Скасування замовлення повертає товар на склад, якщо за ним було списання.

Сповіщення. Нове замовлення та зміна статусу йдуть у Telegram-канал: клубу, якщо він вказаний у картці клубу, інакше — організації. Там само з'являються попередження про малий залишок товару.

У шапці панелі висить кошик. Лічильник показує лише нові замовлення — ті, що потребують уваги просто зараз; замовлення в роботі та готові видно у списку при наведенні, з розбивкою за статусами. Клік по кошику веде на дошку.

На нове замовлення лунає сигнал. Звук обирається в налаштуваннях організації — різкі вбудовані сигнали або свій завантажений файл, із гучністю та повтором. У повідомлення клієнта в чаті сигнал свій, він налаштовується там само. Браузер дозволяє звук лише після першого кліку по сторінці — до цього на кошику видно помаранчевий дзвіночок.

---

Дошка замовлень

Той самий набір замовлень, але канбаном: колонки Нові / В процесі / Готово / Скасовано, картка з номером станції великим у лівому верхньому куті — з ним співробітник іде до клієнта. Дошка сама оновлюється раз на десять секунд, кнопки на картці рухають замовлення по колонках.

Тут само тумблер «Прийом замовлень»: вимкнули — станції отримують відмову й замовлення не створюється. Корисно, коли кухня зачинилася раніше за зал.

12.1 Касові зміни

Зміна — робочий період касира в клубі. Поки зміна не відкрита, поповнити баланс клієнта не можна жодним способом: ні з картки клієнта, ні з карти клубу, ні заявкою «після авторизації». Так гроші завжди закріплені за тим, хто їх прийняв.

Розділ Касові зміни:

ДіяЩо вводитьсяНавіщо
Відкрити змінуГотівка в скриньці на початок, коментарВід цієї суми рахується «має бути» при закритті
Закрити змінуПерерахована готівка, коментарСистема сама покаже розбіжність з очікуваним

У списку по кожній зміні видно: клуб, хто й коли відкрив і закрив, прийнято готівкою, безготівково й бонусами, «у касі» — скільки має бути (у відкритої) або скільки перерахували і на скільки розійшлося (у закритої). Розбіжність підсвічується: плюс — зеленим, мінус — червоним.

Одна відкрита зміна на клуб. Зміни сусідніх клубів одна одній не заважають.

> Поки зміна відкрита, в шапці гроші показуються за зміну, а не за календарну > добу — зміна часто переходить за північ. Підпис поруч із цифрою каже, за який > період сума.

---

13. Способи оплати та операції за рахунком

Способи оплати (у побуті — каси) — куди потрапляють гроші. У меню розділ називається «Способи оплати», щоб не плутати його з розділом «Каса» — робочим місцем касира.

ПараметрЗміст
НазваНаприклад «Готівка», «Термінал», «Бонуси»
ТипГотівковий, безготівковий, бонусний
КлубКаса конкретного клубу або спільна для організації
СтатусАктивна чи вимкнена
БалансРахується сам: сума всіх операцій по касі

Бонусна каса баланс не накопичує: це нарахування, а не реальні гроші. Саме тому виторг у шапці та в аналітиці рахується лише по готівкових і безготівкових касах, а бонусні нарахування показуються окремою цифрою.

Операції за рахунком — журнал усіх рухів: поповнення, списання за час, покупки абонементів, повернення, коригування. Фільтри за датою, типом, джерелом і касою, пошук за клієнтом. У поповнень доступне повернення (якщо право видано).

---

14. Промокоди

Розділ Промокоди.

ПараметрЗміст
КодУнікальний в організації; літери, цифри, дефіс, підкреслення
КлубЛише в цьому клубі або в усіх
ПодіяКоли застосовується: при реєстрації або при поповненні
ДіяПоповнити того, хто ввів, або конкретного клієнта
СумаСкільки нарахувати
Ліміт активацій0 — без обмежень
Вікно датЗ якого по яке число діє
СтатусГотовий, використаний, прострочений, вимкнений

Наразі промокоди застосовуються при реєстрації клієнта на станції: він вводить код і отримує нарахування.

---

15. Банери

Картинки на екрані станції. Налаштовується область показу (сітка 16×9, виділяється мишею), період (завжди або діапазон дат), час (дні тижня й години, вікно через північ припустиме), групи станцій і тривалість показу в секундах.

16. Ігри

Каталог ігор клубу: назва й опис із перекладами, зображення, рейтинг (зростає при запусках) і спосіб запуску. Для локальних файлів указується шлях, для лаунчерів (Steam, Battle.net, Epic, Riot, Ubisoft, EA, GOG, Rockstar, Wargaming) — лише ID гри, посилання система збере сама. У картці є підказка, де взяти ID, і попередній перегляд підсумкового рядка запуску.

У картці гри відмічаються жанри — скільки завгодно на гру. У списку вони видні бейджами, а поруч із вибором клубу з'являється фільтр за жанром. Станція отримує жанри разом із каталогом і показує клієнту той самий фільтр, що й оператору.

Клієнт може відмітити гру зірочкою — обране зберігається за парою «клієнт + клуб» і приходить на станцію одразу при вході. З панелі обране не правиться: це вибір клієнта.

17. Жанри ігор

Окремий довідник організації: список жанрів один на всю мережу, а ігри належать клубам і посилаються на нього — інакше «Шутер» довелося б заводити в кожному клубі заново.

ПараметрЗміст
НазваОкреме поле на кожну мову організації
СортуванняПорядок у списках і в меню станції
АктивністьВимкнений жанр залишається в панелі, але станціям не віддається

У списку видно, скільки ігор у кожному жанрі. Видалення жанру знімає його і з ігор — самі ігри залишаються на місці.

18. Бронювання ігрових станцій

Час броні обирається годиною та хвилинами, хвилини — з кроком 5 (00, 05, … 55; за замовчуванням 00): клієнт приходить не до рівної години, і округлення до півгодини дарувало йому або відбирало майже півгодини.

Сітка «станції × час» розмічена по годинах — зазвичай 24 колонки на добу. Бронь, яка займає частину години, і намальована частиною: з 13:20 до 14:40 плашка починається на третині першої клітинки й обривається на двох третинах другої. Так видно і точний час, і загальну картину вечора, а 288 п'ятихвилинних колонок не помістилися б на екран.

Двічі на рік у добі не 24 години. В останню неділю березня годинник переводять уперед, і години 03:00 цього дня немає взагалі — у сітці на одну колонку менше. В останню неділю жовтня його переводять назад, і одна година йде двічі: колонка перед нею триває дві години, тобто бронь «02:00–03:00» на цей день — це дві години гри. Такі колонки позначені в шапці пунктиром, підказка при наведенні пояснює, що відбувається.

Виділення мишею одразу по кількох станціях створює групову бронь; хвилини потім уточнюються у вікні. Зайняті години та минулі обрати не можна; відіграні броні показуються приглушено, але залишаються доступними для правки.

Клієнт може забронювати станцію сам — із мобільного застосунку. Він обирає клуб, дату та станцію, а бронь з'являється в цьому ж розділі та на карті клубу: окремого «світу» для застосунку немає, адміністратор бачить її нарівні зі своїми. Система сама перевіряє, що час у майбутньому і не далі ніж 30 днів уперед, тривалість від 30 хвилин до 12 годин, станція в цей час вільна і клуб приймає броні; одночасно в клієнта може бути не більше п'яти броней. Свою бронь він може й скасувати, доки вона не закінчилася.

Станцію не можна забронювати двічі. Перетин за часом перевіряє сервер — і в сітці, і при груповому виділенні, і в мобільному застосунку. Стик «кінець у кінець» дозволений: броня до 15:00 і броня з 15:00 не конфліктують. У груповій броні станції, у яких цей час уже зайнятий, пропускаються, а їхні номери названі в повідомленні.

Нагадування про броню. За заданий час до початку клієнт отримує нагадування — у Telegram, якщо він прив'язав бота в мобільному застосунку, інакше листом на пошту. Увімкнення й час «за скільки хвилин» — спільне налаштування системи: його ставить адміністратор сервісу один раз, окремо за клубами й організаціями воно не налаштовується. Броні без клієнта (їх заводить адміністратор «на ім'я по телефону») нагадувань не отримують, а нагадування по одній броні йде один раз.

19. Образи станцій

Список еталонних образів клубного сервера: дата, шляхи та розміри, ознака активного. Синхронізується із сервером при відкритті розділу. Тут же обирається, який образ вважається поточним, і видаляються непотрібні.

20. Сесії

Журнал клієнтських сесій: коли, хто, на якій станції, скільки часу і на яку суму. Лише перегляд.

21. Історія подій

Хто і що змінював у панелі: користувач, розділ, дія, значення до і після. Фільтри за датами та співробітником. За замовчуванням відкривається за сьогодні — щоб побачити старі записи, зсуньте період.

22. Локаль

Локалі — мови, якими працюють станції та каталог. У кожної мови є код (uk, ru, en, pl…), назва, прапорець і ознака «за замовчуванням». Клієнт бачить станцію своєю мовою, а каталог — назви ігор і товарів — підставляється з перекладів цієї мови; немає перекладу, залишається мова за замовчуванням.

Вимкнена мова станціям не віддається, але введені переклади не губляться: її можна увімкнути назад.

23. Історія листування

Розмови з клієнтами, які вже закінчилися. Чат на карті працює лише з активною сесією, тому закриту розмову можна прочитати тільки тут: список із датами, станцією, клієнтом, кількістю повідомлень і непрочитаними, фільтри за клубом і періодом та пошук за текстом повідомлень — згадати розмову зазвичай удається саме за фразою.

Клік відкриває переписку цілком, тими самими бульбашками й галочками статусів, що на карті, і позначає вхідні прочитаними. Продовжити розмову не можна — клієнта за станцією вже немає.

24. Відгуки та оцінки клубів

Клієнт ставить клубу оцінку від 1 до 5 і може написати відгук — зі станції (просто там, де грає) або в мобільному застосунку. Відгук один на клуб: нове надсилання переписує попереднє, тому накрутити рейтинг повторами не можна.

Оцінити може лише той, хто в цьому клубі грав. Перевірка йде за історією відвідувань, тож «замовні» відгуки з чужих акаунтів відсікаються на вході.

Відгук публікується не одразу — він проходить перевірку. Три щаблі, від безкоштовного до платного:

1. Прості правила: посилання та контакти, номери телефонів, лайка. 2. Безкоштовна перевірка OpenAI: погрози, цькування, непристойності. 3. Перевірка моделлю: реклама інших клубів, спам, звинувачення конкретних співробітників, текст не по темі.

Різка критика клубу — бруд, шум, ціни, хамство — вважається нормальним відгуком і публікується. Фільтр прибирає сміття, а не незручні думки.

Відхилений відгук бачить лише його автор, разом із причиною. Якщо перевірка недоступна (наприклад, скінчилися гроші на рахунку OpenAI), відгук публікується з позначкою — інакше відгуки накопичувалися б у черзі, і ніхто б про це не дізнався.

Ключ OpenAI і модель задаються один раз адміністратором системи (налаштування системи, група AI). Без ключа працюють лише прості правила — система продовжує приймати відгуки.

25. API ключі

Ключ, за яким сторонній партнер звертається до даних вашої організації: каса, система лояльності, сайт із записом онлайн, вітрина мережі. Ключ створюєте ви і передаєте партнерові — як пароль: за ним працюють від імені вашої організації.

ПараметрСенс
НазваДля кого ключ. За нею ви потім зрозумієте, який відкликати
Термін діїБезстроково, 1 день, 1 тиждень, 1 місяць, 1 рік або довільна дата. У довільної вибирається лише дата: вибраний день — останній робочий день ключа, він діє до 23:59:59. За ключем, термін якого збіг, запит не проходить — термін рахує сервер, годинник партнера тут ні до чого. У списку безстроковий ключ позначено прочерком
Режим доступуПовний доступ — усе, що можете ви самі; Група доступу — права вибраної групи, як у співробітника; Власний набір — лише позначені функції
Журнал зверненьПозначка: кожен виклик за цим ключем зберігається 7 днів — дія, код відповіді, тривалість і тіло запиту. Вмикайте, коли розбираєтеся, чому в партнера не працює; постійно він не потрібен

Вибір функцій у режимі «власний набір» виглядає так само, як права групи доступу: блоки, групи, пункти і пошук. Біля кожного пункту підписано назву функції в системі — саме її партнер вказує в запиті, і саме цей рядок ви позначаєте, коли він просить доступ.

У списку ключ показано першими та останніми чотирма символами: він іде назовні, і читати його повністю із загальної таблиці немає потреби. Повністю ключ видно в картці, скопіювати можна кнопкою в рядку.

Термін зручний для випробувань: дайте партнерові ключ на тиждень, і він вимкнеться сам, навіть якщо про нього забудуть. Відкликати ключ раніше можна лише тут — видалити або поставити термін.

Що партнер може робити за ключем. Зараз — лише читати: зал і станції, каталог (ігри, товари, ціни, залишки), тарифи й абонементи з розкладами, клієнтів та їхні абонементи, операції, зміни, сесії, замовлення, броні, переписку, аналітику. Змінити щось за ключем не можна: поповнити баланс, продати абонемент, зрушити статус замовлення чи вимкнути станцію через API неможливо.

Частота обмежена: 120 запитів на хвилину на ключ. Опитування стану залу раз на кілька секунд у це вкладається із запасом.

Документація для партнера — API для партнерів: адреса, формат запиту й відповіді, список дій, коди помилок, готова колекція Postman. Віддайте це посилання разом із ключем, більше розробникові нічого не потрібно. ---

26. Глобальні налаштування (налаштування організації)

Клієнти та замовлення

НалаштуванняЗміст
Вхід із від'ємним балансомНі (за замовчуванням) — клієнт із боргом не сяде за станцію, доки не розрахується. Так — входить і дограє в борг
Підтверджувати замовлення в магазиніНалаштування зберігається, але поки ні на що не впливає — чекаємо на опис сценарію
Ліміт поповненняСтеля суми одного поповнення балансу клієнта; за замовчуванням 100 000, 0 — без обмеження. Перевіряється на всіх касових шляхах: картка клієнта, поповнення з карти клубу, заявка «після авторизації» та партнерський API. Це захист від описки в нулях, а не від зловживання
Максимальний ліміт постоплатиСтеля суми постоплати й ліміт за замовчуванням, якщо адміністратор його не задав; 0 — без обмеження
Округлення постоплатиЯк округлити підсумок: без округлення (до копійок), до цілого вгору, звичайне або до цілого вниз. Округлюється один раз — коли постоплата закривається й чекає на оплату
Сигнал нового замовленняЗвук, яким панель повідомляє про нове замовлення: різкі писки, сирена, тривога, клаксон, черга або без звуку. Сигнали навмисно різкі — їх має бути чутно, навіть якщо співробітник за кілька метрів від монітора. Поруч — гучність і кнопка «Прослухати»
Подвійний сигналТак — сигнал повторюється ще раз через секунду. Один звук легко прийняти за випадковий, повтор читається як звернення до людини
Свій звуковий файлМожна завантажити власний звук (MP3, OGG або WAV до 1 МБ) — він замінить вбудований сигнал. Найкраще короткий запис на 1–3 секунди. Видалили файл — знову грає обраний зі списку
Сигнал повідомлення в чатіТой самий набір сигналів, але для повідомлення клієнта на карті клубу. Перший пункт — «Як у замовлень»: поки він обраний, чат звучить сигналом замовлення, і налаштовувати нічого не потрібно. Виберіть інший — і на слух стане зрозуміло, кличуть вас до стійки чи пишуть у переписці
Громкість сигналу чату, подвійний сигнал чату, свій звуковий файл чатуТе саме, що в замовлення, але для чату: своя гучність, свій повтор і свій запис. Кнопка «Прослухати» поряд зі списком грає саме те, що почує зміна

Розділ Загальні налаштування.

БлокПараметри
СкладЧи списувати товари при замовленні; чи дозволяти йти в мінус (інакше станція отримає «немає в наявності»); чи ховати товари, що закінчилися, від клієнтів
АбонементиМаксимум збереженого часу в клієнта (годин, 0 — без ліміту) і заборона мати більше одного невитраченого абонемента
TelegramБот організації та канал для сповіщень співробітників
Пошта (SMTP)Надсилання листів клієнтам
Часовий поясЗа ним рахуються межі доби в аналітиці
ЛокаліМови, якими працюють станції та каталог
ВебхукАдреса, на яку сервіс сам повідомляє про події: початок і кінець сесії, нове замовлення й зміна його статусу, поповнення балансу. Тут же ввімкнення, список подій і ключ підпису — ним отримувач перевіряє, що запит справді наш. Надсилання йде через чергу з трьома спробами, тому недоступний приймач нічого в панелі не затримує. Потрібен для власної CRM, Telegram-бота або табло в залі

Імпорт з іншої системи (SENET)

Майстер у чотири кроки: набір даних → реквізити доступу → мета → запуск.

НабірЩо переносить
КлієнтиАкаунти обраної групи разом із грошовим балансом
БалансЛише оновлює баланс уже імпортованих клієнтів
Зони, станції, тарифи, абонементиІнфраструктуру обраного залу в обраний клуб
Категорії та товариКаталог магазину з картинками та перекладами
Артикули та штрихкодиЛише коди й ознаку активності в наявних товарів
Усе одразуІнфраструктуру цілком плюс клієнтів обраної групи

Опція «очистити поточний список» видаляє попередні записи перед завантаженням — застосовуйте свідомо. Імпорт іде у фоні, результат залишається в задачі.

---

27. Співробітники та права

Співробітники

Розділ Співробітники: логін, ім'я, пошта, телефон, пароль, група доступу, аватар, список клубів і ознака «може входити на станції» (для службового входу в залі).

Співробітник бачить лише призначені йому клуби — це стосується і карти, і замовлень, і показників у шапці.

Групи доступу

Розділ Групи доступу — набори дозволених функцій.

У вікні групи права згруповано за блоками (Клуб, Магазин, Клієнти, Тарифікація, Персонал і доступ, Організація) та розділами. Є пошук за назвою і чекбокс «обрати всю групу цілком».

У списку груп у кожного рядка — іконка з лічильником співробітників: вона відкриває склад групи, де відмічаються співробітники організації. У співробітника одна група доступу, тому позначка переводить його сюди з попередньої (вона підписана поруч), а знята — залишає без групи.

Власнику групи не потрібні: у нього повний доступ завжди.

---

28. Аналітика

Розділ Аналітика — дашборд за обраний період.

Період: готові варіанти (сьогодні, вчора, 7 днів, місяць, рік…) або свій період. У свого періоду задаються не лише дати, а й час початку та кінця — можна подивитися, наприклад, лише вечірні години. Кінець включається цілком: 00:00–23:59 — це рівно доба.

Гранулярність — за днями або за місяцями.

Показники: загальний виторг, виторг станцій і магазину, окремо кальян і алкоголь, завантаження, активні та нові клієнти.

Графіки: виторг за періодами, завантаження, виторг за групами станцій, середнє завантаження за годинами доби та теплова карта завантаження.

Каси: таблиця показань (поповнення, повернення, підсумок, число операцій, частка) і графік «Каси в динаміці» — окрема лінія на кожний спосіб оплати з перемикачем день / тиждень / місяць. Клік по легенді прибирає зайві каси, у підказці — сума показаних.

Виручка по змінах — таблиця чергувань за останні 30 днів: дата відкриття, клуб, касир, скільки годин ішла зміна, прийнято готівкою та безготівково, бонуси окремо, виручка грошима і число операцій; знизу підсумок і «у середньому за зміну». Виручка зміни — це гроші, які прийняв касир (готівка плюс безготівкові, без повернутих поповнень); рахується тією самою формулою, що в розділі касових змін, тому цифри на двох екранах збігаються. Бонуси показані приглушено: це не гроші в касі.

Виручка по тижнях — графік за останні 18 тижнів: стовпці — сума тижня, лінія — середня виручка за день цього тижня. Тиждень рахується з понеділка; поточний, ще не завершений, діляться на минулі дні і в підказці підписаний «неповний тиждень», інакше він завжди виглядав би провалом.

Вікна цих двох блоків фіксовані — 30 днів і 18 тижнів, вони не залежать від фільтра періоду в шапці (змінюється лише вибір клубу). Про це сказано в підписі кожної картки.

Дані за минулі дні рахує нічний розрахунок, сьогоднішній день — на льоту. Якщо задати час, увесь період перераховується за вихідними даними.

---

29. Як клієнт користується станцією

1. Реєстрація — на станції за поштою та паролем, код підтвердження приходить листом. Можна одразу ввести промокод. 2. Вхід — пошта й пароль, QR-код через мобільний застосунок або допомога адміністратора (він вводить дані з карти клубу, станція підтверджує вхід). 3. Сесія — ідуть безкоштовні хвилини клубу, потім абонемент, потім гроші з балансу. Клієнт бачить залишок і баланс. 4. Каталог — ігри (запуск в один клік), товари з цінами свого клубу. 5. Замовлення — кошик із комбо та супутніми товарами; замовлення з'являється на дошці в персоналу, гроші не списуються. 6. Завершення — клієнт виходить сам, або сесія закривається через вичерпання коштів. Покинуту сесію система закриє сама і не спише зайвого.

---

30. Часті задачі

ЗадачаЯк зробити
Прийняти гроші від клієнтаКартка клієнта або карта клубу → «Поповнити рахунок», обрати касу
Нарахувати бонусПоповнення з бонусною касою; коментар обов'язковий
Дати дограти в боргКарта клубу → правий клік по станції → «Дати кредит»
Закрити боргЗвичайне поповнення на суму боргу
Помилилися при поповненніОперації за рахунком → «Повернення» на потрібному рядку
Пробили не ту касуКаса → «Поповнення» → кнопка зі стрілками в рядку історії → інша каса
Посадити клієнта без його телефонаКарта клубу → «Авторизувати клієнта» (пошта й пароль клієнта)
Підготувати станцію до ремонтуПравий клік → «Режим станції» → «Обслуговування»
Поставити ігри на станцію, не втративши їх при перезавантаженніПравий клік → «Режим станції» → «Адміністрування»
Зняти еталонний образ після встановлення ігорУ режимі адміністрування вимкнути станцію → правий клік → «Створити золотий образ»
Увімкнути весь залВиділити станції рамкою → «Увімкнути»
Дізнатися, що на сервері закінчується місцеЗначок диска у шапці → вікно стану сервера (поріг — у карточці клубу)
Роздати гроші гостямВиділити станції → «Поповнити після авторизації»
Тимчасово закрити кухнюДошка замовлень → вимкнути «Приймання замовлень»
Зрозуміти, куди пішли гроші за змінуАналітика → період із часом зміни → «Каси в динаміці»
Дати співробітнику доступГрупи доступу → потрібна група → іконка складу → відмітити співробітника

---

31. Що важливо пам'ятати