01Курс, а не заставка
Экран ожидания ATM-0042 в Бухаресте отвечает на первый вопрос подошедшего ещё до касания: актуальный курс BTC/EUR, обновлён 8 секунд назад. Ниже — две кнопки, купить крипту и продать крипту, и весь сценарий в трёх шагах: внесите наличные, отсканируйте кошелёк, подтвердите на экране.
02Покупка, которую доводят до конца
Шаг 2 из 3: внесено и пересчитано €200.00 наличными, 0.00326 BTC вернётся по курсу, зафиксированному на экране. Клиент сканирует QR кошелька — или печатает бумажный кошелёк, если своего нет. Комиссия €0.60 включена, поступление примерно через 10 минут после подтверждения, а машина продолжает считать, пока вносят новые купюры.
- Курс зафиксирован на экране в момент подтверждения
- Бумажный кошелёк для тех, у кого нет приложения
- Принимаются купюры: €10, €20, €50, €100
03Консоль парка
Вторая половина продукта управляет 48 машинами в 6 городах: 46 онлайн, 1 офлайн, 1 на обслуживании. Средний уровень наличных 62% при пороге пополнения 15%; оборот сегодня €18,420, на 12.4% больше, чем вчера. Каждая строка — машина: уровень наличных, крипто-резерв, оборот за 24 часа, последнее обслуживание, а выбранная машина раскрывается до уровня купюр.
- Уровень наличных, крипто-резерв и оборот по каждой машине
- Аптайм за 30 дней по каждой машине — 99.2% у ATM-0042
- Пополнение по графику и удалённая блокировка из одной панели
04Карта, с которой работают операторы
На карте парк виден по городу: двенадцать банкоматов в кадре в виде статусных меток, а список сбоку отсортирован по остатку наличных, так что следующая проблема всегда наверху. ATM-0017 на Gara de Nord заполнен на 8% — и во всплывающей подсказке уже есть решение: инкассация сегодня в 18:00, бригада CIT-04.
- Фильтры по статусу, городу и остатку наличных
- Список и карта — одни данные, переключение в один клик
- Метки по состоянию: онлайн, мало наличных, на обслуживании
05Кассеты — с точностью до купюры
В ATM-0042 лежит €14 200, 78% от ёмкости, и консоль знает точный состав: €10 × 120, €20 × 260, €50 × 156, плюс 42 купюры в отбраковке, помеченные на проверку. Последняя загрузка, бригада, которая её провела, и дата следующей — на той же странице: логистика наличных строится на цифрах, а не на выездах.
- Заполнение, сумма и статус по каждой кассете
- Отбраковка учитывается как любая другая кассета
- Последняя загрузка 2 июля, следующая ожидается 19 июля — по данным, а не на глаз
06Отдельная линия в консоли оператора
Для команд, которые работают в консоли оператора Protocore, парк доступен и отдельной линией, в бета-версии: банкоматы со статусом, остатком наличных, аптаймом и столбцом heartbeat — «8 секунд назад» значит всё в порядке, «14 минут» похоже на проблему. Одно число сверху задаёт задачу дня: собрать €18 400 наличными.
07Наличные в обе стороны
Киоск и покупает, и продаёт: наличные на входе — крипта на выходе, или крипта на входе — наличные на выходе. Внизу диапазон указан прямо — наличные ↔︎ BTC, ETH, USDC — так что банкомат закрывает обе половины рынка.
08Оповещения об остатке наличных
ATM-0017 на Gara de Nord заполнен на 8% и помечен как «мало наличных» при пороге загрузки 15%. Оператор видит флаг раньше, чем клиент — пустой банкомат.
09Удалённая блокировка — с указанием причины
Любой банкомат блокируется из консоли, откуда угодно — и блокировка спрашивает, зачем. Причина и заметка попадают в журнал аудита вместе с действием, а банкомат остаётся выключенным, пока кто-то его не проверит.
10Состояние и аптайм
У каждого банкомата есть состояние — онлайн, офлайн, на обслуживании — и аптайм за 30 дней; у ATM-0042 это 99,2%. Сам экран тоже всегда свежий, в демо он обновлён 26 секунд назад: консоль описывает то, что происходит сейчас, а не утро.
11Все локации в одном окне
Бухарест, Клуж-Напока, Яссы, Брашов, Тимишоара — демо-парк охватывает 6 городов и собирается в одну таблицу. Оператор видит парк, а не папку с отдельными банкоматами.
12Операции как рабочий процесс
Банкоматы, операции с наличными, транзакции, оповещения и отчёты — отдельные вкладки одной консоли, а данные выгружаются в CSV для всего, что работает рядом. Добавить банкомат можно кнопкой на том же экране.
13Отбраковка — тоже состояние
Замятые и подозрительные купюры попадают в отбраковку, и она учитывается как кассета — 42 купюры в ATM-0042 помечены на проверку. Опустошение входит в загрузку, а количество — в отчётность.
14Журнал обслуживания по каждому банкомату
У каждого банкомата своя история — загрузки, снятые оповещения, обновления прошивки, расходники — и в каждой записи указано, кто это сделал: id бригады, удалённый push или auto. Тридцать дней ответов, прежде чем кто-то возьмётся за телефон.
15Загрузка как плановая работа
Загрузки планируются на странице банкомата, выполняются конкретной бригадой и закрываются со сбросом счётчиков и опустошённой отбраковкой. Последняя загрузка и следующая оценка указаны оба — расписание это данные, а не устные предания.
16Прошивка без выезда
Демо-банкомат получил 4.2.1 →︎ 4.3.0 удалённым push-обновлением, самотест пройден, в журнале одна строка. Обновление парка — это раскатка, а не поездка.
17Крипторезерв под контролем, как и наличные
В каждом банкомате два запаса: купюры в кассетах и резерв в hot-кошельке — 0,42 BTC на ATM-0042, в пределах нормы. Оба контролируются по порогам, и оба сигналят заранее, до того как закончатся.
18Heartbeat раньше жалоб
Банкоматы постоянно выходят на связь, а консоль показывает возраст последнего heartbeat рядом с аптаймом. Банкомат, молчащий несколько минут, краснеет раньше, чем клиент найдёт его выключенным.
19Действия по ролям
Блокировка банкомата мгновенна — и доступна только ops-admin. Привилегированные действия с парком защищены ролями и аудит-заметками — по той же дисциплине, что и вся остальная платформа.
20Транзакции — по банкомату и по парку
Каждый заказ с киоска попадает во вкладку транзакций, и его можно отфильтровать до одного банкомата. Что произошло за день на улице — это запрос, а не проект по сверке.
21Отчёты, которые выходят из консоли
Отчёты суммируют оборот по дням и по банкоматам, а всё выгружается в CSV. Система бухгалтера получает цифры, а не скриншоты.
22Экспорт журнала
Полный журнал банкомата выгружается одним действием с его страницы. Когда спор или аудит спрашивает, что было 12-го, ответом служит файл, а не воспоминания.
23Ваш бренд на улице
Интерфейс киоска и консоль работают в режиме whitelabel. Банкомат на углу носит ваше имя; операции за ним ведутся с той же дисциплиной в любом случае.
24Добавьте банкомат за один присест
Новый банкомат сначала строка, потом маршрут: зарегистрируйте его по серийному номеру, локации и сети — и он появится в парке со своим heartbeat. Подключение — это работа в консоли, а не проект.
25Оповещения закрываются сами
Флаг на 15% запланировал загрузку; когда загрузка прошла, оповещение снялось — в журнале запись от auto. Оповещения закрываются, когда меняется реальность, а не когда кто-то вспомнит поставить галочку.