Как исправить ошибку формата СЭДО «Unknown format message» при отправке ответа на запрос по несчастному случаю в 1С:ЗУП

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

При работе со сдачей отчетности и отправкой ответов на запросы Социального фонда России (СФР, ранее — ФСС) через систему электронного документооборота (СЭДО) бухгалтеры нередко сталкиваются с техническими сбоями. Один из наиболее неприятных и малоинформативных сбоев — ошибка логического контроля «Ошибка формата сообщения. Unknown format message». Данная ошибка массово проявляется при попытке отправить документ Ответ на запрос ФСС для расчета пособия, если вид пособия указан как «Пособие по временной нетрудоспособности в связи с несчастным случаем на производстве или профессиональным заболеванием».

В этой статье мы подробно разберем, почему возникает данная ошибка, проанализируем структуру XML-файла выгрузки, рассмотрим официальное решение от разработчиков фирмы «1С» и изучим правильный алгоритм действий работодателя при наступлении несчастного случая на производстве.

Выясняем техническую причину ошибки: анализ схемы XML

Для того чтобы понять природу возникновения ошибки «Unknown format message», нам необходимо заглянуть внутрь формируемого XML-пакета, который программа 1С:Зарплата и Управление Персоналом отправляет на шлюз СФР. Согласно спецификации формата СЭДО, при оформлении пособия по временной нетрудоспособности в связи с несчастным случаем на производстве или профзаболеванием (НС и ПЗ), в файле обязательно должен присутствовать специальный блок данных.

Давайте проанализируем структуру этого блока. В XML-документе за передачу сведений о производственном происшествии отвечает узел insuranceCase (страховой случай). Внутри этого узла СФР требует обязательного заполнения двух ключевых реквизитов:

  1. insuranceCaseState — статус признания страхового случая. Этот тег принимает логическое значение: true (если случай официально признан связанным с НС и ПЗ) или false (если случай не связан с ними).
  2. n1 — блок, содержащий реквизиты Акта по форме Н-1 (или акта о профзаболевании), внутри которого находятся теги num (номер акта) и date (дата акта).

Если страховой случай не связан с НС и ПЗ (обычный больничный лист), блок insuranceCase в XML-файле отсутствует вовсе. Однако, если мы выбираем вид пособия, связанный с производственной травмой, этот блок становится строго обязательным.

Проблема в старых релизах конфигураций 1С (в частности, ЗУП 3.1.18.586) заключалась в том, что программа формировала xml-файл некорректно. В выгрузку попадали номер и дата Акта Н-1, но полностью отсутствовал обязательный тег insuranceCaseState. Шлюз СФР, не обнаружив этого обязательного поля, отклонял файл целиком с ошибкой формата. Попытки отправить документ без номера акта также блокировались программой на этапе проведения документа в интерфейсе.

Пример корректно сформированного блока XML должен выглядеть следующим образом:


<insuranceCase>
    <insuranceCaseState>true</insuranceCaseState>
    <n1>
        <num>2</num>
        <date>2022-08-16</date>
    </n1>
</insuranceCase>

Если этот блок пуст или в нем отсутствует строчка с тегом insuranceCaseState, приемный шлюз фонда вернет ошибку логического контроля.

Решение проблемы: установка патча EF_70012100

Разработчики фирмы «1С» зарегистрировали данную проблему как системную ошибку под кодом 70012100. Суть ошибки формулировалась так: в карточке документа Ответ на запрос ФСС для расчета пособия с видом «Пособие по временной нетрудоспособности в связи с несчастным случаем на производстве или профессиональным заболеванием» в группе параметров «Документы НС/ПЗ» визуально не отображалось и не заполнялось поле «Признание страхового случая НС/ПЗ». Соответственно, значение не могло записаться в XML-файл.

Для исправления этой ошибки был выпущен официальный патч EF_70012100. Рассмотрим пошагово, как исправить ситуацию:

  1. Убедитесь, что в вашей программе включена автоматическая загрузка и установка исправлений (патчей). Сделать это можно в разделе Администрирование — Обслуживание — Обновление программы — Установка обновлений и исправительных патчей.
  2. Если автоматическая установка отключена, скачайте патч EF_70012100 вручную с портала поддержки пользователей «1С» и установите его через конфигуратор или в режиме «1С:Предприятие» в разделе обновлений.
  3. После установки патча и перезапуска программы в документе Ответ на запрос СФР в группе полей «Документы НС/ПЗ» появится новое обязательное поле «Признание страхового случая НС/ПЗ».
  4. В этом поле выберите значение «Признан» (или «Не признан» / «Неизвестно» в зависимости от этапа расследования). При выборе варианта «Признан» программа автоматически добавит в выгрузку тег insuranceCaseState со значением true, и файл успешно пройдет контроль на шлюзе фонда.

Если вы работаете на актуальных версиях 1С:ЗУП (например, ветки 3.1.27 и выше), данный патч уже интегрирован в основной код конфигурации, и поле «Признание страхового случая НС/ПЗ» присутствует в интерфейсе по умолчанию.

Современный алгоритм работы с несчастными случаями на производстве в 1С:ЗУП

Поскольку процесс расследования несчастного случая на производстве и составления Акта по форме Н-1 по закону может занимать длительное время (от нескольких дней до нескольких месяцев), отправка ответов в СФР имеет свою специфику. Мы не можем затягивать отправку ответа на входящий запрос более чем на 3 рабочих дня, даже если расследование еще идет.

Давайте разберем по шагам правильный современный алгоритм отражения таких ситуаций в программе 1С:Зарплата и Управление Персоналом 8:

Этап 1. Первичная оплата больничного (пока идет расследование)

Когда сотрудник приносит электронный больничный лист (ЭЛН) с кодом причины нетрудоспособности «02» (травма), работодатель еще не имеет на руках утвержденного Акта Н-1. Соответственно, официально признать случай производственным на данном этапе нельзя.

  1. Регистрируем документ Больничный лист в программе в обычном порядке. Причина нетрудоспособности указывается как «(02) Травма (в т.ч. несчастный случай на производстве или его последствия)».
  2. Поскольку случай еще официально не признан производственным, расчет производится как по обычной бытовой травме: первые 3 дня оплачиваются за счет средств работодателя, последующие дни — за счет СФР (исходя из страхового стажа работника).
  3. На входящий запрос от СФР отправляем стандартный документ Ответ на запрос СФР для расчета пособия, в котором переключатель признания страхового случая устанавливаем в положение «Неизвестно» или «Не признан». Это позволит фонду выплатить сотруднику первичное пособие по общим правилам и убережет организацию от штрафа за нарушение трехдневного срока отправки ответа.

Этап 2. Действия после оформления Акта формы Н-1

После завершения расследования комиссия составляет и утверждает Акт по форме Н-1. Работодатель обязан незамедлительно передать оригинал этого акта и сопутствующие материалы расследования в свое региональное отделение СФР на бумажном носителе или через специализированные каналы связи.

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

  1. Открываем ранее зарегистрированный документ Больничный лист и нажимаем кнопку «Исправить» внизу документа. Создается документ-исправление.
  2. В документе-исправлении переводим переключатель характера травмы в положение «Несчастный случай на производстве».
  3. Программа автоматически сторнирует ранее начисленные первые 3 дня за счет работодателя. Весь период больничного теперь пересчитывается полностью за счет средств СФР в размере 100% среднего заработка сотрудника, независимо от его страхового стажа.
  4. Проводим документ-исправление.

Этап 3. Инициирование проактивного перерасчета

Чтобы запустить процесс выплаты доплаты сотруднику со стороны фонда, нам необходимо отправить новые сведения в СФР. Для этого выполняем следующие действия:

  1. Переходим в раздел Кадры — Пособия и создаем документ Исходящее сообщение о страховом случае СФР.
  2. В документе обязательно устанавливаем флажок «Перерасчет», указываем причину перерасчета и выбираем исправленный больничный лист. Отправляем сообщение в фонд.
  3. В ответ на это исходящее сообщение СФР пришлет новый входящий запрос с видом пособия «Пособие по временной нетрудоспособности в связи с несчастным случаем на производстве...».
  4. Создаем новый документ Ответ на запрос СФР для расчета пособия. Благодаря установленным патчам и обновлениям, в группе полей «Документы НС/ПЗ» у нас будет доступно поле «Признание страхового случая».
  5. Указываем статус «Признан», заполняем реквизиты (номер и дату) утвержденного Акта формы Н-1.
  6. Проводим документ и отправляем его в фонд. Теперь XML-файл сформируется без технических ошибок, и СФР успешно произведет доплату сотруднику.

Рекомендации на случай экстренных сбоев СЭДО

Если отправка ответа на запрос СФР по несчастному случаю блокируется технической ошибкой шлюза («Unknown format message» или иными ошибками разбора XML-схемы), а срок предоставления сведений (3 рабочих дня) истекает, рекомендуем придерживаться следующего защитного алгоритма:

Своевременное обновление конфигурации 1С:Зарплата и Управление Персоналом и установка актуальных патчей через встроенную службу поддержки помогут вам избежать подобных технических трудностей и обеспечат бесперебойный обмен данными с контролирующими органами.

← На главную