Сегодня день толстой полярной лисички розницы — ошибка касс Штрих-М по всей стране
А я было думал, что больше никогда не увижу ком-9 нуль-модем
В час ночи по Москве во Владивостоке отказали кассы. Не только у нас, а по всему городу. Похоже, все модели Штрих-М, которые стоят много у кого в сетевой рознице. В два часа ночи по Москве бага перепрыгнула в соседний часовой пояс. В три часа ночи — в следующий. К утру накрыло и Москву.
Штрих-М стоят, например, по данным РБК, в Пятёрочках, в Магнитах, в Магнолии, на заправках Газпрома и Роснефти. И у нас.
Работать без кассы нельзя. Это нарушение закона. Та же Магнолия около нашего офиса вообще сегодня, как мы увидели, закрылась. Некоторые небольшие сети по всей стране тоже не открывали магазины.
Что произошло?
Штрих-М поймали ошибку, про которую производитель, похоже, знал заранее, либо выпустил очень-очень оперативиный хотфикс. По крайней мере, в 9 утра по Москве, прошивка уже была доступна с инструкцией на их форуме.
Вот ветка с обсуждением.
На РБК в новости есть комментарий, что если на кассе было включено автообноовление, то сбоя не было. Автообновление по умолчанию выключено на уровне заводского конфига.
Состояние «после активного отсутствия бумаги», касса постоянно уходит в ребут при попытке распечатать любой документ, при попытке сбросить состояние и еще после некоторых команд.
По инструкции с форума Штриха (который, кстати, довольно быстро упал) можно было либо очень просто и оперативно поправить ошибку, если смена ещё не была открыта — либо же долго и мучительно, если смену успели открыть.
Мы успели открыть все смены кроме одной — на тестовой кассе в офисе.
Что всё это значит?
Для того, чтобы выдать покупателю чек, надо три компонента:
- Интерфейс для создания этого чека (например, можно ввести позиции вручную или получить их из какой-нибудь софтины типа 1С с компьютера).
- Печатающий модуль (он отдаст сам чек)
- И регистратор (раньше это была ЭКЛЗ, а теперь онлайн-отправлялка — штука, которая записывает все пробитые чеки для налоговой).
Второй и третий компоненты обычно совмещены в модуль, который называется «касса» и подключены к компьютеру, где и стоит интерфейс для набивания товаров в чек. Этот интерфейс обычно сопряжён с учётом товара, но это не очень важно для нашей истории.
Важно то, что чеки нельзя выдать, потому что прошивка кассы дала сбой.
Покупатели приходят, а мы не можем выдать чек.
Невыдача одного чека — это штраф несколько десятков тысяч рублей. Самый страшный залёт, который только бывает в рознице после отравленных продуктов питания.
Это значило, что можно было смело закрывать магазины до устранения проблемы. Именно поэтому этот день П получил такое поэтичное название.
Для нас 20 декабря по продажам — как неделя в июне. Для многих тоже.
Что делать?
Закрываться. Затем перепрошивать кассы.
У Штрихов есть возможность прошиться онлайн — на части касс мы подключались к рабочим местам кассиров удалённо, клали файлы новой прошивки в их софт, и касса это хавала. Перезагружалась и запускалась с новой сменой, можно было работать.
К сожалению, работало это только на тех интерфейсах, где кабель был COM 9pin — COM 9pin. На всех остальных кассах подключения к компьютерам просто не было. Потому что довольно тяжело найти компьютер с COM 25pin, например. У меня в Астрахани лежит, это мой первый 386SX с тактовой частотой 12–20 Мегагерц. На нём идёт «Golden Axe» на двоих, и ещё там можно печатать в Лексиконе и передавать данные по нуль-модему через USB-конвертер (чья вычислительная мощность больше процессора, собственно, компьютера, похоже) на ноутбук.
У нас такой роскоши не было.
Альтернатива — взять флешку с проишивкой и вставить её внутрь кассы. Мы сделали следующее:
- Наши инженеры поехали в самые горячие магазины (где больше всего оборот) и стали поднимать кассы там. Например, наши точки на Таганской и Курской (лучшая парковка и магазин в здании метро) поднялись через 40 минут после выявления бага. Мега Белая Дача — через полтора часа и так далее.
- Старшие точек повезли часть касс в офис — чтобы мы прошили их прямо на месте.
В это время Федеральная налоговая служба сделала невероятно адекватную вещь. Вообще, государство меня в последние годы жутко удивляет своей чёткостью решения вопросов (вот другой пример, не имеющий отношения к нашей истории). Так вот, ФНС сказала, что можно выдавать товар без чека, но на следующий день на всё проданное надо будет пробить чеки коррекции.
Вот ссылка. Вот цитата:
«С 01:00 20 декабря 2017 года в работе контрольно-кассовой техники производителей АО «ШТРИХ-М», ООО «РР-Электро», ООО «Тринити» и ООО «НТЦ «Измеритель» произошел массовый технический сбой. В связи с этим ФНС России напоминает, что в соответствии с пунктом 4 статьи 4.3 Федерального закона от 22.05.2003 № 54-ФЗ при корректировке более ранних расчетов формируется кассовый чек коррекции (бланк строгой отчетности коррекции).
Таким образом, в случае технического сбоя после восстановления работы кассы пользователи обязаны сформировать кассовый чек коррекции с общей суммой неотраженной выручки.
ФНС России обращает внимание, что в таких обстоятельствах пользователи ККТ не привлекаются к административной ответственности, так как в соответствии частями 1 и 4 статьи 1.5 КоАП РФ вины пользователей за неприменение контрольно-кассовой техники, в том числе при реализации алкоголя, нет.»
Чеки коррекции — это такие штуки, которые позволяют проапдейтить уже выданные чеки с некоторым бухгалтерским геморроем, но зато хоть как-то. То есть не тонна бумажек и объяснительных на каждый чек, а сравнительно серийная процедура.
И — главное, можно продавать товар.
Некоторые кассы вообще не имеют слота для флешки. Например, Элвес РР Ф, который сегодня, похоже, не прошёл тестовое внедрение в нашей сети. Только искать ком-разъём на компьютере.
Вот так это выглядит. Касса:
Срываем с неё всё лишнее:
Дорываемся до платы:
Вот сюда ставим флешку:
Может пригодиться вот такой разветвитель — потому что слоты разные:
Выжимка:
Решение проблемы — обновиться на прошивку, что выпустили сегодня. Прошивка от 20.12.2017
Прошивку можно скачать на официальном сайте — www.shtrih-m.ru
При удаленном обновлении:
1. Подключить кассу через COM-шнур
2. Подключиться удалённо к рабочему месту кассира
3. Установить ПО Tera Term и скормить ей прошику.
4. Next-next-читай инструкцию-done и немного типовых настроек.На месте: сделать SD-карту с новой прошивкой, приехать, разобрать кассу, вытащить SD-карту, вставить новую такую же со включённым флагом автообноления, подключить кассу к рабочему месту кассира (чтобы она увидела аплинк до большой сети), обновиться, сделать технологическое обнуление, облегчённо выматериться, поехать в следующий магазин. Флешка уезжает с вами, в кассу в процессе возвращается старая.
Следующая проблема — если касса не работает, то терминалы карт не будут работать тоже. В том случае, если они интегрированы. Это четвёртый компонент кассы. Карина, руководитель розницы и бывшая глава нашего ИТ-департамента, параноик. Она подозревала, что рано или поздно каждая розница сталкивается с отказом касс. Поэтому на всех точках кроме двух было по одному неинтегрированному терминалу в запасе. Следствие — мы могли принимать карты.
Вечер
40% касс мы прошили дистанционно. К вечеру мы восстановили большинство магазинов. Одну из касс, например, старший точки отвёз домой к своей машине, там подключился к кассе шнурком, дал нашей поддержке доступ по RDP до своей машины — и прошился на месте. Одну из касс везли через пробки 2 часа 40 минут только до офиса от магазина за пределами метро.
Думаю, сегодня, 20 декабря 2017 года, точно войдёт в историю розницы в России. Потому что когда нужно будет обосновать какое-то решение по disaster recovery, будут вспоминать день, когда накрылись кассы.