Перейти к содержанию

POS Сессии

Смена кассы — это промежуток от «кассир пришёл и пересчитал деньги в ящике» до «кассир сдал деньги и ушёл». Каждый такой промежуток система записывает сюда двумя строками: открытие и закрытие.

Где искать: Модули → POS → Регистры → POS Сессии

Регистр только для чтения: записи создаёт сама касса, руками их не заводят и не правят. Это не прихоть — на сумму открытия смены опираются расчёт наличности в кассе и отчёт расходов из кассы, так что возможность «подправить» её сломала бы весь учёт наличных. Единственное действие здесь — «Снять блокировку кассы» в меню окна смены, когда кассир ушёл, не разблокировав кассу (см. «Типичные ситуации»); суммы и даты оно не трогает.

Разбор на примере

Закрытие смены

Запись короткая, и каждое поле отвечает на один вопрос:

  • Номер — сквозной номер записи; открытие и закрытие одной смены имеют РАЗНЫЕ номера (в примере 1 и 2);
  • переключатель «Открыт» / «Закрыть» — тип записи: открытие или закрытие смены; он тоже только для чтения;
  • Сумма — при открытии это наличность, с которой кассир начинает день (разменная монета), при закрытии — та, что остаётся в ящике на завтра;
  • Кассовый аппарат и Кассир — кто работал: логин кассы и логин кассира, которые входили в POS;
  • Дата, Время, Полная дата — когда это произошло; время проставляет система;
  • Заблокировано — кассир поставил кассу на перерыв кнопкой «Заблокировать кассу» на экране кассы (галочка только на открытии открытой смены);
  • Блокировку снял — логин и время того, кто снял блокировку здесь, в бэкофисе; пусто, если кассир разблокировал кассу сам.

Список смен

В списке видны пары «открытие → закрытие». Если у открытия нет закрытия — смена ещё идёт.

Как записи появляются

Открытие создаёт касса, когда кассир авторизуется в кассовом режиме. Открыть смену касса может только на того кассира, под чьим входом работает: запрос с чужим логином кассира получит «Доступ запрещен». Вместе с записью система, если подключён ПРРО, открывает смену и в нём.

Закрытие пишет процедура закрытия кассы. Одновременно с ним, если кассир указал сумму выемки, создаётся строка выноса наличных — см. Расходы/поступления кассы.

Зависшая смена закрывается сама. Если кассир ушёл, не закрыв кассу, следующее открытие на этой же точке сначала закроет предыдущую смену — текущим временем и с пересчитанной наличностью: сумма открытия + внесения − выносы + наличная часть чеков этой смены. На фискальной кассе (задана «Фискальная касса» Вчасно.Каса) так закрывается только смена без наличных: если в ней остались деньги, вход откажет «Фискальную смену закрывают только с пустой кассой…», и сначала предыдущий кассир выносит остаток. В демо это хорошо видно в отчёте расходов из кассы: смена с операциями за январь получает закрытие, датированное днём, когда открыли следующую.

Через REST-интеграцию смену не создать, не изменить и не удалить. Создание и правка возвращают «POS-сессия создается автоматически и не может быть создана или изменена вручную», удаление — «POS-сессия создается автоматически и не может быть удалена вручную». Создавать записи могут только два входа — кассира и точки продажи, то есть то, чем пользуется сама касса.

Параметры

Поле Описание
Номер Номер записи; проставляет система.
«Открыт» / «Закрыть» Тип записи: 0 — открытие смены, 1 — закрытие.
Сумма Наличность в кассе: на начало смены или на её конец.
Кассовый аппарат Логин кассы, на которой открыта смена.
Кассир Логин кассира, работающего эту смену.
Дата, Время, Полная дата Момент операции; проставляет система.
Заблокировано Касса поставлена на перерыв («Заблокировать кассу»); пока стоит, касса не продаёт, не вносит и не изымает деньги, не закрывает смену и не пускает другого кассира.
Блокировку снял Кто и когда снял блокировку из бэкофиса («логин, дата время»); пишет система.

Типичные ситуации

Касса заблокирована, а кассир ушёл. Блокировку снимает кассир своим паролем на экране кассы. Другой кассир в заблокированную кассу не войдёт — ни после перезагрузки страницы, ни из нового или приватного окна браузера: блокировка стоит на сервере, и вход ответит «Касса заблокирована» с подсказкой «Разблокировать её может только кассир … своим паролем». Если кассир ушёл совсем (заболел, забыл разблокировать), откройте здесь запись открытия его смены и в меню окна выберите «Снять блокировку кассы». Нужно право редактировать POS Сессии в вашей роли — это имеющееся право, новой роли не нужно; у кого оно есть, тот и снимает (кассир с таким правом тоже). Смена и деньги остаются как были, в поле «Блокировку снял» появятся ваш логин и время. Вход ушедшего кассира при этом отзывается: на кассе обновите страницу (F5) — появится «Вход кассира», и работать от его имени без пароля уже не получится. Исключение — пользователя с логином этого кассира переименовали или завели уже после блокировки: тогда вход не отзывается, и окно подскажет отозвать его вручную — «Принудительный выход» в карточке пользователя. Следующий кассир входит как обычно — вход сам закроет старую смену с пересчётом наличных. Если блокировку снимаете вы сами как кассир этой смены, ваш вход не отзывается.

От чего блокировка не защищает. Блокировка — перерыв кассира: она не даёт человеку, подошедшему к кассе, продавать, вносить или изымать деньги с экрана кассы. От того, кто с этого же устройства кассы шлёт запросы к серверу вручную, она не защищает: такой запрос может назвать другую, даже несуществующую кассу — у неё нет смены, значит нет и блокировки, а способы оплаты и фискальную кассу она берёт из «POS Настройка», то есть те же, что у единственной кассы базы. Так же устроен SERP: касса в документе — то, что в нём написано, привязки «вошёл на кассе A — пишешь только в A» там нет. Решение владельца 10.10.2026 (REQ #9734) — оставить так.

Смена «висит» открытой. Ничего страшного: следующее открытие закроет её автоматически (на фискальной кассе — только когда в ней не осталось наличных, см. выше). Но пока она открыта, отчёт расходов из кассы и расчёт ожидаемой наличности считают именно её.

Сумма закрытия не совпадает с фактом в ящике. Система не сверяет: фактический пересчёт ящика кассир не вводит. Сумма закрытия — наличность смены (открытие + внесения − выносы + наличная часть чеков) минус выемка, которую кассир указал при закрытии. На фискальной кассе и при автозакрытии зависшей смены её считает сервер; на обычной кассе её присылает касса при закрытии, и сервер её не пересчитывает. Расхождение ищут отчётом — он показывает, сколько должно было остаться по операциям.

Нужно исправить сумму. Исправить нельзя ни в записи, ни через интеграцию. Правильный путь — оформить движение наличных: внесение или вынос с пояснением.

Касс две, а смена одна. Смена привязана к точке продажи, поэтому на каждой кассе свои смены. Номера записей — одна сквозная серия на все кассы: смены двух касс идут вперемешку.

Рядом