Как настроить печать чека со ставкой Без НДС в 1С:Бухгалтерия 3.0 и кассах Атол

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

При работе с торговым оборудованием в 1С часто возникает ситуация, когда настройки в программе кажутся верными, но итоговый фискальный документ содержит ошибки. Типичный пример — печать чека со ставкой НДС 10% или 18/20% вместо установленной ставки «Без НДС». Особенно часто это встречается в связке программ 1С:Бухгалтерия предприятия 3.0 (базовая) и популярных кассовых аппаратов Атол 30Ф. В этой статье мы подробно разберем, почему возникает эта проблема и как её решить, опираясь на технические данные драйверов и протоколов обмена.

Анализ проблемы и структуры данных

Рассмотрим ситуацию: в карточке номенклатуры в 1С установлена ставка «Без НДС», в документе реализации или чеке также выбрана эта ставка. Однако при печати на бумажном чеке мы видим налог. Первым делом проанализируем, что именно 1С передает на кассовый аппарат. Для этого в типовых конфигурациях формируется XML-пакет CheckPackage.

Посмотрим на пример структуры XML, которая должна отвечать за отсутствие НДС:


<?xml version="1.0" encoding="UTF-8"?>
<CheckPackage>
 <Parameters PaymentType="1" TaxVariant="2" CashierName="Администратор" />
 <Positions>
  <FiscalString Name="Услуга проживания" Quantity="1" Price="1000" Amount="1000" Department="1" Tax="none"/>
 </Positions>
 <Payments Cash="1000" />
</CheckPackage>

В данном фрагменте кода параметр Tax="none" является ключевым. Именно он сообщает драйверу ККТ, что позиция не облагается налогом. Если в логах 1С вы видите именно такое значение, но касса упорно печатает ставку, значит, проблема кроется в интерпретации этого параметра драйвером или настройками самой кассы.

Решение №1: Обновление драйвера торгового оборудования

Как показывает практика, наиболее распространенной причиной некорректной печати налогов является использование устаревших версий драйверов. В рассматриваемом случае использование драйвера Атол версии 8.14.2.0 приводило к ошибке. Разберем, почему это происходит: старые версии драйверов могут некорректно сопоставлять текстовые идентификаторы налогов (такие как "none") с внутренними индексами налоговых таблиц кассового аппарата.

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

  1. Скачаем актуальную версию драйвера (в данном случае подтверждена корректная работа на версии 8.16.3 или выше).
  2. Удалим старый драйвер через панель управления Windows.
  3. Установим новый драйвер и в настройках 1С (раздел «Подключение и настройка оборудования») обновим компоненту.
  4. Проверим тест устройства, чтобы убедиться в наличии связи.

Важно отметить, что современные версии 1С:Бухгалтерии 3.0 активно переходят на использование 10-й версии драйвера Атол (KKT 10.x). Если ваша прошивка кассового аппарата позволяет, переход на 10-й драйвер будет более надежным решением в долгосрочной перспективе, так как 8-я ветка более не развивается производителем.

Решение №2: Маппинг налоговых ставок в 1С

Если обновление драйвера не помогло, проанализируем таблицу соответствия налогов. В ККТ за каждой налоговой ставкой закреплен определенный номер (индекс). Для ставки «Без НДС» это обычно индекс 4 или 6 (зависит от модели и прошивки).

В 1С:Бухгалтерии зайдем в настройки подключаемого оборудования. Для вашего экземпляра ККТ найдем кнопку «Настройка». В открывшемся окне должна присутствовать таблица «Налоги». Здесь мы должны четко сопоставить:

Проверим эти значения в «Тесте драйвера ККТ» в разделе «Таблицы» (Налоговые ставки). Если в кассе под номером 6 записано «10%», то при передаче из 1С команды на использование 6-го налога, касса напечатает именно 10%.

Решение №3: Проверка настроек секций (отделов)

Иногда кассовый аппарат настроен таким образом, что налог берется из настроек секции, игнорируя данные из чека. В XML-пакете мы видим параметр Department="1". Если в таблице «Отделы» кассового аппарата для первой секции жестко прописана налоговая ставка, это может перекрывать настройки из 1С.

Рассмотрим, как это проверить через утилиту «Тест драйвера»:

  1. Зайдем в режим программирования.
  2. Откроем таблицу «Отделы» (или «Секции»).
  3. Убедимся, что для отдела №1 значение налога установлено в «0» или соответствует индексу «Без НДС» в таблице налогов.

Особенности программного кода в 1С

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


ПараметрыСтроки = Новый Структура;
ПараметрыСтроки.Вставить("Наименование", "Проживание в номере");
ПараметрыСтроки.Вставить("Количество", 1);
ПараметрыСтроки.Вставить("Цена", 1000);
// Значение Неопределено интерпретируется как "Без НДС"
ПараметрыСтроки.Вставить("СтавкаНДС", Неопределено); 

При формировании XML-пакета система преобразует Неопределено в атрибут Tax="none". Если вы используете доработанную форму чека или собственную обработку обслуживания, убедитесь, что логика передачи ставки соответствует требованиям драйвера. Выясним причину возможного сбоя: если вместо Неопределено передается пустая строка или число 0, драйвер может по умолчанию подставить первую доступную ставку из таблицы ККТ (которая часто является ставкой 18% или 20%).

Версии ФФД и прошивки

В контексте современных требований важно помнить про ФФД (Формат фискальных данных). Работа на ФФД 1.0 на сегодняшний день является устаревшей и юридически небезопасной. Переход на ФФД 1.05 или 1.2 требует не только обновления драйвера, но и обновления прошивки ККТ до «Платформы 5.0».

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

Подведем итог: для успешной печати чека «Без НДС» необходимо обеспечить единство трех звеньев: корректную ставку в 1С, актуальную версию драйвера и правильные индексы налогов в таблицах ККТ. Сочетание этих факторов гарантирует правильное формирование фискального признака и отсутствие претензий со стороны налоговых органов.

← На главную