При потере связи касса переходит на проверку по локальной базе модуля: продажа продолжается, но решение принимается по копии сведений, а не по живому ответу системы. Операции, совершённые в это время, накапливаются и уходят после восстановления связи — и именно тогда становится видно, что часть из них система не подтвердила. Поэтому главный вопрос для точки в подвале или на трассе не «как продавать без интернета», а «что мы сделаем с накопленным, когда связь вернётся».
Второй по важности вопрос — сколько офлайн-режим живёт. Точного ответа в общем виде нет: срок жизни локальной базы и правила её обновления задаёт модуль проверки и его поставщик. Ответ надо получить письменно и заранее — до того, как он понадобится в пятницу вечером; формулировка «работает всегда» ответом не является. Как устроен сам запрос разрешения и почему решение принимает сервер, а не касса, разобрано в опорном материале разрешительный режим: что это и почему касса перестала пробивать.
Локальная база модуля хранит копию сведений и позволяет продолжать продажи без обращения к серверу. Она способна поймать часть проблем — структурные ошибки кода, повтор в пределах этой же кассы, известные ей ограничения. Чего у неё нет — так это свежего состояния конкретного экземпляра товара: продан ли он где-то ещё, не аннулирован ли код, не появился ли запрет надзорного органа за последние часы.
Чем офлайн-проверка отличается от онлайн-запроса
Разница не в скорости, а в том, кто принимает решение и на каких данных. Это важно понимать до сбоя, а не во время: от этого зависит, какие операции вы готовы проводить при потере связи, а какие лучше отложить.
| Что сравниваем | Онлайн-запрос | Офлайн по локальной базе |
|---|---|---|
| Кто принимает решение | Сервер системы, ответ приходит на кассу | Модуль на стороне точки, по имеющейся у него копии |
| Актуальность сведений | На момент запроса | На момент последнего обновления локальной базы |
| Что точно видно | Статус конкретного экземпляра, включая продажу в другой точке | Структура кода и то, что известно локально |
| Чего не видно | Практически ничего из того, что относится к экземпляру | Свежая продажа, аннулирование, запрет надзорного органа, новые сведения о документах |
| Когда выясняется расхождение | Сразу, у кассы | После восстановления связи, когда покупатель уже ушёл |
Отсюда практический вывод: офлайн-режим переносит проблему во времени, а не устраняет её. Он сохраняет выручку и очередь — в этом его смысл, — но разбирать последствия всё равно придётся, и лучше в тот же день.
Две горизонтальные дорожки времени в чертёжном стиле, одна под другой. Верхняя подписана «онлайн»: сканирование, стрелка наружу к блоку «система», возврат ответа, отметка «решение у кассы, покупатель рядом». Нижняя подписана «офлайн»: сканирование, стрелка к локальному блоку «база модуля», продажа, затем разрыв с подписью «связь вернулась» и только после него отметка «ответ системы, покупатель ушёл». Справа общий вынос: «проблема переносится во времени, а не исчезает». Приглушённая палитра, подписи по-русски.
Что происходит, когда связь вернулась
Момент восстановления связи — самая недооценённая часть сбоя. Кассир к этому времени уже забыл про инцидент, а система как раз начинает отвечать по операциям, которые прошли без её участия.
- 1Накопленные операции уходят пакетом. Это не мгновенно: чем дольше длился сбой, тем дольше идёт передача, и в это время касса может работать заметно медленнее обычного.
- 2Часть операций подтверждается без замечаний — это большинство, и на них смотреть не нужно.
- 3Часть операций получает отказ задним числом: код оказался продан в другой точке, аннулирован или по нему появился запрет. Товар при этом уже у покупателя.
- 4По каждому такому случаю нужен разбор: что за товар, откуда он пришёл, был ли принят документ поступления. Порядок действий по возврату ситуации в норму согласуйте с бухгалтером — это учётный вопрос, а не технический.
- 5Итог смены сверяется в тот же день: число чеков, число подтверждённых операций, список неподтверждённых. Отложенная на неделю сверка превращается в расследование.
Два соблазна выглядят как решение, а создают нарушение вместо него: пробить маркированный товар как немаркированный и продать позицию по коду от другой упаковки. Оба действия оставляют след в учёте и в системе, разбирается он потом дольше и дороже, чем отложенная продажа. Если офлайн-режим не работает и позиция не проходит — товар откладывается, а не пробивается обходным путём. Восемь причин отказа и признак каждой разобраны в материале касса не пробивает маркированный товар.
Резервный канал: что помогает, а что создаёт видимость
Резерв работает, только когда независим от основного канала по трём признакам сразу: другой оператор, другая среда передачи, другое питание. Совпал один признак — резерв упадёт вместе с основным, обычно в самый неподходящий момент.
- Помогает: проводной канал плюс мобильный роутер другого оператора. Разные операторы, разные среды передачи, разные точки отказа. Внешняя антенна для подвала или дальней трассы — обязательная часть решения, без неё роутер в подвале бесполезен.
- Помогает: автоматическое переключение на резерв. Ручное переключение означает, что кто-то должен заметить сбой и добежать до оборудования. В час пик это те самые пятнадцать минут, которые вы считаете потерями.
- Помогает: источник бесперебойного питания на связное оборудование. Половина «обрывов связи» в небольших точках — это моргнувшее электричество, после которого роутер поднимается три минуты.
- Видимость: второй роутер на том же кабеле. Кабель один, провайдер один, точка отказа одна. Такой резерв проверяется единственным способом — выдернуть кабель, и он этого не переживает.
- Видимость: вторая SIM того же оператора. Базовая станция общая, авария общая. Это удобно для балансировки нагрузки и бесполезно как резерв.
- Половинчатая мера: Wi-Fi с телефона кассира. Спасает разово, но зависит от чужого устройства, чужого баланса и доброй воли конкретного человека. Регламентом это назвать нельзя. Подход к резервированию каналов в целом разобран в материале план Б для каналов связи.
Теперь деньги. Модельная точка: выручка 120 000 ₽ в день при двенадцатичасовой работе, доля позиций под разрешительным режимом в чеке — 55 %, офлайн-проверка на точке не настроена, товароучёт живёт в облаке. Сбои связи — шесть эпизодов в год по 2,5 часа. Цены на оборудование и связь — порядок величин на сентябрь 2026 года, сверяйте на дату закупки.
Расчёт намеренно осторожный: половина покупателей возвращается, а настроенный офлайн-модуль снимает часть этих потерь. Обнулить их он не может — остаются операции, которые локальная база не закрывает. Проверьте, что модуль на точке вообще настроен, прежде чем считать резерв ненужным.
Диаграмма из двух вертикальных столбцов в чертёжном стиле. Левый подписан «потери от сбоев за год»: высота соответствует 41 250 ₽, внутри пометка «15 часов × 2 750 ₽». Правый подписан «резервный канал»: два сегмента — «роутер с антенной, 12 000 ₽ разово» и «SIM второго оператора, 6 000 ₽ в год», итог 18 000 ₽, под ним пометка «со второго года — 6 000 ₽». Внизу строка вводных: «точка 120 000 ₽ в день, 12 часов работы, доля маркированных позиций 55 %». Приглушённая палитра, подписи по-русски.
Регламент кассиру: первые пять минут
Регламент помещается на одну страницу и лежит под стойкой, а не в общей папке на сервере. Проверять его надо не на планёрке, а прогоном: выдернуть кабель на закрытой кассе и попросить кассира сделать всё по пунктам.
- 1Минута первая: опознать сбой
Кассир должен отличать три вещи: связь пропала, система ответила отказом по товару, сломалось оборудование. Признак каждой прописан заранее одной строкой — теми словами, которые видны на экране, а не терминами из документации.
- 2Минута вторая: продолжить обслуживание
Если касса перешла на локальную проверку — работаем дальше и обслуживаем очередь. Кассир при этом знает, что режим офлайн, и видит признак этого на экране. Остановка очереди «на всякий случай» стоит дороже любого разбора.
- 3Минута третья: отложить то, что не проходит
Позиция, которая не проходит даже в офлайн-режиме, откладывается в отдельное место с запиской: дата, время, номер смены, что за товар. Не пробивается как немаркированная, не заменяется другой упаковкой, не откладывается «в уме».
- 4Минута четвёртая: позвать по списку
В регламенте одна строка: кому звонить первым и что сказать. Первая фраза сформулирована заранее — «связь на кассе номер такой-то пропала в такое-то время, касса работает по локальной базе». Этого достаточно, чтобы на той стороне начали работать, а не уточнять.
- 5Минута пятая: записать для разбора
Время начала сбоя, время восстановления, сколько позиций отложено. Три строки в тетради у кассы дают потом больше, чем час чтения журналов. Как писать такие регламенты, чтобы им пользовались, разобрано в материале как описать регламент процесса.
Регламент, который ни разу не проверяли, при первом сбое не работает: кассир читает его впервые, при очереди. Раз в квартал перед открытием выдерните основной кабель и пройдите пять пунктов целиком — пятнадцать минут учений стоят дешевле одного сорванного часа в пятницу вечером.
Как подготовить точку с плохой связью заранее
Подготовка делается не в момент сбоя, а до него, и почти целиком состоит из проверок, а не из покупок. Порядок такой:
- 1Получить у поставщика кассового ПО письменный ответ: поддерживается ли работа по локальной базе, как она обновляется и что происходит при длительном отсутствии связи.
- 2Убедиться, что локальная проверка на точке действительно включена, а не значится включённой в описании продукта.
- 3Проверить весь цикл на закрытой кассе: выдернуть кабель, провести продажу до печати чека, подключить кабель обратно и посмотреть результат по каждой ушедшей операции.
- 4Поставить независимый резервный канал с автоматическим переключением и питание на связное оборудование.
- 5Повторить проверку с резервом: отключить основной канал и убедиться, что переключение произошло само и в разумное время.
- 6Написать регламент на одну страницу, положить под стойку и прогнать с каждым кассиром лично.
- 7Поставить учения в календарь раз в квартал — иначе их не будет. Полный порядок настройки всей цепочки узлов разобран в материале настройка разрешительного режима: касса, ОФД, товароучёт.
Когда резервирование не окупается
Честная часть: резерв нужен не всем, и продавать его всем подряд некорректно. Три ситуации, в которых деньги лучше потратить на другое.
- Маленькая выручка и стабильная связь. Если точка делает 25 000 ₽ в день, а сбой случается раз в год на час, годовые потери в той же модели — около 570 ₽: 2 083 ₽ выручки в час, 55 % под режимом, половина покупателей возвращается. Резерв за 18 000 ₽ здесь не окупится никогда, и правильный ответ — регламент кассиру и работающий офлайн-режим, а не второй канал.
- Ассортимент почти не затронут режимом. Когда под проверку попадает пара позиций из сотни, сбой связи почти не влияет на выручку. Проверьте долю таких позиций в чеке по выгрузке за месяц, прежде чем закладывать бюджет.
- Связь резервирована на уровне здания. В торговом центре или бизнес-центре канал часто уже дублирован арендодателем. Уточните это до закупки: платить второй раз за тот же резерв смысла нет.
- Резерв вместо офлайн-режима. Самая дорогая подмена: покупают второй канал, не проверив, работает ли локальная проверка. Канал тоже падает, и тогда точка остаётся вообще без вариантов. Сначала офлайн-модуль, потом резервный канал.
Резервный канал, который ни разу не включали, резервным не является. Это строка расхода с надеждой вместо проверки.
