Как передать признак способа расчета (предоплата, кредит) при печати чека на ККТ Штрих-М из 1С?

Программист Торговля и дистрибуция
← На главную

При оформлении кассовых операций с предварительной оплатой, авансами или продажей товаров в кредит возникает необходимость передачи специальных признаков способа расчета. Рассмотрим подробнее, как корректно передавать признаки способа расчета (в частности, значения 5 — частичный расчет и кредит, 7 — передача в кредит) через драйвер ККТ Штрих-М из программы 1С, а также какие технические требования предъявляются к кассовому оборудованию.

Требования к прошивке и формату фискальных документов (ФФД)

Прежде всего проанализируем возможности формата фискальных документов. В устаревшем формате ФФД 1.0 печать чеков с признаками способа расчета (предоплата, аванс, кредит) официально не поддерживается. Разработчики Штрих-М подтверждают, что передача отдельных признаков способа и предмета расчета возможна только при использовании формата ФФД 1.05 или выше.

Для настройки работы ККТ по стандарту ФФД 1.05 выполним следующие действия:

  1. Обновим прошивку кассового аппарата Штрих-М до версии с поддержкой ФФД 1.05.
  2. Запустим утилиту «Тест драйвера ККТ» и откроем настройки таблиц кассового аппарата.
  3. Перейдем в Таблицу № 17 («Региональные настройки»).
  4. Проверим значение поля № 7 («Rus формат фд»): для работы по ФФД 1.05 оно должно быть установлено в значение 2.

Значения свойства PaymentTypeSign в драйвере Штрих-М

В драйвере Штрих-М (начиная с версий 4.x) за передачу признака способа расчета (тег 1214 ФФД) отвечает свойство PaymentTypeSign. Выясним, какие цифровые значения соответствуют типам операций:

  1. 1 — Полная предварительная оплата до момента передачи предмета расчета («ПРЕДОПЛАТА 100%»).
  2. 2 — Частичная предварительная оплата до момента передачи предмета расчета («ПРЕДОПЛАТА»).
  3. 3 — Аванс («АВАНС»).
  4. 4 — Полная оплата, в том числе с учетом аванса или предварительной оплаты в момент передачи предмета расчета («ПОЛНЫЙ РАСЧЕТ»).
  5. 5 — Частичная оплата предмета расчета в момент его передачи с последующей оплатой в кредит («ЧАСТИЧНЫЙ РАСЧЕТ И КРЕДИТ»).
  6. 7 — Передача предмета расчета без его оплаты в момент передачи с последующей оплатой в кредит («ПЕРЕДАЧА В КРЕДИТ»).
  7. 9 — Оплата предмета расчета после его передачи с оплатой в кредит («ОПЛАТА КРЕДИТА»).

Передача признака предмета расчета (PaymentItemSign)

Обратим внимание на важную деталь: для корректного формирования чека недопустимо передавать только признак способа расчета. Требуется также передавать признак предмета расчета (тег 1212 ФФД) через свойство PaymentItemSign.

Разберем пример правильного сочетания параметров:

  1. При приеме предоплаты за товар зададим свойство PaymentTypeSign в значение 1 или 2, а свойство PaymentItemSign — в значение 10 («Платеж» / «Аванс»).
  2. При финальной отгрузке товара с зачетом ранее внесенной предоплаты укажем PaymentTypeSign = 4 («Полный расчет»), а PaymentItemSign = 1 («Товар») или 4 («Услуга»).

Варианты реализации взаимодействия из 1С

Проанализируем два основных способа передачи данных из 1С на фискальный регистратор.

Способ 1. Прямая работа через COM-объект драйвера Штрих-М

Если интеграция выполнена через прямое вызов методов драйвера, свойства позиции фискального документа устанавливаются перед вызовом метода регистрации продажи Sale() или метода FnSendItem2().

Посмотрим на пример кода 1С:


// Установка признака способа расчета (5 - Частичный расчет и кредит)
ОбъектДрайвера.PaymentTypeSign = 5;

// Установка признака предмета расчета (1 - Товар)
ОбъектДрайвера.PaymentItemSign = 1;

// Заполнение реквизитов товарной позиции
ОбъектДрайвера.StringForPrinting = "Ноутбук ASUS";
ОбъектДрайвера.Price = 50000;
ОбъектДрайвера.Quantity = 1;
ОбъектДрайвера.Department = 1;
ОбъектДрайвера.Tax1 = 1; // НДС 20%

// Регистрация позиции в чеке
ОбъектДрайвера.Sale();

При закрытии чека методами CloseCheck или FNCloseCheckEx необходимо корректно передать распределение сумм по видам оплаты через параметры Summ1...Summ16. Сопоставление номеров видов оплат (например, «Предварительная оплата», «Кредит») предварительно настраивается в Таблице № 5 ККТ («Типы оплат»).

Способ 2. Использование Библиотеки подключаемого оборудования (БПО) 1С

В современных конфигурациях 1С прямое обращение к свойствам COM-объекта не требуется. Передача признаков выполняется через структурированный XML-пакет операции чека. Для каждой позиции чека заполняются атрибуты PaymentMethod (признак способа расчета) и PaymentSubject (признак предмета расчета). Драйвер 1С автоматически транслирует их в соответствующий формат команд ККТ.

← На главную