При оформлении розничных и оптовых продаж в программе 1С:Управление торговлей (редакция 11) пользователи часто сталкиваются с неприятной ситуацией: на распечатанном чеке онлайн-кассы ККТ внезапно появляется строка «В кредит» или «Оплата кредита». При этом в предварительном просмотре чека на экране компьютера всё выглядит корректно, а сама продажа может быть полностью оплачена безналичным расчетом.
В этой статье мы подробно разберем, почему возникает эта проблема с точки зрения законодательства и логики 1С, выясним технические причины ее проявления при переносе оборудования и рассмотрим пошаговые сценарии ее решения как стандартными средствами, так и с помощью доработок.
Согласно Федеральному закону № 54-ФЗ и форматам фискальных документов (ФФД 1.05 и 1.2), каждый фискальный чек должен содержать обязательный реквизит — «Признак способа расчета» (Тег 1214). Значение этого тега напрямую зависит от того, совпадают ли во времени факт передачи товара и факт получения денежных средств от покупателя:
Рассмотрим стандартную схему, используемую в оптовой торговле 1С: сначала менеджер создает документ Реализация товаров и услуг (происходит отгрузка товара), а затем на его основании вводит платежный документ — Приходный кассовый ордер или Поступление безналичных ДС. С точки зрения программы и требований ФНС, в момент проведения реализации возник долг покупателя (кредит), а платежным документом этот долг закрывается. Именно поэтому касса абсолютно законно печатает на чеке признак «Оплата кредита» (или просто «В кредит»).
Многих пользователей сбивает с толку то, что при нажатии кнопки просмотра чека в 1С никакой информации о кредите нет. Разберем этот механизм подробнее.
Экранная форма предварительного просмотра в 1С генерируется силами самой платформы. Она отображает лишь базовую структуру чека и текстовые строки, которые программа планирует передать на устройство.
Однако окончательную раскладку тегов по фискальным накопителям и сопоставление типов оплат производит драйвер ККТ непосредственно в момент отправки команды на фискализацию. Кассовый аппарат получает от 1С параметры, сверяет их со своими внутренними таблицами настроек и только при физической печати выводит на чековую ленту системную строку «В кредит».
В практике администрирования 1С часто наблюдается картина: программа и драйверы не менялись, но при переносе кассового аппарата на другое рабочее место чеки начинают выходить со строкой «В кредит». Этому есть логичное объяснение:
---
Рассмотрим несколько практических вариантов решения этой проблемы в зависимости от бизнес-процессов вашей организации.
Чтобы касса всегда печатала признак «Полный расчет», необходимо, чтобы передача товара и его оплата происходили одновременно:
Чек ККМ. В этом случае отгрузка и оплата проводятся в одной транзакции, и чек закрывается без упоминания кредитных обязательств.Если вам необходимо пробить один чек на полную оплату при схеме «Реализация + Оплата», сделайте следующее:
Реализация товаров и услуг.Приходный кассовый ордер (или Эквайринговая операция).Если вы оформляете безналичный платеж, а касса все равно упорно пишет «В кредит», необходимо проверить настройки интеграции оборудования:
Если особенности вашего бизнеса не позволяют менеджерам вручную менять признаки расчета в каждом документе, а перестраивать документооборот на схему с двумя чеками (аванс и последующий зачет) невозможно, проблему можно решить с помощью небольшого расширения конфигурации.
Проанализируем программный код. Нам необходимо перехватить структуру чека непосредственно перед отправкой пакета XML в драйвер ККТ и принудительно заменить признак способа расчета. Ниже представлен пример кода, который можно внедрить в процедуру подготовки фискальной строки:
&После("ПодготовитьДанныеДляЧека")
Процедура Расш_ПодготовитьДанныеДляЧека(ПараметрыРегистрацииЧека, Отказ)
// Проверяем таблицу товаров в формируемом пакете
Если ПараметрыРегистрацииЧека.Свойство("ПозицииЧека") Тогда
Для Каждого СтрокаПозиции Из ПараметрыРегистрацииЧека.ПозицииЧека Цикл
// Принудительно меняем признак способа расчета на Полный Расчет
Если СтрокаПозиции.ПризнакСпособаРасчета = Перечисления.ПризнакиСпособаРасчета.ОплатаКредита Тогда
СтрокаПозиции.ПризнакСпособаРасчета = Перечисления.ПризнакиСпособаРасчета.ПередачаСПолнойОплатой;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Важное предупреждение: Использование подобных программных корректировок позволяет убрать надпись «В кредит» с печатной формы чека, однако это является обходом методологии ФНС. Перед внедрением такого решения рекомендуется проконсультироваться с вашей бухгалтерией и аудиторами.