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