Почему при частичной оплате по ПКО на чеке не печатаются номенклатурные позиции?

Программист 1С v8.3 (Обычные формы) Бухгалтерский учет Промышленность, строительство и АПК
← На главную

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

Разберем подробно, почему так происходит, как работают форматы фискальных документов (ФФД 1.05) и драйверы ККТ, а также какие варианты решения существуют в типовых и отраслевых конфигурациях 1С.

Причины поведения 1С и кассового аппарата

Проанализируем техническую и методологическую стороны формирования фискального чека:

  1. Контроль сходимости сумм в драйвере ККТ. Фискальный регистратор не позволяет закрыть чек, если сумма строк табличной части (Количество × Цена с учетом скидок) не совпадает с суммой принятой оплаты. Если попытаться передать из документа реализации полный перечень товаров на исходную сумму при меньшей сумме платежа, ККТ выдаст ошибку несовпадения итогов и аннулирует чек.
  2. Методология ФФД 1.05 по частичным оплатам. Согласно требованиям 54-ФЗ и форматам фискальных документов:
    • При последующей оплате ранее переданного товара (оплата кредита) полный товарный состав в чеке не требуется. Формируется чек на фактически вносимую сумму с признаком способа расчета «Оплата кредита» и признаком предмета расчета «Платеж». Товарный состав фиксируется только в момент передачи товара.
    • При получении аванса (до факта передачи конкретных товаров или без жесткой привязки к позициям) выбивается чек с признаком «Аванс» без товарной детализации.
  3. Определение версии ФФД в коде типовых библиотек. В ранних версиях Библиотеки подключаемого оборудования (БПО) для обычных форм использовался алгоритм вычисления минимальной версии ФФД между фискальным накопителем и кассой:
    
    Функция ВерсияФФД(ПараметрыККТ) Экспорт
        ВерсияФФДККТ = Неопределено;
        ВерсияФФДФН = Неопределено;
        ПараметрыККТ.Свойство("ВерсияФФДККТ", ВерсияФФДККТ);
        ПараметрыККТ.Свойство("ВерсияФФДФН" , ВерсияФФДФН);
        Если ВерсияФФДККТ = Неопределено Тогда
            Если ВерсияФФДФН = Неопределено Тогда
                Результат = "1.0";
            Иначе
                Результат = ВерсияФФДФН;
            КонецЕсли;
        Иначе
            Если ВерсияФФДФН = Неопределено Тогда
                Результат = ВерсияФФДККТ;
            Иначе
                Результат = Мин(ВерсияФФДККТ, ВерсияФФДФН);
            КонецЕсли;
        КонецЕсли;
        Возврат Результат;
    КонецФункции
    
    Если ФН имел формат 1.0, конфигурация блокировала расширенные теги ФФД 1.05, что приводило к формированию чека по устаревшим правилам.

Способ 1. Использование регламентной схемы из двух чеков (54-ФЗ)

Для корректного отражения расчетов с отсрочкой платежа или частичной оплатой применяется двухэтапная схема:

  1. Чек на передачу товара (отгрузка в кредит). Чек пробивается непосредственно из документа Реализация товаров и услуг. В фискальный чек передается полный список номенклатурных позиций с признаком способа расчета Передача в кредит (тег 1214) и суммой постоплаты в теге 1216 (Сумма почека постоплатой).
  2. Чек на оплату (внесение денег). При поступлении денежных средств через Приходный кассовый ордер пробивается чек с признаком способа расчета Оплата кредита. В нем печатается только внесенная сумма, без номенклатурного состава, что полностью соответствует требованиям законодательства.

Способ 2. Разбиение документа реализации

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

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

Способ 3. Пропорциональный пересчет позиций в обработке формирования XML

Если бизнес-процесс требует передачи номенклатурного состава именно при частичной предоплате через ПКО, потребуется программная доработка модуля формирования фискального чека:

  1. В обработке обслуживания или общем модуле формирования XML-пакета чека определяем коэффициент соотношения суммы ПКО к сумме реализации.
  2. Пропорционально пересчитываем суммы строк и цены номенклатуры, распределяя копеечные погрешности округления.
  3. Устанавливаем для всех позиций признак способа расчета Частичная предоплата (значение тега 1214 = 2).
  4. Контролируем, чтобы сумма всех пересчитанных строк чека копейка в копейку равнялась сумме принятой оплаты в ПКО, иначе ККТ заблокирует операцию.

Особенности регистрации компоненты ДТО 9

При использовании драйверов ККТ АТОЛ 9.x компонента подключаемого оборудования не требует отдельной установки ДТО и может располагаться в каталоге пользователя %appdata%\1C\1cv8\ExtCompT. Если программа видит драйвер только при запуске от имени администратора, скопируйте соответствующую библиотеку .dll в каталог установки платформы 1С (папка bin) и выполните ее регистрацию в операционной системе.

← На главную