Пока всё в порядке, в шапке экрана «Заказы» ничего лишнего нет. Значок появляется, только когда со связью что-то не так:
Во всех случаях касса переподключается сама: проверять связь вручную не нужно. На телефоне вместо слов показывается только значок — нажмите на него, чтобы прочитать подсказку.
Когда в заведении пропадает интернет, касса может продолжать работу: принимать заказы, править их, отмечать подачу и рассчитывать столы. Всё это копится на компьютере кассы и уходит на сервер само, когда связь вернётся, — каждое действие ровно один раз.
У нового заведения режим включён сразу. Включить или выключить его можно в Настройки → Касса и печать, часть «Без интернета», переключателем «Кассы работают без интернета». Там же видно каждую кассу зала: готова ли она работать без интернета и что на ней сделать, если нет.
Дальше касса сама проверяет, что может хранить заказы надёжно. Работа без интернета включается только там, где выполнено всё:
Если хоть одно условие не выполнено, касса работает как раньше: без связи она показывает «Нет связи», и новые заказы ждут возврата интернета.
Проверить кассу можно на ней самой: значок принтера в правом нижнем углу открывает панель «Касса» — связь, работа без интернета, Qreaty Print, чеки, кухня и ящик, у каждой строки — кнопка, которая это исправит. Точка на значке означает, что что-то стоит поправить.
{warning} На время обрыва договоритесь: один стол — одна касса. Кассы не видят друг друга без интернета, и два кассира могут взять деньги за один и тот же стол. Qreaty это заметит при возврате связи (если что-то изменилось), но проще не допускать.
Без интернета работает не человек, а устройство: касса или планшет, который стоит в зале. Его и помечают как «устройство зала».
Как Qreaty понимает, что у заведения пропала связь: если в заведении есть агент печати, — по нему: он стоит на компьютере в зале и теряет связь вместе с интернетом заведения. Если агента нет — по устройствам зала. Нет связи 3 минуты в часы работы — заведение считается «без связи». Телефон на мобильном интернете не может «спрятать» обрыв, если агент есть. Тогда официантам на мобильном интернете показывается «Касса без связи», а гостям — просьба заказать у официанта. Личные телефоны без пометки не считаются: они могут быть где угодно.
Работает — на устройстве зала, когда режим включён:
Только при связи:
Цены досланных заказов считает сервер. Если цена блюда поменялась, пока касса была без связи, в счёте будет новая цена, а разница уйдёт менеджеру на сверку — заказ при этом не отклоняется.
Всё, что касса сделала без связи, сразу видно на экране — стол занят, заказ на доске, позиция снята. На карточке такого заказа стоит пометка «не отправлено», в шапке — «Нет связи · 3 ждут», у официанта — «3 ждут отправки».
Когда связь возвращается, касса отправляет накопленное сама, по одному действию и в том порядке, в каком их делали. Сервер узнаёт повторы, поэтому ни заказ, ни расчёт не задвоятся, даже если касса отправит что-то дважды. После этого другие кассы, кухня и официанты увидят изменения.
На iPhone приложение отправляет накопленное, только когда открыто: iOS не даёт свёрнутым приложениям работать. Если вы свернули его с неотправленными действиями, придёт напоминание (когда уведомления разрешены) — откройте приложение, когда появится связь.
Внизу экрана «Заказы» появляется лист «Требует внимания», когда касса не может решить что-то сама. На каждой карточке одно главное действие.
| Карточка | Что случилось | Что делать |
|---|---|---|
| Блюда сняли с продажи, пока не было связи — заказ не принят | Пока касса была без связи, блюдо скрыли или поставили в стоп-лист. | «Отправить без снятых» — заказ уйдёт без этих блюд, кухне напечатается тикет отмены, если тикет уже выходил. «Провести как есть» — если тикет уже на кухне и блюдо всё равно готовят; кнопка есть у сотрудника с правом «Расчёт счетов». «Отменить раунд» — заказ не нужен. |
| Не принято сервером | Сервер отказал по существу, причина написана на карточке. | «Повторить», если причина устранена, или «Убрать». |
| Не отправлено: не принято действие, от которого оно зависит | Например, дозаказ к заказу, который сервер не принял. | Сначала решите карточку главного действия, потом «Повторить» — или «Убрать». |
| Сервер раз за разом не может это принять | Ошибка на сервере. | Ничего: касса повторит сама, «Повторить» — попробовать сразу. Если держится долго — напишите в поддержку. |
| N действий другого сотрудника ждут его входа | На этом устройстве остались неотправленные действия другого человека. | Они уйдут, когда он снова войдёт. Или «Передать очередь мне». |
| Тикет не напечатан вовремя | Тикет не вышел за 3 минуты после заказа: действие дошло до сервера поздно, принтер или агент не работали. Сам он больше не напечатается. | «Напечатать сейчас» или «Кухня уже знает», если заказ передали на словах. |
| Чек не напечатан вовремя | Чек или пре-чек не вышел за 3 минуты. Сам он больше не напечатается. | «Напечатать сейчас», если гость ещё ждёт, или «Не нужно». |
| Ещё … на столе открыто | Стол рассчитали без связи, но на нём есть заказы, которых касса не видела: с другого устройства или гостевые. | Проверьте стол — остаток рассчитайте как обычно. |
| Долго без связи | Касса без связи больше 4 часов, начался новый рабочий день или неотправленному скоро 30 дней. | «Понятно», и см. Долго без связи. |
Если тикет отмены напечатать не удалось, карточка скажет об этом — сообщите кухне на словах, что снять.
Пока касса без связи, остальной мир не стоит на месте. Вот что бывает и как Qreaty это разбирает, когда связь возвращается:
Сверка не мешает работе: кассир видит только то, что требует действия сейчас, а остальное сервер записывает для менеджера. Отдельного экрана сверки в приложении пока нет — если нужно разобрать случай, напишите в поддержку.
Номер заказа без интернета выдаёт сама касса, ждать сервер не нужно. Он выглядит как «1-42»: «1» — номер кассы в заведении, «42» — порядковый номер заказа этой кассы за день; в полночь по часам заведения счёт начинается заново. Тот же номер печатается на тикете и чеке и показывается на доске «Заказы», на кухонном экране, в архиве и при перепечатке. Обычного номера заведения за день («№ 12», номер заказа) такой заказ не получает — у него один номер, кассовый.
Номер кассы выдаётся, когда касса впервые выходит на связь, и больше не меняется. Если такой номер в этот день уже был, к нему добавляется «.2». Заказ, у которого номера ещё нет, показывается с прочерком.
Пока на кассе есть неотправленные действия, выйти из аккаунта нельзя: после выхода их некому будет отправить. Касса покажет «Есть неотправленные действия» со списком. Нажмите «Остаться» и дождитесь связи — число «ждут» дойдёт до нуля, и выйти будет можно.
«Отбросить неотправленное и выйти» — крайний случай, например касса уходит в ремонт. Отбросить может только менеджер: у кассира и официанта этой кнопки нет, им остаётся дождаться связи или позвать менеджера. Список отброшенного уходит в сверку (без связи он хранится на устройстве и уйдёт, когда она появится). Отброшенные заказы и расчёты на сервер не попадут.
Сессия истекла, а очередь не пуста. Касса не выходит и не стирает данные: наверху появляется плашка «Сессия истекла», отправка встаёт на паузу, а работа продолжается. На личном аккаунте войдите тем же аккаунтом прямо в плашке; на общей кассе нажмите «Переподключить по QR» — менеджер сканирует код своим телефоном. После входа неотправленное уйдёт само.
{warning} Не выходите из аккаунта и не очищайте данные сайта, пока касса без связи: неотправленные заказы и расчёты хранятся только на этом компьютере (данные сайта).
Неотправленные действия принадлежат тому, кто их сделал. Если сотрудник ушёл, не дождавшись связи, а на устройстве теперь работает другой, касса покажет карточку «N действий другого сотрудника ждут его входа».
Передать очередь может только менеджер: он нажимает «Передать очередь мне», и действия уходят от его имени, с пометкой, чьи они были. Передать можно только то, что первый сотрудник и сам имел право сделать. Кнопка работает при связи. «Отбросить» чужую очередь тоже может только менеджер — тогда список уйдёт в сверку, как при выходе. Кассир и официант этих кнопок не видят: очередь ждёт, пока её хозяин войдёт снова.
Касса работает без связи сколько угодно, но напоминает о себе:
Если связи нет долго, подключите кассу к любому интернету — хотя бы к телефону, раздающему Wi-Fi. Накопленное уйдёт за минуту.
Если в заведении включены заказы без интернета и Qreaty видит, что заведение без связи, гостевое QR-меню продолжает открываться, но заказать через него нельзя: гость видит «Заказ со стола временно недоступен — закажите у официанта или подойдите к стойке». Кнопки «Позвать официанта» и «Счёт» тоже просят подойти к стойке — касса без связи их не услышит.
Если гость в это время отменяет свой ещё не принятый заказ, заказ не отменяется сам: касса могла уже принять его без связи и отдать на кухню. Гость видит «Заказ мог уже готовиться — мы попросили персонал его отменить», а персонал — вызов «Гость просит отменить заказ №…».
Как только устройство зала или агент печати снова выходят на связь, гостевой заказ работает как обычно.
Самый надёжный способ пережить обрыв — не заметить его. Недорогой 4G-роутер (или старый телефон в режиме модема) как запасной канал для кассы и компьютера с принтерами держит кассу, кухонный принтер и гостевые заказы на связи, даже когда основной провайдер лёг. Многие роутеры переключаются на запасной канал сами.
Касса хранит последние данные заведения у себя: меню, столы, открытые заказы и счета, ваши права. Если перезагрузить браузер или компьютер, пока интернета нет, касса откроется на экране «Заказы» с этими данными, а значок покажет «Нет связи». Неотправленные действия при этом сохраняются и уйдут, когда связь вернётся. Как только сервер ответит, данные обновятся сами.
Если касса ни разу не открывалась на этом компьютере (или данные сайта стёрты), сохранённых данных нет — тогда вы увидите экран «Нет связи с сервером», и касса откроется сама, когда связь вернётся.
{info} Сохранённые данные принадлежат тому, кто вошёл. При выходе из аккаунта они стираются, и следующий человек за компьютером их не увидит. Поэтому с неотправленными действиями касса выйти не даёт.
Иногда заказ доходит до сервера, а ответ теряется по дороге. Касса сама повторяет отправку, и сервер узнаёт повтор: раунд не задвоится, позиция не снимется дважды, закрытый счёт не закроется второй раз.
Без режима заказов без интернета касса, не дождавшись ответа, скажет, что не смогла отправить. Нажмите кнопку ещё раз, когда связь вернётся: если первая попытка всё-таки дошла, касса покажет результат, а не создаст копию. Так работает даже после перезагрузки страницы. С включённым режимом нажимать ещё раз не нужно — касса держит действие в очереди и отправит его сама.
Аккаунт кассы работает на одном компьютере. Если открыть его на втором, пока первый на связи, второй покажет «Касса открыта на другом компьютере» и предложит «Перенести на этот компьютер». После переноса первый компьютер покажет «Касса перенесена на другой компьютер» — оттуда её можно вернуть так же.
Когда менеджер заново подключает кассу через QR, подключённый компьютер становится её компьютером, а Qreaty заранее предупреждает, если касса сейчас открыта где-то ещё.
Сохранённые данные лежат в браузере. Если очистить историю вместе с данными сайтов, касса забудет их и без сети откроется только на экране «Нет связи». Без интернета это ещё и потеря работы: заказы и расчёты, которые касса не успела отправить, хранятся только там и пропадут вместе с данными. Браузер сам их не сотрёт: касса просит его хранить данные постоянно.