Как пробить фискальный чек при оплате физического лица через банк в 1С:УТ 10.3 и УТ 11?

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

С вступлением в силу изменений в Федеральном законе № 54-ФЗ многие компании столкнулись с необходимостью применения контрольно-кассовой техники (ККТ) даже в тех случаях, когда наличные деньги в кассу не поступают. Одной из самых трудоемких задач стала фискализация платежей, которые физические лица переводят напрямую на расчетный счет организации через банковские приложения или отделения банков. В данной статье мы подробно разберем, как реализовать этот процесс в популярных конфигурациях 1С:Управление торговлей версий 10.3 и 11, проанализируем законодательную базу и выстроим алгоритм действий для бухгалтера и программиста.

Законодательное обоснование: почему нужен чек?

Согласно ФЗ-54, расчеты — это прием или выплата денежных средств с использованием наличных и (или) электронных средств платежа. Когда физическое лицо оплачивает счет через онлайн-банк или операциониста, оно использует электронное средство платежа (ЭСП). Следовательно, у продавца возникает обязанность сформировать кассовый чек.

Рассмотрим важный нюанс: при расчетах между организациями и ИП по безналу (с расчетного счета на расчетный счет) ККТ не применяется. Однако, если плательщиком выступает физическое лицо, исключений нет. Даже если деньги поступили по платежному поручению, продавец обязан выдать чек. Согласно разъяснениям Минфина и ФНС, сделать это нужно не позднее рабочего дня, следующего за днем осуществления расчета, но до момента передачи товара или оказания услуги.

Реализация задачи в 1С:Управление торговлей 11

В современных версиях УТ 11 (начиная с релизов 11.4.5 и выше) механизм пробития чеков из банковских документов уже заложен в типовой функционал. Разберем по шагам, как это работает:

  1. Загрузка выписки: Мы получаем данные из банка через сервис «ДиректБанк» или загрузку файла kl_to_1c.txt. Создается документ Поступление безналичных денежных средств.
  2. Идентификация плательщика: В документе крайне важно указать, что плательщиком является физическое лицо. Если это разовый покупатель, можно создать одного контрагента «Розничный покупатель», но для корректной отправки электронного чека лучше иметь актуальные контактные данные.
  3. Формирование чека: В форме документа Поступление безналичных денежных средств на панели навигации или по кнопке «Пробить чек» инициируется процесс фискализации.
  4. Рабочее место «Чеки ККМ»: Для массового пробития чеков по выпискам в УТ 11 реализовано специализированное рабочее место. Проанализируем вкладку «Чеки к пробитию», где программа автоматически собирает все безналичные поступления от физических лиц, по которым еще не был оформлен фискальный документ.

Важно помнить о признаках способа расчета. Если товар отгружается позже, чем пришли деньги, мы должны пробить чек с признаком Предоплата 100%. В момент фактической отгрузки (документ Реализация товаров и услуг) пробивается второй чек с признаком Полный расчет.

Реализация задачи в 1С:Управление торговлей 10.3

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

Поскольку документ Платежное поручение входящее в старых версиях не имел прямой связи с кассой, пользователи часто используют обходной путь через документ Оплата от покупателя платежной картой. Однако это методически не совсем верно для банковского перевода. Правильнее будет доработать систему:

  1. Добавление реквизита: В документ Платежное поручение входящее добавим дополнительный реквизит ЧекПробит (тип Булево).
  2. Создание обработки печати: Разработаем внешнюю обработку или расширение, которое будет обращаться к объекту МенеджерОборудования для формирования чека.

Проанализируем пример логики кода, который может быть использован для печати чека из документа поступления денег:


// Пример упрощенной логики печати чека
Процедура ПробитьЧекНаОснованииВыписки(ДокументСсылка)
    // Инициализируем объект фискального регистратора
    ОбъектДрайвера = ПолучитьПараметрыПодключенияККТ();
    
    // Формируем структуру чека
    ПараметрыЧека = Новый Структура;
    ПараметрыЧека.Вставить("ТипРасчета", Перечисления.ТипыРасчета.Приход);
    ПараметрыЧека.Вставить("Сумма", ДокументСсылка.СуммаДокумента);
    
    // Добавляем позиции из расшифровки платежа
    ТаблицаТоваров = Новый ТаблицаЗначений;
    ТаблицаТоваров.Колонки.Добавить("Наименование");
    ТаблицаТоваров.Колонки.Добавить("Количество");
    ТаблицаТоваров.Колонки.Добавить("Цена");
    
    // Если в выписке указан заказ, берем данные из него
    Для Каждого СтрокаТЧ Из ДокументСсылка.РасшифровкаПлатежа Цикл
        // Логика заполнения позиций...
    КонецЦикла;
    
    // Вызываем команду печати через стандартную библиотеку подключаемого оборудования (БПО)
    Результат = МенеджерОборудованияВызовСервера.ПробитьЧек(ОбъектДрайвера, ПараметрыЧека);
    
    Если Результат Тогда
        ЗаписатьСтатусПробития(ДокументСсылка);
    КонецЕсли;
КонецПроцедуры

Проблема авансов и последующей отгрузки

Особое внимание уделим схеме «Аванс — Реализация». Выясним причину, по которой налоговая требует два чека. Первый чек фиксирует получение денег (аванс), второй — зачет этого аванса в счет переданного товара. Если вы пробьете только один чек в момент получения денег, это будет нарушением правил формирования фискального признака при передаче товара.

Для автоматизации этого процесса в 1С рекомендуем использовать механизм «Очередь чеков». Когда бухгалтер разносит банковскую выписку, система ставит задачу на пробитие авансового чека. В момент проведения реализации система проверяет наличие оплаты от этого физлица и предлагает пробить второй чек на «Полный расчет».

Практические советы по настройке

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

Подводя итог, отметим, что хотя задача пробития чеков по банковским выпискам кажется сложной из-за разрыва во времени между оплатой и получением информации о ней, программные продукты 1С предоставляют достаточно инструментов для автоматизации этого процесса. Главное — правильно настроить связь между банковскими документами и торговым оборудованием, а также соблюдать последовательность формирования чеков на аванс и на отгрузку.

← На главную