# Техническая справка: Парсер ЕИС Закупок (zakupki.gov.ru) **Версия:** 2.0 **Дата:** 26 марта 2026 **Статус:** Production-ready --- ## Содержание 1. [Что именно забирается с zakupki.gov.ru](#1-что-именно-забирается-с-zakupki-govru) 2. [Регламент получения данных](#2-регламент-получения-данных) 3. [Структура собираемых данных](#3-структура-собираемых-данных) 4. [Описание базы данных понятным языком](#4-описание-базы-данных-понятным-языком) 5. [Поддерживаемые законы](#5-поддерживаемые-законы) 6. [Отличия от 94-ФЗ](#6-отличия-от-94-фз) 7. [Реестр недобросовестных поставщиков РНП](#7-реестр-недобросовестных-поставщиков-рнп) 8. [Технические детали](#8-технические-детали) --- ## 1. Что именно забирается с zakupki.gov.ru ### 1.1. Источник данных **Официальное название:** Единая информационная система в сфере закупок (ЕИС) **Домен:** zakupki.gov.ru **SOAP API:** https://int44.zakupki.gov.ru/eis-integration/services/getDocsIP ### 1.2. Типы забираемых данных С системы забираются **извещения о закупках** — это официальные публикации о планируемых государственных и коммерческих закупках. **Конкретные данные:** | Тип данных | Что это | Пример | |------------|---------|--------| | **Извещения об электронных аукционах** | Публикации о начале приёма заявок на участие в электронных торгах | «Поставка офисной бумаги для нужд министерства» | | **Извещения об открытых конкурсах** | Публикации о конкурсах с оценкой не только цены, но и квалификации участников | «Выполнение работ по разработке проектной документации» | | **Извещения о запросах котировок** | Публикации о закупках с упрощённой процедурой для небольших сумм | «Закупка канцелярских товаров» | | **Извещения о запросах предложений** | Публикации о закупках, где важны не только цена, но и другие критерии | «Оказание услуг по техническому обслуживанию» | | **Планы закупок** | Документы с информацией о планируемых закупках на год | «План закупок министерства образования на 2026 год» | | **Информация о контрактах** | Сведения о заключённых контрактах по итогам закупок | «Контракт № 44-123 от 15.03.2026» | ### 1.3. Объём данных **По 44-ФЗ (государственные закупки):** - Извещения о проведении электронных процедур - Извещения о проведении конкурсов - Извещения о запросах котировок - Планы-графики закупок - Сведения о контрактах **По 223-ФЗ (закупки госкомпаний):** - Извещения о закупках товаров, работ, услуг - Планы закупок госкомпаний - Сведения о договорах **Дополнительно:** - Реестр недобросовестных поставщиков (РНП) - Информация о заказчике (наименование, ИНН, КПП, ОГРН) - Начальная цена контракта (НМЦ) - Сроки подачи заявок - Статус процедуры --- ## 2. Регламент получения данных ### 2.1. Способ получения **Основной метод (с 1 января 2025):** SOAP API через интеграционный шлюз | Параметр | Значение | |----------|----------| | **Протокол** | SOAP 1.2 over HTTPS | | **URL API** | https://int44.zakupki.gov.ru/eis-integration/services/getDocsIP | | **Формат запроса** | XML в SOAP-конверте | | **Формат ответа** | XML с ссылкой на ZIP-архив | | **Формат данных** | XML файлы в ZIP-архивах | | **Авторизация** | Токен через Госуслуги (ЕСИА) | **Устаревший метод (до 1 января 2025):** FTP доступ к открытым данным - **Статус:** Закрыт с 01.01.2025 - **Причина:** Переход на защищённый SOAP API ### 2.2. Процесс получения данных ``` ┌─────────────────────────────────────────────────────────────┐ │ Шаг 1. Авторизация │ │ Получение токена через Госуслуги │ │ URL: https://zakupki.gov.ru/pmd/auth/welcome │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ Шаг 2. Формирование SOAP-запроса │ │ Параметры: │ │ - Код региона (например, "77" = Москва) │ │ - Тип закона (44-ФЗ или 223-ФЗ) │ │ - Тип документа (аукцион, конкурс, котировки) │ │ - Период (год, месяц, день) │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ Шаг 3. Отправка запроса │ │ POST запрос на SOAP API │ │ Заголовок: individualPerson_token = <ваш токен> │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ Шаг 4. Получение ссылки на архив │ │ Ответ содержит URL для скачивания ZIP-архива │ │ Пример: https://zakupki.gov.ru/opendata/download/... │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ Шаг 5. Скачивание архива │ │ Загрузка ZIP-архива с XML-файлами │ │ Требуется тот же токен в заголовке │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ Шаг 6. Распаковка и парсинг │ │ Распаковка ZIP-архива │ │ Чтение и обработка XML-файлов │ │ Извлечение данных о закупках │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ Шаг 7. Сохранение в базу данных │ │ Запись данных в таблицу parsers_procurement │ │ Связывание с организациями по ИНН/ОГРН │ │ Фиксация в журнале загрузок │ └─────────────────────────────────────────────────────────────┘ ``` ### 2.3. Периодичность обновления **Автоматическая синхронизация:** - **Расписание:** Ежедневно в 02:00 (через Celery Beat) - **Режим:** Инкрементальная загрузка - **Логика:** Загрузка данных месяц за месяцем до текущей даты - **Остановка:** После 2 месяцев без новых данных **Ручная загрузка:** - По запросу пользователя через API - С указанием конкретного региона и периода - С возможностью точечного запроса по номеру закупки ### 2.4. Требования к доступу | Требование | Описание | |------------|----------| | **Учётная запись** | Действующая учётная запись Госуслуги (ЕСИА) | | **Токен** | individualPerson_token (получается после авторизации) | | **HTTPS** | Обязательное защищённое соединение | | **IP-адрес** | Желательно статический (для production) | | **Прокси** | Опционально (для обхода ограничений) | --- ## 3. Структура собираемых данных ### 3.1. Основная структура (понятным языком) **Представьте себе большую таблицу, где:** - **Каждая строка** — это одна закупка - **Каждый столбец** — это характеристика закупки (номер, название, заказчик, цена и т.д.) **Основные столбцы этой таблицы:** | Столбец | Что означает | Пример значения | |---------|--------------|-----------------| | **Реестровый номер** | Уникальный номер закупки в системе | 0888200000224000038 | | **Наименование** | Что именно закупают | «Поставка офисной бумаги» | | **Заказчик** | Кто покупает | ПАО СБЕРБАНК | | **ИНН заказчика** | Налоговый номер заказчика | 7707083893 | | **Цена контракта** | Максимальная сумма | 1 500 000 руб. | | **Дата публикации** | Когда объявили закупку | 15.03.2025 | | **Дата окончания** | До когда можно подать заявку | 25.03.2025 | | **Статус** | Текущее состояние | «Приём заявок» | | **Закон** | По какому закону проводится | 44-ФЗ или 223-ФЗ | ### 3.2. Техническая структура данных **DTO (Data Transfer Object) — промежуточный формат:** ``` Procurement (Закупка) ├── purchase_number: str # Реестровый номер ├── purchase_name: str # Наименование закупки ├── customer_inn: str # ИНН заказчика ├── customer_kpp: str # КПП заказчика ├── customer_ogrn: str # ОГРН заказчика ├── customer_name: str # Наименование заказчика ├── max_price: str # Начальная цена (строка) ├── currency_code: str # Код валюты (RUB) ├── placement_method: str # Способ определения поставщика ├── publish_date: str # Дата публикации ├── end_date: str # Дата окончания приёма заявок ├── status: str # Статус процедуры ├── law_type: str # Тип закона (44-ФЗ / 223-ФЗ) ├── purchase_object_info: str # Детальное описание объекта └── href: str # Ссылка на страницу в ЕИС ``` ### 3.3. Формат хранения **Исходный формат:** XML файлы в ZIP-архивах **Пример XML структуры:** ```xml 0888200000224000038 Поставка офисной бумаги 7707083893 770701001 1027700034460 ПАО СБЕРБАНК 1500000.00 RUB 2025-03-15 2025-03-25T18:00:00 Подача заявок ``` **Целевой формат:** Реляционная база данных PostgreSQL --- ## 4. Описание базы данных понятным языком ### 4.1. Общая концепция **Представьте библиотеку с несколькими книжными полками:** Каждая «полка» (таблица) хранит определённый тип информации: | Полка (таблица) | Что хранит | Аналогия | |-----------------|------------|----------| | **parsers_procurement** | Все закупки | Каталог карточек о закупках | | **parsers_load_log** | История загрузок | Журнал учёта поступлений | | **registers_organization** | Организации | Картотека компаний | | **core_backgroundjob** | Фоновые задачи | Список текущих дел | ### 4.2. Таблица «Закупки» (parsers_procurement) **Назначение:** Хранение информации о всех загруженных закупках **Структура (основные поля):** | Поле | Простое объяснение | Пример | |------|-------------------|--------| | **id** | Внутренний номер записи | 12345 | | **реестровый номер** | Официальный номер закупки | 0888200000224000038 | | **наименование** | Что закупают | «Поставка офисной бумаги» | | **ИНН заказчика** | Налоговый номер того, кто покупает | 7707083893 | | **КПП заказчика** | Код причины постановки на учёт | 770701001 | | **ОГРН заказчика** | Основной регистрационный номер | 1027700034460 | | **название заказчика** | Полное название организации | ПАО СБЕРБАНК | | **цена контракта (строка)** | Сумма как текст (символы, пробелы) | «1 500 000 руб.» | | **цена контракта (число)** | Сумма как число (для расчётов) | 1500000.00 | | **валюта** | В чём измеряется цена | RUB | | **способ определения** | Как выбирают поставщика | Электронный аукцион | | **дата публикации** | Когда объявили | 15.03.2025 | | **дата окончания** | До когда подавать заявку | 25.03.2025 | | **статус** | Что сейчас происходит | Приём заявок | | **тип закона** | 44-ФЗ или 223-ФЗ | 44-ФЗ | | **объект закупки** | Подробное описание | «Бумага офисная формата А4, 80 г/м²» | | **ссылка** | Адрес страницы в интернете | https://zakupki.gov.ru/... | | **код региона** | Где происходит закупка | 77 (Москва) | | **год данных** | За какой год данные | 2025 | | **месяц данных** | За какой месяц данные | 3 (март) | | **организация из реестра** | Ссылка на карточку организации | 456 | | **дата создания** | Когда запись добавили | 26.03.2026 10:30 | | **дата обновления** | Когда последний раз меняли | 26.03.2026 12:45 | **Правила хранения:** 1. **Уникальность:** Реестровый номер не может повторяться 2. **Связи:** Запись может быть связана с организацией из справочника 3. **Индексы:** Для быстрого поиска по ИНН, номеру, дате ### 4.3. Таблица «Журнал загрузок» (parsers_load_log) **Назначение:** Учёт всех операций по загрузке данных **Простое объяснение:** Это как дневник, куда записывается: - Когда была загрузка - Откуда загружали - Сколько записей добавили - Успешно или с ошибкой | Поле | Объяснение | Пример | |------|------------|--------| | **batch_id** | Номер партии загрузки | 123 | | **источник** | Откуда грузили | procurements (закупки) | | **количество** | Сколько записей добавили | 150 | | **статус** | Как прошло | success (успешно) | | **ошибка** | Что пошло не так (если было) | (пусто, если успешно) | | **дата создания** | Когда загружали | 26.03.2026 02:00 | **Источники данных:** - `procurements` — Госзакупки (ЕИС) - `industrial` — Сертификаты промышленного производства - `manufactures` — Реестр производителей - `inspections` — Реестр проверок - `fns_reports` — Бухгалтерская отчётность ФНС ### 4.4. Таблица «Организации» (registers_organization) **Назначение:** Справочник организаций (заказчиков, поставщиков) **Связь с закупками:** Одна организация может быть указана во многих закупках | Поле | Объяснение | Пример | |------|------------|--------| | **ИНН** | Налоговый номер | 7707083893 | | **ОГРН** | Регистрационный номер | 1027700034460 | | **Название** | Полное наименование | ПАО СБЕРБАНК | | **Тип** | Заказчик / Поставщик | Заказчик | ### 4.5. Таблица «Фоновые задачи» (core_backgroundjob) **Назначение:** Отслеживание длительных операций **Простое объяснение:** Как список дел с отметками о выполнении | Поле | Объяснение | Пример | |------|------------|--------| | **ID задачи** | Уникальный номер | abc-123-def | | **Название** | Что делаем | parse_procurements | | **Статус** | В процессе / Готово / Ошибка | in_progress | | **Прогресс** | Сколько сделано (%) | 50 | | **Сообщение** | Комментарий | «Загрузка за март 2025...» | | **Результат** | Итог работы | {"saved": 150} | ### 4.6. Взаимосвязь таблиц ``` ┌─────────────────────────┐ │ parsers_procurement │ │ (Закупки) │ │ │ │ customer_inn ────────┐ │ │ customer_ogrn ────┐ │ │ │ registry_org_id ─┐│ │ │ └────────────────────┼──┼──┼─┘ │ │ │ │ │ │ ┌────────────┘ │ │ │ │ │ ▼ │ │ ┌───────────────────┐ │ │ │ registers_ │ │ │ │ organization │◄──┘ │ │ (Организации) │◄────┘ │ │ │ inn │ │ ogrn │ │ name │ └───────────────────┘ ┌─────────────────────────┐ │ parsers_load_log │ │ (Журнал загрузок) │ │ │ │ batch_id ─────────────►│ связывается с │ source │ закупками по номеру └─────────────────────────┘ ┌─────────────────────────┐ │ core_backgroundjob │ │ (Фоновые задачи) │ │ │ │ task_id │ отслеживает выполнение │ status │ загрузок │ progress │ └─────────────────────────┘ ``` --- ## 5. Поддерживаемые законы ### 5.1. 44-ФЗ — Федеральный закон «О контрактной системе» **Полное название:** Федеральный закон от 05.04.2013 № 44-ФЗ **Официальное название:** «О контрактной системе в сфере закупок товаров, работ, услуг для обеспечения государственных и муниципальных нужд» **Кто закупает:** - Государственные органы (министерства, ведомства) - Бюджетные учреждения (школы, больницы, университеты) - Муниципальные образования (городские администрации) - Государственные корпорации и компании **Что регулирует:** - Планирование закупок (планы-графики) - Размещение извещений о закупках - Проведение конкурентных процедур (аукционы, конкурсы) - Заключение контрактов - Исполнение контрактов - Мониторинг и аудит закупок - Отчётность заказчиков **Основные процедуры:** - Электронный аукцион (наиболее распространённый) - Открытый конкурс - Запрос котировок (для небольших сумм) - Запрос предложений - Закрытые процедуры (для гостайны) **Финансирование:** - Федеральный бюджет - Региональные бюджеты - Местные бюджеты - Внебюджетные средства государственных организаций ### 5.2. 223-ФЗ — Федеральный закон о закупках госкомпаний **Полное название:** Федеральный закон от 18.07.2011 № 223-ФЗ **Официальное название:** «О закупках товаров, работ, услуг отдельными видами юридических лиц» **Кто закупает:** - Государственные корпорации (Росатом, Ростех) - Компании с государственным участием (Газпром, Роснефть) - Субъекты естественных монополий (РЖД, Транснефть) - Бюджетные учреждения за счёт грантов и пожертвований - Организации, осуществляющие регулируемые виды деятельности **Что регулирует:** - Планирование закупок (планы закупок) - Размещение извещений - Выбор поставщика - Заключение договоров - Отчётность о закупках **Особенности:** - Больше свободы в выборе процедуры - Меньше жёстких требований по сравнению с 44-ФЗ - Заказчики сами утверждают положение о закупке ### 5.3. Сравнение законов | Критерий | 44-ФЗ | 223-ФЗ | |----------|-------|--------| | **Заказчики** | Госорганы, бюджетники | Госкомпании, естественные монополии | | **Финансирование** | Бюджет | Собственные средства | | **Жёсткость** | Жёсткое регулирование | Более гибкий | | **Процедуры** | Строго определённые | Заказчик выбирает сам | | **Планирование** | Планы-графики | Планы закупок | | **Отчётность** | В ЕИС | В ЕИС (сокращённая) | | **Контроль** | ФАС, Казначейство | Внутренний контроль | --- ## 6. Отличия от 94-ФЗ ### 6.1. Историческая справка **94-ФЗ** — Федеральный закон от 21.07.2005 № 94-ФЗ **Действовал:** с 1 января 2006 по 31 декабря 2013 **Заменён:** 44-ФЗ с 1 января 2014 ### 6.2. Ключевые отличия | Аспект | 94-ФЗ (2006–2013) | 44-ФЗ (с 2014) | |--------|-------------------|----------------| | **Область регулирования** | Только размещение заказов (закупки) | Полный цикл контрактной системы | | **Планирование** | Не было обязательного | Планы-графики обязательны | | **Нормирование** | Отсутствовало | Нормативы затрат обязательны | | **Мониторинг** | Не был регламентирован | Система мониторинга | | **Аудит** | Выборочный | Обязательный аудит | | **Реестр контрактов** | Частичный | Полный реестр контрактов | | **Электронные процедуры** | Начинали внедряться | Полностью электронные | | **Акты приёмки** | Не отслеживались | Электронное актирование | | **Реестр недобросовестных поставщиков** | Был | Расширен и усовершенствован | ### 6.3. Эволюция законодательства ``` 94-ФЗ (2006–2013) │ │ Только закупки │ Минимум планирования │ Бумажные процедуры │ ▼ 44-ФЗ (2014–настоящее время) │ │ Полный цикл: │ 1. Планирование (планы-графики) │ 2. Размещение извещений │ 3. Проведение процедур │ 4. Заключение контракта │ 5. Исполнение контракта │ 6. Актирование приёмки │ 7. Мониторинг исполнения │ │ Полностью электронные процедуры │ Интеграция с другими системами │ ▼ Развитие (постоянные изменения) │ │ Усиление контроля │ Цифровизация │ Интеграция с ГИС ``` ### 6.4. Почему 44-ФЗ называют «контрактной системой» **44-ФЗ регулирует весь жизненный цикл:** 1. **Планирование** - Заказчик составляет план закупок на 3 года - Формирует план-график на год - Обосновывает необходимость закупки 2. **Размещение извещения** - Публикация в ЕИС - Указание всех требований - Свободный доступ для всех участников 3. **Проведение процедуры** - Подача заявок в электронном виде - Рассмотрение первых частей - Проведение аукциона/оценка конкурсов - Рассмотрение вторых частей 4. **Заключение контракта** - Подписание в электронной форме - Размещение в реестре контрактов - Обеспечение исполнения 5. **Исполнение контракта** - Поставка товаров/выполнение работ - Приёмка комиссией - Оплата 6. **Актирование** - Электронные акты приёмки - Интеграция с системой «Электронный бюджет» 7. **Мониторинг** - Контроль сроков исполнения - Отслеживание платежей - Выявление нарушений **94-ФЗ регулировал только этапы 2–4** (размещение, проведение, заключение). --- ## 7. Реестр недобросовестных поставщиков (РНП) ### 7.1. Что такое РНП **Официальное название:** Реестр недобросовестных поставщиков (подрядчиков, исполнителей) **Назначение:** Список организаций и ИП, которые уклонились от заключения контракта или расторгли контракт в одностороннем порядке **URL:** https://zakupki.gov.ru/epz/dishonestsupplier/search/results.html ### 7.2. Основания для включения в РНП | Основание | Описание | |-----------|----------| | **Уклонение от заключения контракта** | Победитель не подписал контракт в срок | | **Непредоставление обеспечения** | Не предоставил обеспечение исполнения контракта | | **Расторжение по инициативе поставщика** | Поставщик сам расторг контракт (через суд) | | **Существенное нарушение контракта** | Нарушение условий, выявленное заказчиком | ### 7.3. Последствия включения в РНП **Срок действия:** 2 года с даты включения **Ограничения:** - Нельзя участвовать в государственных закупках по 44-ФЗ - Нельзя участвовать в закупках по 223-ФЗ (для многих заказчиков) - Ограничения при участии в концессионных соглашениях ### 7.4. Поддерживаемые законы в РНП РНП включает информацию о недобросовестных поставщиках по: | Закон | Описание | |-------|----------| | **44-ФЗ** | Государственные и муниципальные заказчики | | **223-ФЗ** | Госкомпании и субъекты естественных монополий | | **ПП РФ-615** | Постановление Правительства о капитальном ремонте | ### 7.5. Структура данных РНП **Поля для загрузки:** | Поле | Описание | Пример | |------|----------|--------| | **Номер записи** | Уникальный номер в реестре | 0123456789 | | **Дата включения** | Когда внесли в реестр | 15.03.2025 | | **Наименование организации** | Название компании | ООО «Ромашка» | | **ИНН** | Налоговый номер | 7701234567 | | **ОГРН** | Регистрационный номер | 1027700123456 | | **Основание** | Почему включили | Уклонение от заключения контракта | | **Заказчик** | Кто инициировал включение | Министерство образования | | **Номер закупки** | По какой закупке уклонились | 0888200000224000038 | | **Срок действия** | До когда действует запись | 15.03.2027 | | **Закон** | 44-ФЗ / 223-ФЗ / ПП-615 | 44-ФЗ | ### 7.6. Интеграция с основной системой **Связь с закупками:** - По ИНН организации - По номеру закупки - По дате включения **Использование:** - Проверка контрагентов перед участием в закупке - Исключение недобросовестных поставщиков из списка потенциальных - Анализ рисков при выборе поставщика --- ## 8. Технические детали ### 8.1. Архитектура системы ``` ┌─────────────────────────────────────────────────────────────┐ │ Пользовательский интерфейс │ │ (REST API / Django Admin) │ └─────────────────────────────────────────────────────────────┘ │ │ HTTP запрос ▼ ┌─────────────────────────────────────────────────────────────┐ │ Celery (фоновые задачи) │ │ parse_procurements │ sync_procurements │ │ └──────┬────────────┴────────────┬────────────────────────┤ │ ▼ ▼ │ │ BackgroundJob (прогресс) │ │ │ ParserLoadLog (аудит) │ │ └─────────────────────────────────────────────────────────────┘ │ │ Вызов сервиса ▼ ┌─────────────────────────────────────────────────────────────┐ │ Сервисный слой │ │ ProcurementService │ │ - сохранение закупок (пакетная загрузка) │ │ - поиск последней даты загрузки │ │ - поиск по ИНН, по номеру закупки │ │ │ │ RegistryOrganizationResolver │ │ - поиск организаций по ИНН/ОГРН │ └─────────────────────────────────────────────────────────────┘ │ │ Запрос данных ▼ ┌─────────────────────────────────────────────────────────────┐ │ Клиентский слой │ │ ZakupkiClient │ │ - SOAP API запросы │ │ - скачивание ZIP-архивов │ │ - парсинг XML │ │ - нормализация данных │ │ │ │ BaseHTTPClient │ │ - HTTP запросы │ │ - поддержка прокси │ └─────────────────────────────────────────────────────────────┘ │ │ SOAP API / HTTPS ▼ ┌─────────────────────────────────────────────────────────────┐ │ zakupki.gov.ru │ │ SOAP API: int44.zakupki.gov.ru │ │ Веб-сайт: zakupki.gov.ru │ │ Токен: через Госуслуги (ЕСИА) │ └─────────────────────────────────────────────────────────────┘ ``` ### 8.2. Файловая структура проекта ``` src/apps/parsers/ ├── clients/ │ ├── base.py # Базовый HTTP-клиент │ └── zakupki/ │ ├── __init__.py # ZakupkiClient (основной клиент) │ └── schemas.py # DTO схемы данных ├── models.py # Django модели (таблицы БД) ├── services.py # Бизнес-логика ├── tasks.py # Celery задачи ├── views.py # REST API endpoints ├── serializers.py # Сериализаторы для API ├── admin.py # Django Admin интерфейс └── migrations/ ├── 0006_add_procurement_model.py ├── 0010_link_registry_organizations.py └── 0011_add_normalized_date_and_amount_fields.py ``` ### 8.3. API endpoints **Базовый URL:** `/api/v1/zakupki/` | Метод | Endpoint | Описание | |-------|----------|----------| | GET | `/api/v1/zakupki/` | Список закупок (с фильтрами) | | GET | `/api/v1/zakupki/{id}/` | Детали закупки | **Параметры фильтрации:** - `customer_inn` — фильтр по ИНН заказчика - `customer_ogrn` — фильтр по ОГРН заказчика - `purchase_number` — фильтр по номеру закупки - `law_type` — тип закона (44-FZ / 223-FZ) - `status` — статус закупки - `region_code` — код региона - `data_year` — год данных - `data_month` — месяц данных - `search` — поиск по названию/номеру/заказчику ### 8.4. Конфигурация **Переменные окружения:** ```bash # Токен ЕИС (получается через Госуслуги) ZAKUPKI_TOKEN=<ваш токен> # Прокси (опционально) PARSER_PROXIES=http://user:pass@proxy1:8080,http://user:pass@proxy2:8080 # PostgreSQL POSTGRES_HOST=localhost POSTGRES_PORT=5432 POSTGRES_DB=mostovik POSTGRES_USER=postgres POSTGRES_PASSWORD=<пароль> # Redis (очередь задач) CELERY_BROKER_URL=redis://localhost:6379/0 ``` ### 8.5. Периодические задачи **Celery Beat расписание:** | Задача | Расписание | Параметры | |--------|------------|-----------| | `sync_procurements` | Ежедневно в 02:00 | region_code="77", law_type="44" | ### 8.6. Мониторинг и логирование **Журнал загрузок (ParserLoadLog):** - Фиксация каждой загрузки - Количество сохранённых записей - Статус выполнения (успех/ошибка) - Сообщение об ошибке (если была) **Фоновые задачи (BackgroundJob):** - Отслеживание прогресса (0–100%) - Статус задачи (в процессе/завершено/ошибка) - Результат выполнения - Время начала и завершения --- ## Приложения ### Приложение А. Коды регионов РФ | Код | Регион | Код | Регион | |-----|--------|-----|--------| | 01 | Республика Адыгея | 77 | Москва | | 02 | Республика Башкортостан | 78 | Санкт-Петербург | | 03 | Республика Бурятия | 79 | Еврейская АО | | ... | ... | 99 | Все регионы | ### Приложение Б. Типы документов 44-ФЗ | Тип документа | Код в системе | Описание | |---------------|---------------|----------| | Электронный аукцион | epNotificationEF2020 | Извещение о проведении электронного аукциона | | Открытый конкурс | epNotificationOK2020 | Извещение о проведении открытого конкурса | | Запрос котировок | epNotificationZK2020 | Извещение о проведении запроса котировок | | Запрос предложений | epNotificationEP2020 | Извещение о проведении запроса предложений | ### Приложение В. Статусы закупок | Статус | Описание | |--------|----------| | Планирование | Формирование плана-графика | | Публикация извещения | Размещение извещения в ЕИС | | Подача заявок | Приём заявок от участников | | Рассмотрение заявок | Оценка первых частей | | Проведение аукциона | Торги на электронной площадке | | Заключение контракта | Подписание контракта | | Исполнение | Поставка товаров, выполнение работ | | Завершено | Контракт исполнен полностью | | Отменено | Закупка отменена заказчиком | ### Приложение Г. Примеры использования **Пример 1: Получение всех закупок заказчика по ИНН** ```bash curl -X GET "http://localhost:8000/api/v1/zakupki/?customer_inn=7707083893" -H "Authorization: Bearer " ``` **Пример 2: Поиск закупок по региону и закону** ```bash curl -X GET "http://localhost:8000/api/v1/zakupki/?region_code=77&law_type=44-FZ" -H "Authorization: Bearer " ``` **Пример 3: SQL-запрос для получения статистики** ```sql -- Сумма закупок по регионам за 2025 год SELECT region_code, COUNT(*) as количество, SUM(max_price_amount) as общая_сумма FROM parsers_procurement WHERE data_year = 2025 GROUP BY region_code ORDER BY общая_сумма DESC; ``` --- **Контакты для вопросов:** - **Документация:** `docs/Техническая справка ЕИС Закупки - 2.md` - **Код:** `src/apps/parsers/` - **Тесты:** `tests/apps/parsers/` **Дата актуализации:** 26 марта 2026