Как исправить ошибку "Работа с НДС 20% и НДС 20/120 недоступна без введенной лицензии №3" при подключении ККТ Атол к 1С?

Программист 1С v8.3 (Управляемые формы) Налоговый учет Торговля и дистрибуция
← На главную

Добрый день, коллеги! Представьте ситуацию: вы приобрели новую контрольно-кассовую технику (ККТ), например, современную модель Атол 25Ф, предвкушая бесперебойную работу. Вы подключаете ее к вашей системе 1С, проводите первоначальные настройки, и вдруг, при тестировании или попытке пробить чек, сталкиваетесь с сообщением об ошибке: "Работа с НДС 20% и НДС 20/120 недоступна без введенной лицензии №3". Эта ситуация, как показал опыт наших коллег на форуме, может поставить в тупик, ведь сотрудники сервисного центра утверждают, что с кассой все в полном порядке. В этой статье мы подробно разберем, почему возникает эта ошибка, каковы ее истинные корни и какие шаги необходимо предпринять, чтобы эффективно ее устранить.

Мы вместе проанализируем изменения в лицензионной политике компании Атол, рассмотрим, как устаревшая логика в конфигурациях 1С может приводить к подобным сбоям, и предложим комплексные решения. Наша цель — не просто избавиться от ошибки, но и понять механизмы взаимодействия 1С и ККТ, чтобы в будущем вы могли самостоятельно диагностировать и предотвращать подобные проблемы. Будьте уверены, эта проблема решаема, и мы покажем вам, как это сделать.

Глубокий анализ причины ошибки: Почему 1С и ККТ "не понимают" друг друга

Сообщение "Работа с НДС 20% и НДС 20/120 недоступна без введенной лицензии №3" часто сбивает с толку, поскольку, как правило, современные ККТ Атол уже "из коробки" поддерживают необходимые ставки НДС, и никаких дополнительных лицензий для этого не требуется. Давайте разберем этот парадокс по шагам.

  1. Эволюция требований к ККТ и НДС 20%:

    Мы помним, что с 1 января 2019 года, в связи с изменением налогового законодательства, ставка НДС в России была повышена до 20%, а также появилась соответствующая расчетная ставка 20/120%. Это повлекло за собой необходимость адаптации всего кассового оборудования. Для того чтобы старые модели ККТ могли корректно печатать чеки с новыми ставками НДС и соответствовать обновленному формату фискальных данных (ФФД 1.05), требовалось обновление их прошивок. В тот период компания Атол действительно выпускала специальные лицензии, такие как "Лицензия №3", которая активировала функционал работы с НДС 20% в определенных прошивках. Это было частью переходного периода и гарантировало соблюдение законодательства.

  2. Рассмотрим изменения в лицензионной политике Атол:

    Со временем Атол, как и многие технологические компании, пересмотрел свою модель лицензирования и поддержки оборудования. От разовых лицензий на отдельные функции, компания перешла к модели годовых подписок на сервисы и обновления, известной как АТОЛ ИТС. В рамках этой новой политики, большинство базовых функций, включая поддержку актуальных ставок НДС, теперь интегрированы в стандартные прошивки ККТ и поставляются либо изначально, либо в рамках действующей подписки на обновления. Это означает, что если ваша ККТ Атол имеет свежую прошивку (часто это версии, начиная с 8502 и выше), то она уже содержит весь необходимый функционал для работы с НДС 20% без активации специфической "Лицензии №3". Сама касса, по сути, эту лицензию уже не запрашивает и не требует для своей работы. Это критически важное изменение, которое мы должны учитывать.

  3. Проанализируем устаревшую логику проверки в конфигурациях 1С:

    Теперь мы подходим к главной причине появления ошибки. Ваша конфигурация 1С, а точнее, модуль или обработка обслуживания подключаемого оборудования (ПО), которая отвечает за взаимодействие с ККТ Атол, содержит устаревший алгоритм проверки. Этот алгоритм был разработан в тот период, когда "Лицензия №3" была актуальна, и продолжает проверять ее наличие или корректность. Проблема возникает из-за того, что:

    • Драйвер ККТ Атол: Если драйвер, установленный на вашем компьютере, устарел, он может не "понимать" новую логику лицензирования кассы и передавать в 1С информацию, которая заставляет систему думать, что лицензия отсутствует.
    • Обработка обслуживания ПО в 1С: Эта внешняя или встроенная обработка (часто часть Библиотеки подключаемого оборудования - БПО, которая в свою очередь входит в Библиотеку стандартных подсистем - БСП) содержит конкретные методы и проверки. Если версия этой обработки устарела, она может продолжать запрашивать у ККТ информацию о "Лицензии №3" или интерпретировать ответы кассы таким образом, что система выдает ошибку. Касса, со своей стороны, не находит запрошенную лицензию, так как она ей больше не нужна или уже активирована по умолчанию в прошивке, и это приводит к рассогласованию.
    • Особенности самописных конфигураций: В самописных или значительно доработанных типовых конфигурациях 1С, где используются модули БСП и БПО, проблема может быть более выраженной. Программисты, разрабатывающие эти решения, могли жестко прописать проверки лицензий в коде, и эти проверки могли не обновляться вместе с изменениями в политике Атол. В таком случае, даже если обновить драйвер Атол, сама конфигурация 1С может продолжать "спотыкаться" на устаревшем алгоритме.

    Таким образом, ошибка является следствием конфликта между актуальной прошивкой ККТ, которая не требует старой лицензии, и устаревшей логикой 1С, которая ее все еще ищет. Касса исправна, но 1С не "понимает" ее нового состояния.

    Представим, что в коде 1С мы могли бы увидеть что-то подобное, что вызывает эту ошибку:

    
    // Фрагмент кода из устаревшей обработки обслуживания ККТ
    // Где-то в функции инициализации или проверки оборудования
    Если НЕ ПолучитьПараметрЛицензииККТ(НомерЛицензииНДС20) Тогда
        Сообщить("Работа с НДС 20% и НДС 20/120 недоступна без введенной лицензии №3");
        СтатусРаботы = "ОшибкаЛицензии";
        Возврат Ложь;
    КонецЕсли;
    
    // В более новой версии этот участок кода должен быть изменен или отсутствовать
    

    Именно такой устаревший вызов или проверка, не учитывающие текущее состояние прошивок Атол, и являются корнем проблемы, с которой мы столкнулись.

Комплексный подход к решению: Пошаговая инструкция по устранению ошибки

Теперь, когда мы точно знаем, почему возникает эта ошибка, давайте перейдем к конкретным действиям. Мы предлагаем действовать системно, чтобы гарантировать полное устранение проблемы и обеспечить стабильную работу вашей ККТ с 1С.

1. Приоритетное решение: Обновление драйверов, обработок и самой конфигурации 1С

Это наиболее эффективный и рекомендуемый способ, поскольку он позволяет синхронизировать все компоненты системы с актуальными требованиями и политиками. Разработчики 1С и Атол постоянно работают над совместимостью, и свежие версии ПО всегда включают необходимые исправления.

  1. Обновляем драйвер ККТ Атол до последней версии:

    Первым шагом нам необходимо убедиться, что на компьютере, к которому подключена ККТ, установлен самый актуальный драйвер Атол. Это ключевой элемент, который является "переводчиком" между 1С и физическим устройством. Загрузите последнюю версию драйвера с официального сайта Атол. После загрузки запустите установочный файл и следуйте инструкциям. Крайне важно полностью удалить предыдущую версию драйвера перед установкой новой, чтобы избежать конфликтов. Перезагрузка компьютера после установки также будет нелишней.

    Почему это важно: Новые версии драйверов включают обновленные библиотеки и механизмы взаимодействия с ККТ, которые уже учитывают изменения в лицензировании и прошивках Атол. Они корректно обрабатывают отсутствие "Лицензии №3" и передают в 1С правильные статусы.

  2. Актуализируем обработку обслуживания подключаемого оборудования в 1С:

    После обновления драйвера нам нужно позаботиться о стороне 1С. За взаимодействие с ККТ в 1С отвечает специальная обработка обслуживания. Она может быть либо встроенной в конфигурацию, либо представлять собой внешний файл (.epf).

    • Для типовых конфигураций 1С (например, 1С:Розница, 1С:Управление торговлей, 1С:Бухгалтерия, 1С:Управление нашей фирмой):

      В подавляющем большинстве случаев, для типовых конфигураций достаточно просто обновить вашу информационную базу 1С до последней актуальной версии. Разработчики 1С оперативно выпускают обновления, которые содержат актуальные версии обработок обслуживания ККТ, совместимые с новыми драйверами Атол и их политикой лицензирования. Обновление конфигурации автоматически заменит устаревшие модули на актуальные, исключив или корректно обработав запрос на "Лицензию №3". Это, по нашему опыту и сообщениям с форума, является самым простым и надежным решением.

      Процесс обновления обычно выглядит так:

      1. Создайте резервную копию вашей информационной базы.
      2. Обновите платформу 1С:Предприятие (если требуется).
      3. Запустите конфигуратор и выполните обновление конфигурации базы данных через "Конфигурация" -> "Поддержка" -> "Обновить конфигурацию".
    • Для нетиповых (доработанных) или самописных конфигураций 1С на базе БСП/БПО:

      Здесь ситуация несколько сложнее, поскольку простое обновление может быть невозможным из-за внесенных доработок. В этом случае нам потребуется более тонкая работа:

      • Обновление модулей БСП/БПО: Если ваша конфигурация использует Библиотеку стандартных подсистем (БСП) и Библиотеку подключаемого оборудования (БПО), попробуйте обновить только эти подсистемы до актуальных версий. Это можно сделать, объединив конфигурации. Будьте готовы к тому, что могут потребоваться адаптации вашего доработанного кода под изменения в БСП/БПО. Именно в этих библиотеках содержатся основные механизмы работы с ККТ и логика обработки драйверов.
      • Ручная замена обработки обслуживания: Как крайний вариант, вы можете попытаться найти актуальный файл внешней обработки обслуживания ККТ Атол (например, ATOLKKM_vX.epf) из последней версии БПО или типовой конфигурации 1С и вручную подключить его к вашей самописной системе. Однако это может повлечь за собой дополнительные сложности совместимости, если в вашей конфигурации есть специфические доработки, взаимодействующие с этой обработкой.
      • Модификация кода (для опытных программистов 1С): Если обновление БСП/БПО затруднено или невозможно, вы можете найти и модифицировать код, отвечающий за проверку лицензии №3 в вашей текущей обработке обслуживания ККТ. Нам нужно будет найти участок кода, который выполняет проверку наличия этой лицензии и либо закомментировать его, либо изменить логику таким образом, чтобы он не препятствовал работе. Это требует глубокого понимания структуры БПО и ответственной работы, так как некорректные изменения могут нарушить другие функции ККТ.

        Мы можем поискать фрагменты кода, похожие на приведенный выше, который явно проверяет "Лицензию №3". Например, функция или метод, который вызывается при инициализации ККТ и возвращает статус "недоступно", если лицензия не найдена. Возможно, вам встретятся вызовы функций драйвера ККТ, возвращающие коды ошибок, связанные с лицензированием. Ваша задача — убедиться, что эти проверки либо исключены в новых версиях обработок, либо вы их временно обходите в своем коде.

        
        // Пример поиска и возможной модификации в модуле обработки обслуживания ККТ
        // Предположим, что мы нашли функцию, которая проверяет лицензии
        Функция ПроверитьЛицензииККТ(ПараметрыПодключения)
        
            // ... какой-то код инициализации ...
        
            // Старая проверка лицензии НДС 20%
            // Если (ДрайверККТ.ПроверитьЛицензию("Лицензия_НДС_20_Процент") = Ложь) Тогда
            //     Сообщить("Лицензия НДС 20% не найдена. Работа невозможна.");
            //     Возврат Ложь;
            // КонецЕсли;
        
            // Новая логика: Если мы знаем, что касса поддерживает НДС 20% по умолчанию
            // и проблема только в 1С, мы можем временно отключить эту проверку
            // или убедиться, что драйверККТ возвращает корректный статус.
        
            // Или, если это внешняя обработка, можно подгрузить более новую версию,
            // где эта проверка уже не актуальна.
        
            Возврат Истина; // Если мы уверены, что касса исправна и поддерживает НДС 20%
        КонецФункции;
        

        Такой подход требует осторожности и тщательного тестирования.

2. Диагностика ККТ без 1С: используем "Тест драйвера ККТ Атол"

Прежде чем вмешиваться в код 1С, всегда полезно убедиться, что сама касса Атол работает исправно и способна обрабатывать НДС 20% вне зависимости от 1С. Для этого нам понадобится стандартная утилита "Тест драйвера ККТ Атол", которая устанавливается вместе с драйвером.

  1. Запускаем и подключаемся:

    Найдите в меню "Пуск" или в папке установки драйвера Атол программу "Тест драйвера ККТ Атол" и запустите ее. В открывшемся окне нам нужно будет выбрать модель ККТ, настроить параметры подключения (обычно это COM-порт или Ethernet) и нажать кнопку "Подключиться".

  2. Проверяем прошивку и функционал НДС:

    После успешного подключения мы увидим основную информацию о кассе. Обратите внимание на версию прошивки (FwVersion). Убедитесь, что она достаточно актуальна. Далее, мы можем выполнить несколько тестовых операций:

    • Попробуйте напечатать нулевой чек (пункт "Печать нулевого чека"). Если чек печатается без ошибок, это уже хороший знак.
    • Проверьте, есть ли в настройках ККТ возможность установить НДС 20%. В некоторых драйверах и прошивках, через тест драйвера можно даже отключать или настраивать ставки НДС.
    • Попробуйте пробить простой чек на небольшую сумму, используя ставку НДС 20%. Если это успешно проходит, это окончательно подтверждает, что касса физически готова работать с НДС 20%, и проблема однозначно кроется в логике 1С.

    Этот этап диагностики позволяет нам исключить неисправность самой кассы и сосредоточиться на программной части в 1С.

Разбираем смежную проблему: Почему наличные платежи не проходят, а банковские карты — да?

Иногда пользователи сталкиваются с дополнительной сложностью: после решения проблемы с "Лицензией №3" или даже если эта ошибка не проявляется, платежи по банковским картам проходят успешно, а наличные — нет. Это указывает на другие аспекты взаимодействия 1С и ККТ, которые мы должны рассмотреть.

  1. Анализируем настройки инкассации и остатка в денежном ящике:

    Контрольно-кассовая техника имеет внутренний механизм учета наличных средств, прошедших через нее. Если в кассе не настроена автоматическая инкассация после закрытия смены, или если ее внутренний "баланс" наличных сильно расходится с фактическим содержимым денежного ящика, это может привести к блокировке приема новых наличных. Касса может "думать", что в ней уже накопилась максимальная сумма, или что необходима выемка средств.

    • Что делаем: Через "Тест драйвера ККТ Атол" или специализированные отчеты в 1С проверьте текущий остаток наличных в кассе (СуммаНаличныхВКассе). Если видим значительные расхождения или если касса "переполнена", выполните операцию инкассации (выемки наличных). Если касса пустая, но 1С считает, что нужно внести размен, выполните операцию внесения денежных средств. Синхронизация данных по наличным крайне важна.
  2. Выявляем расхождения в суммах и режимах работы:

    Проблемы с наличными могут возникать из-за несоответствия сумм, которые 1С пытается провести, и ожиданий ККТ. Также важно проверить текущий режим работы ККТ. Например, если смена только открыта и еще не произведено внесение начальной суммы для размена, касса может блокировать прием наличных.

    • Что делаем: Внимательно изучите журналы регистрации 1С и логи драйвера ККТ. Ищите сообщения об ошибках, связанных с суммами платежей, типами оплаты или состоянием смены. Убедитесь, что параметры передачи наличных платежей в 1С (например, через объект ЧекККМ или ДокументЧек) настроены корректно и соответствуют ожиданиям ККТ.
  3. Проверяем общие проблемы связи и специфические параметры:

    Хотя операции по банковским картам могут проходить успешно (так как они часто используют другие механизмы взаимодействия, например, через эквайринговый терминал, который лишь получает подтверждение от ККТ о сумме, но не требует прямого приема наличных), это не исключает проблем со связью, влияющих именно на наличные операции. Например, может быть конфликт с COM-портом, или некорректно настроено взаимодействие с денежным ящиком, если он подключен к ККТ.

    • Что делаем: Попробуйте перезапустить ККТ и компьютер. Проверьте физическое подключение всех кабелей. В настройках оборудования в 1С и в "Тесте драйвера ККТ" убедитесь, что параметры COM-порта (если используется) или сетевые настройки соответствуют действительности. Убедитесь, что в 1С включена и правильно настроена опция использования денежного ящика, если он физически присутствует и должен управляться через ККТ. Иногда помогает полное переподключение оборудования в 1С с очисткой старых настроек.

Подведем итоги нашего расследования

Итак, мы досконально разобрали ошибку "Работа с НДС 20% и НДС 20/120 недоступна без введенной лицензии №3" при подключении ККТ Атол к 1С. Мы выяснили, что эта ошибка, по сути, является "фантомной", порожденной устаревшей логикой проверки в конфигурации 1С, которая не успела адаптироваться к изменениям в лицензионной политике и современных прошивках ККТ Атол. Сама касса, как правило, полностью исправна и готова к работе с НДС 20%.

Наш основной вывод и рекомендация: наиболее надежным и универсальным решением является комплексное обновление всех компонентов системы. Это включает в себя актуализацию драйвера ККТ Атол, обновление обработок обслуживания подключаемого оборудования в вашей конфигурации 1С (либо через обновление всей типовой конфигурации, либо путем целенаправленного обновления БСП/БПО для доработанных систем). Для самописных конфигураций может потребоваться более глубокая работа с кодом, но всегда начинаем с проверки ККТ через "Тест драйвера Атол", чтобы убедиться в ее базовой работоспособности.

Не забываем и о смежных проблемах, таких как невозможность проведения наличных платежей. Их решение часто требует отдельной диагностики, связанной с настройками инкассации, синхронизацией остатков наличных и общими параметрами взаимодействия ККТ и 1С. Последовательный и внимательный подход к каждому из этих шагов позволит вам успешно устранить возникшие сложности и обеспечить стабильную и корректную работу вашей системы 1С с контрольно-кассовой техникой Атол.

← На главную