Перейти к основному содержимому

Как сверить данные СФР и ФФОМС с Казначейством и «Электронным бюджетом»

Назначение и аудитория​

Инструкция нужна аналитику, который сравнивает доходы и расходы государственных внебюджетных фондов в ведомственных публикациях, ГИИС «Электронный бюджет» и отчётах Казначейства. Результат — таблица расхождений с объяснимым периметром, а не механическое совпадение любых одноимённых сумм.

Входные данные​

Инструменты​

  • браузер для проверки паспорта и методики;
  • Python 3 с pandas и openpyxl либо табличный редактор;
  • текстовый журнал допущений: период, единицы, тип бюджета, включение трансфертов.

Шаги​

  1. Зафиксируйте фонд, финансовый год, отчётную дату и единицу измерения.
  2. Выпишите определения строк ведомственного файла; не сопоставляйте по одному названию.
  3. В отчёте Казначейства выберите тот же бюджет фонда, а не федеральный бюджет и не консолидированный итог всех ГВФ.
  4. В ГИИС ЭБ проверьте паспорт набора, период и версию; сохраните исходный URL.
  5. Нормализуйте суммы в рубли и даты к одной отчётной границе.
  6. Пометьте межбюджетные трансферты отдельным флагом. Для консолидированного итога исключите встречные потоки; для сверки одного бюджета сохраните их.
  7. Сопоставьте строки по экономическому смыслу и КБК, если код опубликован. Если кода нет, оставьте связь как методическую, а не точную.
  8. Рассчитайте абсолютное и относительное расхождение и запишите возможную причину: лаг, методика, корректировка, разные периметры.

Воспроизводимый пример​

Минимальная проверка уже подготовленных таблиц fund.csv и treasury.csv с колонками key и amount:

import pandas as pd

fund = pd.read_csv("fund.csv")
treasury = pd.read_csv("treasury.csv")

check = fund.merge(treasury, on="key", how="outer", suffixes=("_fund", "_treasury"))
check[["amount_fund", "amount_treasury"]] = check[
["amount_fund", "amount_treasury"]
].fillna(0)
check["difference"] = check["amount_fund"] - check["amount_treasury"]
check.to_csv("reconciliation.csv", index=False)
print(check.reindex(check["difference"].abs().sort_values(ascending=False).index).head(20))

key должен быть создан вручную по согласованной методике, например fund|year|report_date|kbk|metric. Не стройте его только из текста строки.

Проверка результата​

  • сумма строк после нормализации совпадает с контрольным итогом исходного файла;
  • фонд, период и единица измерения одинаковы в обеих сторонах сравнения;
  • трансферты не удалены из сверки отдельного бюджета и не задвоены в консолидированном итоге;
  • каждое крупное расхождение имеет ссылку на исходный документ и объяснение либо статус не объяснено;
  • повторный запуск на сохранённых входах даёт тот же reconciliation.csv.

Ограничения и типовые ошибки​

  • публикации СФР по согласованному перечню показателей не тождественны форме казначейской отчётности;
  • на сайте ФФОМС не подтверждён единый стабильный массовый финансовый API, поэтому документный маршрут требует ручного инвентаря версий;
  • ТФОМС и ФФОМС — разные бюджеты;
  • закон о бюджете, уточнённый план и кассовое исполнение отвечают на разные вопросы;
  • округление до миллионов может создавать видимое расхождение с построчной выгрузкой в рублях.

Связанные страницы​