Как подготовить отчёт XBRL-CSV 2.0 по запросу Банка России: 5 шагов, валидация и типичные ошибки

Написано

в

Когда от Банка России приходит запрос на учётно-операционные данные в формате XBRL-CSV 2.0, на ответ обычно отводится около 10 рабочих дней. За это время нужно понять запрос, собрать данные из разных систем, привести их к строгой структуре таксономии, пройти все контрольные соотношения и отправить корректно собранный пакет.

  • Процесс — пять шагов: понять запрос → собрать данные → привести к формату → валидация → отправка.
  • Самое трудоёмкое — не сам отчёт, а сбор данных и исправление ошибок валидации.
  • Чаще всего отклоняют из-за форматов, пустых строк, дублей и нарушения структуры архива.

Как выглядит запрос от ЦБ

Запрос приходит в виде PDF-файла. В нём указаны отправитель (Банк России), отчитывающаяся организация, дата, период и описание того, что именно нужно представить. Два реквизита особенно важны:

  • Период — может быть от одного дня до нескольких лет (глубина до трёх лет). За три года это потенциально сотни миллионов строк.
  • Номер запроса — его придётся использовать в наименовании итоговых файлов: регулятор заложил это требование прямо в таксономию.

Пять шагов подготовки отчёта

Шаг 1. Понять, что именно нужно предоставить

Самый недооценённый шаг — ошибка здесь ломает весь отчёт дальше. Нужно определить, какие именно разделы запрашиваются, за какой период собирать данные и где они хранятся внутри компании. Если собрать не те данные или не за тот период, дальнейшая работа окажется напрасной.

Шаг 2. Собрать данные

Нужно собрать все данные, попадающие в отчёт, — по операциям и сделкам, клиентам и договорам, часто из нескольких разных учётных систем. Сложность в том, что единого источника нет, данные нужно сопоставить и привести к единому виду, а объём может составлять миллионы строк. Основная трудность всего процесса — не в самом отчёте, а в сборе данных.

Шаг 3. Привести данные к формату XBRL-CSV 2.0

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

  • Даты — в едином формате (год-месяц-день, при необходимости со временем).
  • Типы значений — для каждой ячейки задано, текстовое это поле или числовое. Значение 00001 в текстовом и числовом виде — для регулятора разные вещи.
  • Коды — должны соответствовать заданным справочникам (например, коды валют).
  • Идентификаторы с маской ввода — у многих полей жёстко задан шаблон допустимых символов.

Шаг 4. Проверить отчёт (валидация)

Нужно пройти все контрольные соотношения, проверить корректность данных и устранить ошибки. Проверок очень много, ошибки бывают неочевидными, одна ошибка может тянуть за собой каскад других, а при больших объёмах сама проверка занимает время. На практике исправление ошибок нередко занимает больше времени, чем сбор данных.

Шаг 5. Сформировать и отправить отчёт

После успешной валидации нужно сформировать отчёт в формате XBRL-CSV 2.0, собрать архив в требуемой многоуровневой структуре, подписать и зашифровать файл и отправить его в личный кабинет Банка России. Это не просто ZIP-архив: внутри, помимо CSV-данных, лежит служебный файл mapping.json, описывающий состав пакета, — по нему регулятор сопоставляет, что прислано именно то, что запрашивалось. Готовый архив сначала подписывается электронной подписью (файл .SIG), затем шифруется (файл .ENC), и только после этого загружается в личный кабинет.

Можно ли подготовить отчёт без специального инструмента

Короткий ответ — практически нет. Это следствие самого устройства формата: сложная таксономия с тысячами элементов, сотни контрольных соотношений (часть существует только во внутреннем ПО регулятора), атомарность данных, несколько источников, многофайловый архив строгой структуры, объёмы в миллионы строк и постоянные обновления таксономии.

Поэтому на практике вопрос стоит не в том, нужен ли инструмент, а в том, какой выбрать. Доступный бесплатный конвертер Банка России работает только с прежним форматом XBRL — для XBRL-CSV 2.0 он не подходит. Обещанное бесплатное ПО под новый формат ожидается лишь к концу 2026 года, после старта обязательных запросов, и даже оно решает только задачу преобразования, оставляя сбор данных, работу с точками входа и полноценную валидацию на стороне организации.

Что делать, если отчёт отклонён

Если в отчёте есть ошибки, приходит квитанция об отклонении. Это означает, что отчёт считается несданным, сроки продолжают идти, а причину ошибки не всегда легко понять. Квитанция перечисляет сработавшие контроли по их кодам с указанием таблицы и конкретных строк или колонок. Чтобы не пугаться технических формулировок, полезно держать под рукой расшифровку типовых кодов.

Код контроля Что проверяет (простыми словами)
fControlLogicalCsv2 Тип данных в колонке: ждут дату, а пришло число (или наоборот).
fControlLogicalCsv5 Соответствие маске: значение не укладывается в заданный шаблон.
fControlLogicalCsv6 / Csv7 Значение не входит в допустимый перечень: код, которого нет в справочнике.
fControlFormatCsvRFC4180 Нарушены правила формирования CSV: например, неверное число полей в строке.
fControlLogicalCsv102 Нарушен запрет на пустые колонки данных.
fControlLogicalCsv103 Нарушен запрет на пустые строки (ячейки) данных.
fControlLogicalCsv3 Пустые значения по открытым осям (аналитическим разрезам), где это запрещено.
fControlLogicalCsv4 Дубли составных значений открытых осей — повторяющиеся строки, которые должны быть уникальны.

Топ причин отклонения

  • Несоответствие маске или типу — даты не в требуемом формате, число вместо строки, неверный код валюты, идентификатор не по маске.
  • Пустые строки и колонки — там, где регулятор запрещает пустоту.
  • Дубли по открытым осям — отсутствие стабильных уникальных ключей события или сущности.
  • Нарушение структуры архива и наименований — произвольные имена файлов, неверная вложенность, проблемы с mapping.json.

«Скрытые» ошибки. Банк России более пяти лет применяет дополнительные внутренние программы проверки, поэтому отчёт может не пройти по контролю, который не был очевиден заранее. Хорошая практика — иметь дополнительную валидацию на своей стороне ещё до отправки.

Как снизить риск отклонения

  • Используйте инструмент с дополнительной валидацией помимо штатных контролей регулятора.
  • Готовьте и валидируйте отчётность заранее, не оставляя всё на последний день.
  • Следите за обновлениями контрольных соотношений — или выбирайте инструмент, который обновляет их за вас.

Отдельная ситуация — ошибочные контрольные соотношения самого регулятора: он обновляет их в течение года и иногда выпускает некорректные. Если вы уверены, что контроль ошибочный, не нужно молча игнорировать ошибку — к пакету прикладывается шаблон-пояснение, а при необходимости пояснительная записка или аудиторское заключение. Это фиксирует вашу позицию и даёт основание рассмотреть отчёт.

Частые вопросы о подготовке и валидации

Что такое ассершен в квитанции об отклонении?
Так Банк России называет конкретное контрольное соотношение (ошибку); у каждого есть свой номер. Удобные инструменты показывают рядом с номером расшифровку причины на русском языке, а не только технический код вида fControlLogicalCsv5.

Почему отчёт не проходит, хотя данные «в порядке»?
Чаще всего дело в форматах: даты в неверном виде, число вместо строки, значение вне справочника, дубли по открытым осям или нарушение структуры архива. SQL-валидация регулятора находит такие несоответствия и отклоняет отчёт.

Сколько времени реально занимает подготовка?
При настроенной интеграции и готовом маппинге — дни. Без них, с ручным сбором данных из нескольких систем и несколькими циклами исправления ошибок, подготовка легко выходит за отведённые 10 рабочих дней.

XBRLCA закрывает весь путь: от интеграции с источниками до подписанного пакета →