Понад 20 років досвіду в галузі

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

Карусель у невеликому парку розваг

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

Гроші губляться у двох різних місцях — і лікується це по-різному

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

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

Це два різні завдання, і розв'язати їх одним інструментом не виходить. Далі — про те, чим закривається кожне.

Чому готові системи для парків вам не підійдуть

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

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

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

Перша половина: квиток, який живе окремо від відвідування

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

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

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

Співробітник біля каруселі бачить лише своє

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

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

Виручка рахується за продажем, а не за відвідуванням

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

Друга половина: лічильник, який не спостерігає, а дозволяє

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

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

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

Таймер розв'язує другу половину завдання

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

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

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

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

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

Дві половини закривають різні дірки

Разом це складається в замкнений контур, і варто проговорити, хто за що відповідає:

Нарізно кожна половина дірява. Лічильник нічого не знає про гроші. Звірка без лічильника вірить людині на слово. Разом ховати нічого: кількість і час зафіксовані залізом, гроші — арифметикою.

Коли парку потрібні не Квитки, а Заїзди

Квитки потрібні не кожному парку, і правило вибору просте — воно про людей, а не про атракціони:

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

Парк рідко буває однорідним

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

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

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