При разработке интеграций с торговым оборудованием или настройке учетных систем часто возникает необходимость проверить пробитие чеков на реальном «железе». Однако фискализация настоящей кассы влечет за собой юридические последствия и передачу данных в налоговую. Разберем подробно, как правильно организовать стенд для тестов онлайн-кассы, какое оборудование использовать и на какие технические особенности обратить внимание.
Рассмотрим вариант покупки обычной боевой кассы в комплекте с реальным фискальным накопителем (ФН). Если мы не будем ее фискализировать (регистрировать в ФНС), касса все равно позволит пробивать чеки.
В этом случае чековый принтер будет выводить бумажные чеки, но на них будет печататься надпись «Чек недействителен» (или аналогичное предупреждение нефискального режима). Этот способ подходит для базовой проверки того, как из программы отправляется команда на печать и как выглядит шаблон чека. Однако протестировать полноценную отправку данных в ОФД (Оператор Фискальных Данных) и проверить заполнение специфических тегов маркировки при таком подходе не получится.
Для того чтобы видеть, какие теги заполнены, а какие нет, и проверять отправку данных в тестовый контур ОФД, проанализируем использование специализированных тестовых накопителей:
МГМ ФН-1.2М, поддерживающие Формат Фискальных Документов ФФД 1.2.Подключается такой эмулятор (или МГМ) непосредственно в разъем ККТ вместо боевого ФН. В некоторых случаях для перепрошивки или принудительной очистки МГМ-ФН его подключают к ПК через адаптер TTL к последовательному порту.
Многие программисты для домашних тестов покупают самую бюджетную модель — АТОЛ 1Ф. Рассмотрим ее особенности, о которых нужно знать заранее:
ДТО 10.CR2032, которая отвечает за часы реального времени. Это означает, что касса не умеет сама сохранять текущую дату и время при отключении от сети.Если вы используете другие модели касс (например, «Штрих-М» или более дорогие АТОЛ), выясним несколько важных сервисных моментов.
При длительной эксплуатации (или хранении) на системной плате может сесть батарейка CR2032. В кассах это приводит к критическим ошибкам вида «Ошибка ОЗУ», «Сбой часов» или «Нефискальный режим». После замены элемента питания потребуется через сервисную утилиту восстановить корректное время и выполнить базовую инициализацию.
Если вам нужно очистить кассу после тестов (сделать технологическое обнуление), то в большинстве моделей АТОЛ и Эвотор это делается программно (или комбинацией кнопок) без вскрытия пломб корпуса. А вот в моделях Штрих-М часто требуется физическое вмешательство: нужно вскрыть корпус, найти специальный джампер (перемычку) рядом с батарейкой, снять его, включить кассу и выполнить обнуление через утилиту «Тест драйвера ФР».
Посмотрим на ситуацию, если вы купили кассу как физическое лицо для экспериментов, а затем хотите ее продать.
Продажа физическим лицом юридическому лицу не запрещена и оформляется обычным договором купли-продажи. Если вы использовали кассу только с эмулятором (МГМ/ЭФН), то она остается абсолютно «чистой». Достаточно вынуть тестовый макет, вставить «девственно чистый» боевой ФН, и касса готова к фискализации новым владельцем.
Если же вы ради эксперимента фискализировали кассу с настоящим ФН (например, сгенерировав фейковый ИНН), то для перепродажи потребуется обязательная замена ФН на новый, так как старый накопитель привязывается к регистрационным данным навсегда. Именно поэтому использование эмуляторов для разработчиков — это наиболее экономически выгодный и технически правильный путь.
Если покупка оборудования кажется нецелесообразной, разберем альтернативный путь. Сегодня существуют программные эмуляторы касс для платформы 1С, а также «облачные песочницы» от ОФД и производителей. В них вы можете отправлять запросы и тестировать печать и передачу тегов маркировки полностью программно, эмулируя работу оборудования без реальных проводов, ФН и чековой ленты.