🛡
Контроль кассы и честность продаж
Группа «Контроль» в приложении: подозрительные чеки, аудит удалённых позиций, поведение кассиров, аномалии и сверка смен — как бот ищет «продажи мимо кассы» и как читать его находки.
1
Что входит в группу «Контроль»
Шесть вкладок: ⚠️ Подозр. (чеки с удалёнными позициями за 3 дня), 🔍 Кассиры (паттерны поведения), 🧾 Опер. кас (что делали за смену), ⚠️ Аномалии (статистические отклонения), 🔄 Сверка (касса из смены vs Poster) и 🕵️ Чеки (аудит удалённых позиций, только владелец/админ).
Это экраны «посмотреть руками». Параллельно те же проверки работают сами как алерты: возврат чека, чек с минусовой суммой, подозрительные чеки ежечасно, нефискализированные продажи — всё это приходит в Telegram сразу, тумблеры в «🔔 Уведомлениях».
Это экраны «посмотреть руками». Параллельно те же проверки работают сами как алерты: возврат чека, чек с минусовой суммой, подозрительные чеки ежечасно, нефискализированные продажи — всё это приходит в Telegram сразу, тумблеры в «🔔 Уведомлениях».
⚠️ Главное правило всей группы: один странный чек — ещё не кража (гость передумал — это норма). Сигнал — систематика по одному человеку за несколько недель.
2
Подозрительные чеки
Вкладка ⚠️ Подозр. ищет главный паттерн «мимо кассы»: позицию добавили в чек, подержали и удалили перед закрытием. Проверяются только чеки, оплаченные наличными и открытые достаточно долго — по карте банк фиксирует сумму, там эта схема не работает, поэтому остальные чеки проверки не требуют (экран честно показывает: всего чеков / проверено / найдено).
Каждая находка — с названием товара, суммой, кассиром и таймлайном: во сколько добавили, во сколько удалили и сколько позиция «висела». Кнопка 📥 Export CSV выгружает список за неделю.
Каждая находка — с названием товара, суммой, кассиром и таймлайном: во сколько добавили, во сколько удалили и сколько позиция «висела». Кнопка 📥 Export CSV выгружает список за неделю.
3
🕵️ Чеки — аудит удалённых позиций
Вкладка 🕵️ Чеки (только владелец/админ) — более глубокая версия предыдущего экрана: ночной скан собирает все удаления позиций из чеков в локальную историю, и по ней строится статистика по каждому бариста за 7/30/90 дней: всего удалений, из них за наличные, в пересчёте на 100 чеков (чтобы не наказывать самого работящего) и на какую сумму.
Ниже — список самих чеков с фильтром по человеку: что удалили, когда, как оплатили.
Каждое утро в 10:00 бот присылает владельцу в личку список удалений за вчера — время, бариста, позиция, сумма и номер чека, от дорогого к дешёвому. Это именно для того, чтобы сверить с камерами, пока запись не перезаписалась. Порогов «сколько позиция провисела до удаления» здесь нет: на реальных данных удаляют через 10 секунд, и любой такой порог просто скрывал бы 9 случаев из 10. Фильтр один и понятный: позиция не ушла в соседний чек (это разделение счёта) и чек оплачен наличными — по карте банк всё равно зафиксирует полную сумму. Отдельный тумблер «Удаления позиций за день» в Уведомлениях.
Ниже — список самих чеков с фильтром по человеку: что удалили, когда, как оплатили.
Каждое утро в 10:00 бот присылает владельцу в личку список удалений за вчера — время, бариста, позиция, сумма и номер чека, от дорогого к дешёвому. Это именно для того, чтобы сверить с камерами, пока запись не перезаписалась. Порогов «сколько позиция провисела до удаления» здесь нет: на реальных данных удаляют через 10 секунд, и любой такой порог просто скрывал бы 9 случаев из 10. Фильтр один и понятный: позиция не ушла в соседний чек (это разделение счёта) и чек оплачен наличными — по карте банк всё равно зафиксирует полную сумму. Отдельный тумблер «Удаления позиций за день» в Уведомлениях.
⚠️ Данные сюда собирает ночной скан, а скан работает, только пока включён алерт «Аудит чеков» в Уведомлениях. Выключишь тумблер, чтобы не приходил понедельничный дайджест, — экран постепенно станет пустым.
4
Кассиры: паттерны поведения
Вкладка 🔍 Кассиры — текстовый отчёт по каждому бариста со смены (не по логину POS: под одним аккаунтом заведения работают разные люди) за период, по умолчанию 28 дней: сколько чеков, сколько отмен, как часто даёт скидки и какая доля наличных.
Доля наличных сравнивается честно, с тремя поправками: только внутри своего заведения (в разных заведениях уровень наличности разный сам по себе), с поправкой на день недели (кто работает в основном по будням, у того наличных меньше из-за графика, а не из-за поведения) и относительно себя же — «было 25%, стало 15%» видно даже если человек в пределах средней по заведению.
Пороги: отмен больше 2%, скидок больше 30%, наличных на 10 пп ниже коллег по заведению, падение на 8 пп к себе же — все четыре меняются во вкладке «📏 Пороги».
Если смена на день не найдена (или их было несколько), строка остаётся с логином POS и помечается звёздочкой: к человеку такая цифра не привязана.
Доля наличных сравнивается честно, с тремя поправками: только внутри своего заведения (в разных заведениях уровень наличности разный сам по себе), с поправкой на день недели (кто работает в основном по будням, у того наличных меньше из-за графика, а не из-за поведения) и относительно себя же — «было 25%, стало 15%» видно даже если человек в пределах средней по заведению.
Пороги: отмен больше 2%, скидок больше 30%, наличных на 10 пп ниже коллег по заведению, падение на 8 пп к себе же — все четыре меняются во вкладке «📏 Пороги».
Если смена на день не найдена (или их было несколько), строка остаётся с логином POS и помечается звёздочкой: к человеку такая цифра не привязана.
5
Операции кассиров
Вкладка 🧾 Опер. кас — что конкретно происходило на кассе за период: отменённые чеки, возвраты и чеки, которые висели открытыми больше 10 минут (именно такие — кандидаты на «добавил, подержал, удалил»). Это детализация к «Кассирам»: там паттерн, здесь — конкретные операции, чтобы было что спросить у человека.
6
Аномалии
Вкладка ⚠️ Аномалии — статистика вместо подозрений: бот считает типичное поведение заведения (выручка, количество чеков, возвраты, скидки) и показывает дни, отклонившиеся больше чем на 2 стандартных отклонения (z-score, порог настраивается). Падение выручки без причины, всплеск возвратов, необычно много скидок — всё всплывает здесь, даже если ни одно отдельное правило не сработало.
7
Сверка смен
Вкладка 🔄 Сверка — 14 дней по каждому заведению: касса, которую бариста сдал в смене, против выручки Poster за тот же день. Четыре состояния: 🚨 не сдана (выручка в Poster есть, а отчёта смены нет), 📉 недостача (касса меньше Poster — главный повод разобраться), 📈 излишек и ✅ сведено.
Возвращённые чеки бот из дневной выручки Poster исключает — возврат не создаёт ложной «недостачи».
Возвращённые чеки бот из дневной выручки Poster исключает — возврат не создаёт ложной «недостачи».
💡 Та же проверка работает и сама: алерт «Сверка смен с Poster» раз в день напомнит о выручке без сданной смены, а разовое расхождение кассы/сейфа ловится сразу при разборе отчёта смены.
8
Алерты реального времени
Экраны выше — для разбора задним числом. Чтобы узнавать сразу, включи соответствующие тумблеры в 🔔 Уведомлениях: возврат чека (каждый — отдельным сообщением), чек с минусовой суммой, проверка подозрительных чеков (ежечасно), нефискализированные чеки за смену (создаёт задачу на бариста, сдавшего смену), аномалии дня и чек «висит открытым». У каждого алерта свой адресат: личка владельца, группа заведения или отдельная тема форума.
FAQ
Кто видит группу «Контроль»?
Пять вкладок — под правом
tab_finance: по умолчанию владелец, админ, менеджер и бухгалтер. 🕵️ Чеки — исключение: только владелец и админ, право не раздаётся.Экран «Чеки» пустой, хотя удаления точно были
Чаще всего — выключен тумблер алерта «Аудит чеков» в Уведомлениях: без него ночной скан не работает и история не наполняется. Включи и подожди следующей ночи.
Бот показывает подозрительный чек — что делать?
Ничего драматичного сразу: открой «🧾 Опер. кас» и «🕵️ Чеки», посмотри, разовый ли это случай или систематика по одному человеку за несколько недель. Разовое — забудь; систематика — разговор с конкретными чеками на руках.