Почему Атол 30Ф не печатает список товаров при оплате в 1С:УТ 10.3 и как это исправить

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

При оформлении продаж в конфигурации «1С:Управление торговлей 10.3» с использованием фискального регистратора «Атол 30Ф» пользователи часто сталкиваются с ситуацией, когда в напечатанном чеке отсутствует детализированный список товаров. Вместо построчной номенклатуры ККТ выводит общую сумму платежа с формулировкой вроде «Предоплата» или «Оплата кредита». При этом сам документ («Реализация товаров и услуг» или заказ) содержит полный перечень позиций. Рассмотрим подробно, почему так происходит, разберем законодательные требования и предложим практические варианты решения этой проблемы.

Выясняем причину: Законодательный аспект (54-ФЗ и ФФД 1.05)

Первое, что необходимо проанализировать — это хронологическая последовательность документов и логика расчетов с точки зрения Федеральной налоговой службы (ФНС). В описываемой ситуации документ РеализацияТоваровУслуг оформлен, например, 19 августа, а входящий платеж (например, ПлатежноеПоручениеВходящее или ПриходныйКассовыйОрдер) зарегистрирован 20 августа. То есть фактически товар сначала был отгружен и передан покупателю, а оплата за него поступила лишь на следующий день.

В такой схеме бухгалтер совершает методологическую ошибку, требуя указать признак способа расчета «Предоплата полная». Согласно закону 54-ФЗ и форматам фискальных данных (ФФД 1.05 и выше), предоплата возможна только до фактического отпуска товара. Если товар уже передан покупателю, последующий прием денежных средств классифицируется как «Оплата кредита» (погашение задолженности).

Почему в этом случае на чеке не печатается список товаров? Это абсолютно корректное поведение кассового аппарата по закону:

  1. Признаком предмета расчета при погашении кредита должен выступать «Платеж», а не конкретный «Товар».
  2. Детализированный список товаров со всеми наименованиями, кодами маркировки и ставками НДС уже был отправлен в налоговую и ККТ в первом чеке — в момент отгрузки (с признаком способа расчета «Передача в кредит» или «Частичная оплата и передача в кредит»).
  3. Если продублировать номенклатуру во втором чеке (при приеме оплаты), это неизбежно приведет к задвоению выручки по конкретным товарам в базах данных ОФД и налоговой инспекции. Соответственно, касса печатает только общую сумму входящего платежа, закрывающего долг.

Технические особенности работы «1С:Управление торговлей 10.3»

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

  1. В табличной части «Расшифровка платежа» платежного документа в качестве документа расчетов или сделки должен быть указан конкретный документ-основание (например, ЗаказПокупателя или РеализацияТоваровУслуг).
  2. Сумма платежа и ставки НДС в платежном документе должны строго до копейки совпадать со значениями в документе-основании. При малейшем расхождении (даже из-за копеечных округлений) алгоритм ККТ сбрасывает построчную номенклатуру и формирует чек на общую сумму.
  3. В приходном кассовом ордере предусмотрена вкладка «Чек ККМ» и табличная часть «Список номенклатуры чека ККМ». Если эта таблица заполнена вручную или автоматически на основании реализации, программа попытается передать ее состав в драйвер Атол. Однако, если дата оплаты позже даты отгрузки, алгоритмы программы все равно могут принудительно изменить признак расчета на «Оплата кредита» и скрыть строки номенклатуры.

Способы решения проблемы

Разберем по шагам варианты обхода этого ограничения, если бухгалтерия все же настаивает на выводе списка товаров в чеке при оплате.

Вариант 1: Использование схемы «Заказ покупателя» в качестве основания

Рассмотрим, как обойти логику программы без изменения программного кода. Если привязать оплату не напрямую к реализации, а к предварительному заказу, система позволит сформировать чек со списком номенклатуры:

  1. Создаем документ ЗаказПокупателя, в котором подробно заполняем всю номенклатуру, цены и ставки НДС.
  2. На основании заказа проводим отгрузку через РеализацияТоваровУслуг.
  3. При поступлении оплаты (через ПлатежноеПоручениеВходящее или ПриходныйКассовыйОрдер) в поле «Основание» (или в табличной части «Расшифровка платежа») указываем именно ЗаказПокупателя, а не реализацию.
  4. При печати чека из платежного документа 1С сопоставит платеж с заказом и сформирует чек с признаком «Предоплата полная», выведя весь список товаров на печать.

Важное предупреждение: Данный метод является административным обходом и может искажать реальную картину расчетов в учете, если отгрузка фактически уже состоялась до момента оплаты. Используйте его на свой страх и риск после согласования с финансовой службой.

Вариант 2: Пробитие чека непосредственно из документа реализации

Наиболее чистый с точки зрения методологии 54-ФЗ способ — организация бизнес-процесса таким образом, чтобы чек пробивался непосредственно из документа РеализацияТоваровУслуг в день отгрузки. В этом случае:

  1. В документе реализации нажимаем кнопку пробития чека.
  2. В параметрах оплаты выбирается наличный или безналичный тип расчета.
  3. Касса формирует один единственный чек с признаком способа расчета «Полный расчет» и полной номенклатурной детализацией. Никаких дополнительных чеков по платежным поручениям в этом случае бить не требуется.

Вариант 3: Программная доработка алгоритма печати чека

Для программистов рассмотрим техническое решение проблемы. Если типовой функционал УТ 10.3 не удовлетворяет требованиям бизнеса, необходимо внести изменения в код программы, отвечающий за формирование XML-пакета для ККТ. При необходимости можно воспользоваться готовым решением для автоматического вывода номенклатуры при печати чека из ПКО или РКО.

В конфигурации «1С:Управление торговлей 10.3» за интеграцию с торговым оборудованием отвечает общий модуль, связанный с менеджером оборудования (например, МенеджерОборудованияВызовСервера или специализированные обработки обслуживания драйверов).

Проанализируем пример логики, которую необходимо скорректировать. Нам нужно принудительно передавать массив строк номенклатуры в XML-пакет чека, даже если признак способа расчета определяется как кредит или постоплата. Для этого в процедуре подготовки данных для ККТ (например, ЗаполнитьОплатыДляТоварногоДокумента) разработчик может переопределить структуру параметров:


// Пример принудительного заполнения структуры товарных позиций для ККТ
Если ЭтоПлатежныйДокумент И ЗначениеЗаполнено(ДокументОснование) Тогда
    // Получаем табличную часть товаров из документа-основания (Реализации)
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Товары.Номенклатура.Наименование КАК Наименование,
        |   Товары.Количество КАК Количество,
        |   Товары.Цена КАК Цена,
        |   Товары.Сумма КАК Сумма,
        |   Товары.СтавкаНДС КАК СтавкаНДС
        |ИЗ
        |   Документ.РеализацияТоваровУслуг.Товары КАК Товары
        |ГДЕ
        |   Товары.Ссылка = &СсылкаНаРеализацию";
    
    Запрос.УстановитьПараметр("СсылкаНаРеализацию", ДокументОснование);
    ТаблицаТоваров = Запрос.Выполнить().Выгрузить();
    
    // Принудительно заполняем XML-структуру для драйвера Атол 10
    Для Каждого СтрокаТовара Из ТаблицаТоваров Цикл
        НоваяСтрока = ЧекДанные.Строки.Добавить();
        НоваяСтрока.Наименование = СтрокаТовара.Наименование;
        НоваяСтрока.Количество = СтрокаТовара.Количество;
        НоваяСтрока.Цена = СтрокаТовара.Цена;
        НоваяСтрока.Сумма = СтрокаТовара.Сумма;
        НоваяСтрока.СтавкаНДС = СтрокаТовара.СтавкаНДС;
        // Принудительно выставляем признак способа расчета
        НоваяСтрока.ПризнакСпособаРасчета = Перечисления.ПризнакиСпособаРасчета.ПередачаСПолнойОплатой;
    КонецЦикла;
КонецЕсли;

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

← На главную