Офлайн
Модуль решает одну задачу: торговать, когда связи нет. Обычная касса при каждом действии ходит на сервер — за остатком, ценой, скидкой. Автономная касса так не может: интернет в сельском магазине пропал, а очередь стоит.
Решение — разделить роли. Терминал держит локальную копию справочников и оформляет чеки сам; сервер, когда связь появилась, забирает эти чеки и превращает их в полноценные счета-фактуры с движением склада и проводками. Касса не ведёт учёта — она фиксирует факт продажи, а учёт делают уже на сервере.
Маршрут: от автономного чека до документа
Настройки офлайн-синхронизации (общие правила обмена)
↓
Офлайн-терминал (рабочее место) + офлайн-серия номеров (свой диапазон чеков)
↓
Торговля без связи: чек = товары, количество, цена, наличные
↓
Синхронизация: ← справочники на кассу · чеки на сервер →
↓
Офлайн-продажи → счета-фактуры: склад, проводки, выручка
↓
Журнал офлайн-синхронизации: когда, какой терминал, сколько записей
- Настройки офлайн-синхронизации — что сервер подставляет в чеки, в которых чего-то не хватает: клиента и условия оплаты по умолчанию. Адрес сервера, интервал и таймаут касса отсюда сейчас не берёт — их задают в конфигурации кассового приложения.
- Офлайн-терминал — карточка автономного рабочего места.
- Офлайн-серия номеров — собственный диапазон номеров чеков для терминала, чтобы не столкнуться с сервером и соседними кассами.
- Офлайн-продажи — журнал чеков, пришедших с касс. Из них сервер и делает документы учёта.
- Журнал офлайн-синхронизации — протокол обмена: когда, какой терминал, по какому регистру, в какую сторону и сколько записей.
Что важно понимать
Чек с кассы ничего не двигает. Ни склада, ни бухгалтерии — это просто факт продажи. Всё остальное делает сервер при синхронизации. Поэтому «продажи есть в кассе, но их нет в отчётах» почти всегда означает, что обмен не прошёл, а не что чек потерялся.
Номер чека — не общий счётчик, а диапазон. Каждому терминалу выдают свой, и в нём больше никто не работает. Это единственный способ нумеровать документы без связи и не получить двух чеков с одинаковым номером.
Журнал синхронизации — первое место, куда смотреть. Он показывает, был ли обмен вообще, в какую сторону и сколько записей прошло. Записи ведёт сервер, руками туда ничего не вносят.
Справочники едут на кассу, чеки — на сервер. Обмен двусторонний: что касса получает и что отдаёт, задаёт вкладка «Регистры синхронизации» карточки терминала. Обычно товары и контакты едут на кассу, продажи — на сервер; счета-фактуры сервер делает только из офлайн-продаж.
Обмен включают на сервере, а не в интерфейсе. Пока в конфигурации сервера не включена офлайн-синхронизация (OFFLINE_SYNC_ENABLED), касса до него не достучится — на каждый запрос обмена сервер отвечает кодом 404, и ни один чек не придёт, хотя пункты меню модуля на месте.
Офлайн-касса — отдельное приложение, а не режим экрана кассы. На кассовом компьютере стоит офлайн-клиент ERPJS со своей базой, и продажу оформляют записью офлайн-продажи — без кнопок и смен POS и без фискализации. Модуль добавляет автономность и правила обмена.
С чего начать в новой базе
- Настройки офлайн-синхронизации — клиент и условия оплаты по умолчанию.
- Офлайн-терминалы — по карточке на каждое автономное рабочее место.
- Офлайн-серии номеров — диапазон каждому терминалу, с запасом.
- Подключить кассу и проверить первый обмен в журнале.
Частые задачи
| Нужно | Куда идти |
|---|---|
| добавить автономную кассу | Офлайн-терминалы |
| выдать кассе номера чеков | Офлайн-серии номеров |
| посмотреть продажи автономных касс | Офлайн-продажи |
| понять, почему продажи не дошли | Журнал офлайн-синхронизации |
| изменить правила обмена | Настройки офлайн-синхронизации |
Все объекты модуля
Документы: офлайн-продажи
Справочники: офлайн-терминалы · офлайн-серии номеров
Журналы: журнал офлайн-синхронизации
Настройки: настройки офлайн-синхронизации
Куда смотреть дальше
- POS — обычная касса, со связью и полным набором возможностей.
- Расчёты с клиентами — счета-фактуры, в которые превращаются офлайн-чеки.
- Чекбокс · Вчасно.Каса — фискализация продаж.