При работе с госконтрактами в рамках федеральных законов 44-ФЗ и 223-ФЗ коммерческие организации сталкиваются с необходимостью открытия лицевых счетов в Территориальных органах Федерального казначейства (ТОФК). Для проведения платежей и получения выписок используется специализированный портал — Система удаленного финансового документооборота (СУФД).
Основная сложность заключается в том, что в коммерческих конфигурациях 1С (таких как «Управление производственным предприятием» — УПП, «ERP Управление предприятием» или «Комплексная автоматизация») отсутствует встроенный функционал для работы с казначейскими форматами обмена СЭД и ТФФ. Разработчики фирмы 1С встраивают эти механизмы нативно только в специализированные решения для госучреждений — например, в «Бухгалтерию государственного учреждения» (БГУ). Коммерческий же сектор по умолчанию ограничен стандартным форматом обмена «Клиент-Банк» (текстовые файлы с расширением .txt).
В этой статье мы подробно разберем, как решить проблему интеграции 1С:УПП и СУФД, проанализируем доступные варианты настройки обмена и рассмотрим технические нюансы программной реализации выгрузки.
Это наиболее популярный и логичный способ автоматизации. Мы можем использовать внешнюю обработку для 1С, которая будет перехватывать процесс выгрузки документов и преобразовывать их в формат, понятный СУФД.
Процесс работы такого решения строится по следующему алгоритму:
ПлатежноеПоручениеИсходящее в УПП, собирает необходимые реквизиты и формирует текстовые файлы специальной структуры со специфическими расширениями (например, .pp или .pn). Данные файлы структурируются по стандартам казначейства, где поля разделяются символом вертикальной черты (|)..d07, .vn, .bd, .bh и т.д.). Внешняя обработка считывает эти файлы, конвертирует их структуру в стандартный формат «1С:Предприятие» (файл kl_to_1c.txt) и передает встроенной обработке «Клиент-Банк» для штатной загрузки в УПП.Ниже рассмотрим пример программного формирования структурированного текстового файла для казначейства на языке 1С. Этот фрагмент кода наглядно демонстрирует, как данные документа преобразуются в структурированную строку формата ТФФ:
Процедура ВыгрузитьПлатежныеПорученияВКазначейство(МассивДокументов, ПутьКВыгрузке) Экспорт
// Создаем объект для записи текстового файла в кодировке Windows-1251 (ANSI)
ЗаписьТекста = Новый ЗаписьТекста(ПутьКВыгрузке, КодировкаТекста.ANSI);
// Записываем системный заголовок файла обмена СЭД
СтрокаЗаголовкаФайла = "ZF|1.0|";
ЗаписьТекста.ЗаписатьСтроку(СтрокаЗаголовкаФайла);
// Записываем информацию об отправителе и получателе
СтрокаИнформация = "FROM|КоммерческаяОрганизация|TO|УФК_ПО_ОБЛАСТИ|";
ЗаписьТекста.ЗаписатьСтроку(СтрокаИнформация);
Для Каждого ТекущийДокумент Из МассивДокументов Цикл
// Получаем ключевые реквизиты платежного поручения
НомерДокумента = ТекущийДокумент.Номер;
ДатаДокумента = Формат(ТекущийДокумент.Дата, "ДФ=dd.MM.yyyy");
СуммаДокумента = Формат(ТекущийДокумент.СуммаДокумента, "ЧЦ=15; ЧДЦ=2; ЧГ=0");
ИННПолучателя = ТекущийДокумент.Контрагент.ИНН;
КПППолучателя = ТекущийДокумент.Контрагент.КПП;
СчетПолучателя = ТекущийДокумент.СчетКонтрагента.НомерСчета;
БИКПолучателя = ТекущийДокумент.БИКБанкаПолучателя;
Назначение = ТекущийДокумент.НазначениеПлатежа;
// Формируем строку по формату TXPP (структура платежного поручения казначейства)
// Все поля разделяем символом "|" в соответствии с требованиями ТФФ
СтрокаДокумента = "TXPP|" + НомерДокумента + "|" + ДатаДокумента + "|" + СуммаДокумента + "|"
+ ИННПолучателя + "|" + КПППолучателя + "|" + СчетПолучателя + "|"
+ БИКПолучателя + "||||" + Назначение + "|";
ЗаписьТекста.ЗаписатьСтроку(СтрокаДокумента);
КонецЦикла;
ЗаписьТекста.Закрыть();
Сообщить("Выгрузка в казначейский формат успешно завершена!");
КонецПроцедуры
Этот подход часто выбирают крупные предприятия, которые хотят минимизировать затраты на постоянную доработку и поддержку кода при изменении альбомов форматов казначейства. Фирма 1С регулярно обновляет форматы СУФД в своей бюджетной линейке решений (БГУ).
Схема взаимодействия выглядит следующим образом:
1c_to_kl.txt.Преимущество метода: Полная безопасность перед изменениями законодательства. Казначейство регулярно меняет альбомы форматов (переходя с 29-й версии на 36-ю и далее), добавляет новые обязательные поля. При транзитной схеме вам не нужно нанимать программиста для переписывания кода внешней обработки под УПП — достаточно просто обновить конфигурацию БГУ.
Существуют внешние утилиты-конвертеры, которые поставляются региональными отделениями Федерального казначейства или разрабатываются сторонними энтузиастами. Они работают независимо от 1С. Схема проста: выгружаем файл из УПП в стандартном формате 1С, запускаем внешнюю утилиту, на выходе получаем файл в формате СЭД/ТФФ. Однако этот метод требует ручных манипуляций пользователя за рамками интерфейса 1С, что снижает общую эргономику процесса.
Если вы решили остановиться на Варианте 1 (внешняя обработка), необходимо уделить пристальное внимание версии Альбома форматов обмена СЭД. Казначейство обновляет требования к структуре файлов несколько раз в год.
Например, критически важным изменением в истории этих обменов стало внедрение требований Федерального закона № 229-ФЗ. С этого момента при перечислении денежных средств физическим лицам (включая заработную плату) в файлах обмена стал обязательным специальный реквизит — код вида доходов. Это повлекло за собой переход на обновленные типы казначейских файлов (такие как формат TXPP новых версий взамен устаревших). Если ваша внешняя обработка была написана под старый альбом форматов (например, под 29-ю версию), СУФД просто отклонит импортируемый файл с ошибкой несовместимости схемы данных.
Поэтому при покупке или самостоятельной разработке обработки для УПП всегда закладывайте необходимость её адаптации под актуальные структуры файлов СУФД (на текущий момент актуальными являются версии альбомов уровня 36.х и выше).