Как исправить ошибку «Invalid Tax Value: 120» и нулевой НДС 20% при печати чеков в 1С:УПП

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

При работе с торговым оборудованием в устаревших, но активно используемых конфигурациях, таких как 1С:Управление производственным предприятием (УПП) 1.3, специалисты часто сталкиваются с проблемами при пробитии чеков на онлайн-кассах (ККТ). Наиболее критичными являются две ситуации: когда в чеке печатается ставка «НДС 20%», но сумма налога остается равной нулю, и возникновение ошибки драйвера FFFFFF8h, Invalid Tax Value: 120 при попытке зарегистрировать предоплату. Рассмотрим подробно, как диагностировать и устранить эти неисправности на примере кассовых аппаратов семейства «Штрих-М».

Анализ причин возникновения ошибок НДС

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

Ошибка Invalid Tax Value: 120 при пробитии предоплаты чаще всего связана с форматом ФФД 1.05. В этом режиме для авансов и предоплат должны использоваться расчетные ставки (20/120 или 10/110). Если 1С передает код ставки, который драйвер или прошивка ККТ не могут сопоставить со своей внутренней таблицей налогов, возникает указанная ошибка. Число «120» в тексте ошибки прямо указывает на проблему с расчетной ставкой 20/120.

Шаг 1: Настройка налоговых таблиц в драйвере ККТ

Разберем, как правильно настроить таблицы в драйвере «Штрих-М». Для этого нам понадобится утилита «Тест драйвера ККТ» (версии 4.14 или 4.15). Выясним, какие значения должны быть установлены в Таблице №6 «Налоговые ставки». Посмотрим на стандартный маппинг, который ожидает 1С:УПП:

  1. Перейдите в раздел «Настройка свойств» -> «Таблицы».
  2. Откройте таблицу №6 (Налоговые ставки).
  3. Убедитесь, что строки заполнены в строгом соответствии с требованиями вашей версии обработки обслуживания. Типовая настройка для работы с НДС 20% выглядит так:

Ряд 1: 2000 (соответствует НДС 20%)
Ряд 2: 1000 (соответствует НДС 10%)
Ряд 3: 0    (соответствует НДС 0%)
Ряд 4: 0    (соответствует Без НДС)
Ряд 5: 2000 (соответствует НДС 20/120)
Ряд 6: 1000 (соответствует НДС 10/110)

Важный момент: Если в 1С:УПП используется перечисление СтавкиНДС, то порядок строк в таблице драйвера должен зеркально отражать логику обработки ShtrihMkkt.epf. Если в коде обработки индекс расчетной ставки 20/120 зафиксирован как «6», а в таблице драйвера эта строка пуста или содержит другое значение, вы получите ошибку Invalid Tax Value.

Шаг 2: Проверка конфигурации 1С и обработки обслуживания

Проанализируем состояние метаданных в конфигураторе. Проверим порядок значений в перечислении СтавкиНДС. В УПП 1.3 версии 1.126 и выше порядок обычно следующий:

Если вы обнаружили, что при выборе «НДС 18%» в чеке печатается «НДС 20%» с нулевой суммой, это работа механизма автоматической подмены ставок в прошивке ККТ. Однако полагаться на этот механизм нельзя. Необходимо обновить внешнюю обработку обслуживания торгового оборудования. Рассмотрим подробнее: старые версии обработки (например, версии 2.20) могут некорректно формировать XML-пакет для драйвера, не передавая обязательный тег суммы налога, из-за чего касса не может вывести значение, отличное от нуля.

Шаг 3: Обновление драйверов и использование логов

Для стабильной работы с расчетными ставками и ФФД 1.05 рекомендуется использовать драйверы версии не ниже 4.15. Рассмотрим по шагам процесс диагностики через логи:

  1. В настройках драйвера включите опцию «Вести лог команд».
  2. Повторите попытку пробития чека, вызывающего ошибку.
  3. Найдите лог-файл и найдите в нем команду FNSellItem или Operation.
  4. Проанализируйте параметр TaxGroup или TaxPassword. Если там передается индекс, которого нет в вашей таблице №6, значит, проблема в маппинге внутри 1С.

Если сумма НДС по-прежнему нулевая, проверим Таблицу №2 «Секции». В кассах «Штрих-М» каждая секция может иметь жесткую привязку к налоговой ставке. Если товар пробивается по секции №1, а в настройках таблицы секций для нее указан налог №4 (Без НДС), то переданная из 1С ставка 20% может быть проигнорирована или обнулена. Установите в таблице секций значение «0» для налогов, чтобы касса принимала ставку непосредственно из команды продажи.

Шаг 4: Лицензирование и прошивка

Выясним причину влияния лицензий. Для работы с НДС 20% в ККТ «Штрих-М» должна быть установлена соответствующая лицензия. Проверить её наличие можно через «Тест драйвера» в разделе «Запрос состояния» -> «Лицензии». Отсутствие или некорректная дата лицензии (хотя дата 2044 год является нормальной для бессрочных лицензий Штриха) может блокировать корректный расчет налога обновленными алгоритмами прошивки.

Также убедитесь, что версия ФФД в кассе — 1.05. Работа с предоплатами по ФФД 1.0 практически невозможна в современном правовом поле, и именно это может быть причиной отказа кассы принимать расчетные ставки вида 120.

Резюме решения

Для исправления описанных проблем выполните следующие действия:

  1. Обновите платформу до актуальной (например, 8.3.18+) и конфигурацию УПП до последней версии.
  2. Установите драйвер «Штрих-М» версии 4.15.
  3. Приведите Таблицу №6 драйвера в соответствие с индексами, которые использует ваша обработка обслуживания (обычно 1-я строка — 20%, 5-я или 6-я — 20/120).
  4. В Таблице №2 (Секции) убедитесь, что налоги не заблокированы настройками отделов.
  5. Обновите файл обработки ShtrihMkkt.epf до версии 2.50 или выше, взяв её из состава актуального релиза конфигурации.

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

← На главную