В процессе работы бухгалтерии и ИТ-служб казенных учреждений (КУ), а также бюджетных и автономных учреждений (БУ/АУ) города Москвы часто возникает необходимость интеграции с ПИВ АСУ ГФ (Подсистемой информационного взаимодействия Автоматизированной системы управления городскими финансами) — для этого есть обработка выгрузки платежных поручений в ПИВ АСУ ГФ. Основная сложность заключается в том, что форматы обмена данными регулярно обновляются Департаментом финансов, а типовые конфигурации 1С не всегда оперативно учитывают специфические требования московского региона, такие как дополнительные знаки в расшифровке платежа или специфические коды АПН.
В данной статье мы подробно разберем, как адаптировать выгрузку платежных поручений, на что обратить внимание при настройке правил обмена и как программно скорректировать модули системы для успешного прохождения форматного контроля.
Рассмотрим типичную ситуацию: при попытке загрузки файла XML в ПИВ АСУ ГФ система возвращает ошибку о несоответствии XSD-схеме или указывает на неверную длину полей. Проанализируем основные причины возникновения таких ошибок:
MessageHeader). Использование устаревшего формата (например, 2014 года вместо актуального 2020 года и новее) блокирует импорт.Для начала разберем стандартные средства настройки. В конфигурациях 1С:Бухгалтерия государственного учреждения (БГУ) обмен настраивается через специализированный справочник. Пройдем по этапам настройки:
Перейдем в раздел «Денежные средства» — «Настройки обмена с казначейскими системами». Создадим новую настройку и выберем тип обмена «ПИВ АСУ ГФ». Важно понимать, что этот тип отличается от стандартного обмена с Федеральным казначейством (УФК), так как Москва использует собственные уникальные теги в XML-структуре.
Проанализируем параметры кодировки. В современных версиях ПИВ АСУ ГФ требуется кодировка UTF-8. Если в вашей обработке по умолчанию стоит Windows-1251, это станет причиной ошибок при чтении кириллических символов в назначении платежа.
Если штатная обработка не поддерживает актуальные требования (например, те самые дополнительные три знака в расшифровке), нам потребуется вмешательство в программный код или правила обмена. Выясним причину ошибки: часто она кроется в ограничении длины строк в ОбщийМодуль, отвечающем за формирование XML.
Рассмотрим пример того, как можно программно модифицировать выгрузку для добавления специфического реквизита, например, кода АПН. Если вы используете внешнюю обработку выгрузки, найдите процедуру формирования узла расшифровки платежа.
// Пример модификации заполнения тега расшифровки
Процедура ЗаполнитьРасшифровкуПП(УзелДокумента, СтрокаПлатежа)
УзелРасшифровки = СоздатьУзел(УзелДокумента, "PaymentDetail");
// Добавляем код КБК с учетом московской специфики
ЗаписатьАтрибут(УзелРасшифровки, "KBK", СтрокаПлатежа.КБК);
// Проверяем наличие Кода АПН и записываем его в соответствующее поле
Если ЗначениеЗаполнено(СтрокаПлатежа.КодАПН) Тогда
ЗаписатьАтрибут(УзелРасшифровки, "APNCode", СтрокаПлатежа.КодАПН);
КонецЕсли;
// Увеличенная строка аналитики (доп. классификатор)
ЗаписатьАтрибут(УзелРасшифровки, "AdditCode", СтрокаПлатежа.ДополнительныйКлассификатор);
КонецПроцедуры
Обратите внимание на объект ДополнительныйКлассификатор. Для КУ г. Москвы крайне важно, чтобы префиксы лицевых счетов (начинающиеся на 03) корректно сопоставлялись с кодами целей. Если длина поля в базе 1С меньше, чем требуется форматом ПИВ АСУ ГФ, необходимо расширить соответствующий реквизит в метаданных или обрезать лишние префиксы программно перед выгрузкой.
Часто пользователи сталкиваются с тем, что даже примеры XML с сайта Департамента финансов не проходят проверку. Это происходит из-за отсутствия обязательных атрибутов в блоке MessageHeader. Разберем структуру корректного заголовка:
Каждый файл должен начинаться с корневого элемента, содержащего уникальный идентификатор системы-отправителя и версию формата. Проанализируем пример формирования заголовка в коде 1С:
Функция СформироватьЗаголовокСообщения(ЗаписьXML, ПараметрыВыгрузки)
ЗаписьXML.ЗаписатьНачалоЭлемента("Message");
ЗаписьXML.ЗаписатьАтрибут("xmlns", "http://asugf.mos.ru/piv/types/2.0");
ЗаписьXML.ЗаписатьНачалоЭлемента("Header");
ЗаписьXML.ЗаписатьЭлемент("SenderID", ПараметрыВыгрузки.ИдентификаторУчреждения); // ИД в ПИВ АСУ
ЗаписьXML.ЗаписатьЭлемент("MessageID", Строка(Новый УникальныйИдентификатор()));
ЗаписьXML.ЗаписатьЭлемент("FormatVersion", "2.0"); // Актуальная версия формата
ЗаписьXML.ЗаписатьКонецЭлемента(); // Header
КонецФункции
Важный момент: ПИВ АСУ ГФ проверяет уникальность MessageID. Если вы повторно отправляете файл с тем же идентификатором, система его отклонит, даже если содержимое платежек изменилось.
Рассмотрим ключевые различия в выгрузке, которые необходимо учитывать:
Сведения о бюджетном обязательстве (СБО). Без привязки к номеру БО платеж не пройдет контроль в подсистеме «Управление расходами».DocType.PIV_ИНН_ДАТА_НОМЕР.xml. Проверьте настройки в справочнике Настройки обмена в 1С, чтобы маска имени файла соответствовала регламенту.Если самостоятельная правка конфигурации затруднена, рекомендуется использовать внешние обработки выгрузки. При их выборе или разработке убедитесь в следующем:
Таким образом, мы выяснили, что успешная выгрузка платежных поручений в ПИВ АСУ ГФ требует не только актуальных настроек в 1С, но и понимания структуры XML-файла, специфичного для московского региона. Регулярно проверяйте обновления форматов на сайте Депфина и своевременно корректируйте правила обмена в вашей системе. Для решения этой задачи можно воспользоваться внешней обработкой выгрузки платежных поручений в XML в ПИВ АСУ ГФ.