При подготовке розничного магазина к запуску часто возникает необходимость протестировать всю цепочку продаж в товароучетной системе без фактической отправки данных в налоговую (ФНС). Мы подключаем кассовый аппарат, настраиваем драйверы, но при первой попытке пробить чек из документа «Реализация товаров и услуг» или «Чек ККМ» сталкиваемся с блокирующей ошибкой: «ККТ не зарегистрирована с указанной СНО».
В этой статье мы подробно разберем природу этой ошибки, выясним, почему она возникает на нефискализированных аппаратах АТОЛ, и рассмотрим сразу четыре практических метода решения проблемы — от простых настроек в 1С до «секретных» манипуляций в драйвере кассы.
Когда кассовый аппарат АТОЛ (например, АТОЛ 30Ф) находится в нефискальном (тестовом) режиме, его внутренняя память чиста. В ней не прописаны ни ИНН организации, ни регистрационный номер ККТ, ни — самое главное — доступные системы налогообложения (СНО).
В то же время, отправляя команду на печать чека, 1С формирует XML-пакет, в котором строго прописан код налогообложения (например, Общая, Упрощенная, Патент и т.д.), полученный из настроек программы. Драйвер ККТ сравнивает пришедший из 1С код СНО со списком разрешенных СНО в памяти кассы. Не найдя совпадений (так как список в кассе пуст), драйвер прерывает операцию и возвращает ошибку.
Рассмотрим детально, как мы можем обойти это ограничение и успешно провести отладку системы.
В конфигурации 1С:Управление торговлей 10.3 определение СНО для чека строится по иерархическому принципу. Часто ошибка возникает из-за банального несовпадения настроек склада и учетной политики организации. Давайте проанализируем настройки программы по шагам:
Если параметры в 1С настроены корректно, переходим к настройке самой кассы.
Существует распространенное заблуждение, что любые изменения в разделе «Регистрация ККТ» драйвера АТОЛ приводят к фискализации кассы или мгновенной отправке данных в налоговую. Это не так, пока в кассу не установлен и не активирован фискальный накопитель (ФН).
Мы можем использовать специальный обходной путь (лайфхак), чтобы записать нужную СНО в память ККТ через 10-й драйвер АТОЛ:
Важный нюанс: В процессе записи драйвер выдаст предупреждение или ошибку вида [148] Ошибка программирования реквизита 1048, а кассовый аппарат распечатает чек с ошибкой «НЕ ЗАДАН РЕКВИЗИТ 1048. ОПЕРАЦИЯ ОТМЕНЕНА».
Не пугайтесь! Эту ошибку мы просто игнорируем. Несмотря на то, что общий процесс регистрации прервался из-за отсутствия ИНН или имени пользователя (реквизит 1048), выбранные нами СНО успешно запишутся во внутреннюю память аппарата. После этого закроем тест драйвера, вернемся в 1С и повторим попытку пробития чека — ошибка «ККТ не зарегистрирована с указанной СНО» исчезнет.
Если мы являемся разработчиками и нам нужно временно обойти проверку регистрационных данных кассы непосредственно в коде конфигурации (чтобы не трогать настройки железной кассы), мы можем внести временные изменения в модули интеграции с подключаемым оборудованием.
Рассмотрим пример подмены параметров регистрации ККТ. Нам необходимо найти общий модуль, отвечающий за взаимодействие с универсальным драйвером (например, ПодключаемоеОборудованиеУниверсальныйДрайверКлиент или специализированную обработку обслуживания ККТ) и вставить условие отладки:
// В процедуре подготовки параметров подключения ККТ
ПараметрыРегистрации = ПараметрыПодключения.ПараметрыРегистрации;
Если ОтладкаККТ Тогда
// Подменяем реальные параметры ККТ на тестовые значения
РегистрационныйНомерККТ = "00000000000";
ЗаводскойНомерФН = "0000000001";
НовыйФормат = ИСТИНА;
ВерсияККТ = "1.0.5";
КонецЕсли;
Однако помните, что простого изменения этих переменных может быть недостаточно, если метод ОбъектДрайвера.СформироватьЧек(...) возвращает значение Ложь. Драйвер АТОЛ на аппаратном уровне все равно валидирует переданную СНО. Поэтому данный метод лучше комбинировать с использованием эмулятора.
Для полноценного тестирования логики работы 1С:Управление торговлей 10.3 (проверка скидок, ставок НДС, правильности расчета итогов и распределения оплат) физическая касса АТОЛ вообще не требуется. Более того, использование реального аппарата вхолостую тратит ресурс термоголовки и отрезчика.
Мы рекомендуем настроить встроенный эмулятор:
Эмулятор мгновенно обрабатывает запросы от 1С, выводит макет чека на экран компьютера и позволяет отладить весь процесс продажи без аппаратных ошибок драйвера ККТ.
Используя предложенные методы, мы сможем быстро подготовить систему к работе, проверить корректность вывода всех реквизитов на тестовых чеках и избежать неприятных задержек при финальной фискализации кассы в ФНС.