API ЕГРЮЛ, ЕГРИП, доходы и расходы, налоги, количество сотрудников в XML, JSON и csv бесплатно

Надоело нам, что открытые данные по сути закрытые, и мы решили их открыть. Подробнее читайте в статье на Хабре.

Вторую статью Хабр не пропустил из-за следующего абзаца: "С началом войны РФ с Украиной мои статьи потеряли смысл на фоне этого ада. Продуктивно работать почти невозможно. Кто-то потерял дом, кто-то детей. Миллионы беженцев." Вторую статью "ЕГРЮЛ, ЕГРИП в виде архивов ФНС, csv, xml, json (API) и анализ данных" с оригинальным введением выложил на Дзен. Можете написать в соцсетях Хабра комменты с требованием отменить цензуру. У Хабра уже подгорает хорошо, из-за того, что не все готовы продавать свои убеждения и удалять свои мысли по их хотелкам. Хабр ещё снёс статью Записки киевского врача, которая за 1.5 часа получила 77 лайков и 4500 прочтений.

Отличия от других

  1. Самое простое и самое быстрое API, вам не нужна ни регистрация, ни токен.
  2. Данные в оригинальном виде ФНС России. Вы видите, например, дату выписки и историю всех записей.
  3. Все данные открыты.
  4. Без рекламы.
  5. Всё бесплатно.
  6. Различные виды поиска.

Как пользоваться

Все организации, у которых есть ИНН, доступны по следующим ссылкам с ИНН: Организации также доступны по ссылкам с ОГРН. Все индивидуальные предприниматели, доступны по следующим ссылкам с ИНН физических лиц: Индивидуальные предприниматели также доступны по ссылкам с ОГРНИП.
При запросе данных XML и JSON либо посылайте заголовок "Accept-encoding: gzip" либо добавляйте расширение .gz

Примеры кода

Первый вариант с расширением .gz и без отправки заголовка Accept-encoding: gzip, но с декомпрессией на вашей стороне:
$content = gzdecode(file_get_contents('https://egrul.itsoft.ru/7730588444.json.gz'));
$json = json_decode($content,TRUE);
print_r($json);
Второй вариант с отправкой заголовка "Accept-encoding: gzip\r\n" и декомпрессией на вашей стороне:
$opts = [
    "http" => [
        "method" => "GET",
        "header" => "Accept-encoding: gzip\r\n"       
    ]
];

$context = stream_context_create($opts);
$content = gzdecode(file_get_contents('https://egrul.itsoft.ru/7730588444.xml', false, $context));
$xml = simplexml_load_string($content, 'SimpleXMLElement', LIBXML_NOBLANKS);
$xml = json_decode(json_encode($xml),TRUE);
print_r($xml);

$content = gzdecode(file_get_contents('https://egrul.itsoft.ru/7730588444.json', false, $context));
$json = json_decode($content,TRUE);
print_r($json);
Третий вариант менее предпочтительный без расширения .gz, без отправки заголовка Accept-encoding: gzip и без декомпрессии тоже можно, но лучше так не делать, если нагрузка канала пойдёт к гигабиту, то всё же придётся данные сжимать, так как сжатие уменьшает их в 5 раз.
$content = file_get_contents('https://egrul.itsoft.ru/7730588444.json');
$json = json_decode($content,TRUE);
print_r($json);
Что и как отдаётся с какими расширениями и заголовками всегда можете посмотреть на нашем проекте Проверка HTTP-заголовков веб-сервера.

Данные для реквизитов договоров, счетов, актов, счетов-фактур

Также можно получить краткий набор данных для реквизитов договоров, счетов, актов, счетов-фактур https://egrul.itsoft.ru/short_data/?7730588444.
Там уже данные адреса преобразованы из различных форматов в один. И подготовлена фамилия с инициалами.

Источники данных

ЕГРЮЛ за 150 000р. в год, бухотчётность с сайта Росстата, доходы и расходы, налоги, применяемые налоговые режимы, средне списочная численность, МСП, получатели поддержки, ОКВЭД2.

Оригинальные архивы ЕГРЮЛ, ЕГРИП

Эти архивы ФНС РФ предоставляет за 300 000р. в год:

Мы написали претензию ФНС с требованием выложить все архивы с 2002 года и получили отписку. Сейчас в данных обстоятельствах нет моральных сил с ними судиться и биться за развитие российской экономики. Пока взяли паузу. Может война закончится, а может экономика. И тогда вопрос отпадёт сам собой.

В папках _FULL все данные на начало года. Далее изменения.

Обработанные данные в форматах csv

Архивы ЕГРЮЛ, ЕГРИП и обновления к ним в формате csv.

min_num, max_num, cdate_num, update_at_num — это сокращённая форма даты в виде двухбайтового целого. Дата в номер и обратно преобразуется по следующим правилам:
$d = date(‘Y-m-d’);
$d_num = (intval($d[2] . $d[3])<<9) + (intval($d[5] . $d[6])<<5) + intval($d[8] . $d[9]);
$d2 = '20' . sprintf("%'.02d", $d_num>>9) . '-' . sprintf("%'.02d", ($d_num>>5)&15) . '-' . sprintf("%'.02d", $d_num&31);

Эти поля нужны для реализации Медленно меняющихся измерений (от англ. Slowly Changing Dimensions, SCD) типа 2. min_num или cdate_num хранят дату начала действия этой строки, например, для руководителя — это дата когда человек стал руководителем организации. max_num, updated_at_num — дата последней выписки где данный факт был обнаружен. Если дата org_chief.max_num меньше org.max_num, то org_chief.max_num дата, когда человек пропал из руководителей в ЕГРЮЛ. Реально он мог перестать быть руководителем чуть раньше.

Актуальные данные надо соединять по ogrn и org.max_num. Записи в соединённых таблицах с max_num < org.max_num хранят историю по организации.

org2.crc32 — это уникальный ключ crc32(kpp, short_name, full_name, street, house, corpus, apartment). В org2 хранится история изменения юридического адреса и наименования организации.

По остальным таблицам полагаю должно быть всё понятно из названия полей и документации к данным (см. Приказ ФНС России от 18.01.2021 N ЕД-7-14/17@).

Отчёты и анализ данных ЕГРЮЛ, ЕГРИП

  1. Топ управляющих организаций по количеству организаций, которыми они управляют.
  2. Топ руководителей организаций по количеству организаций, которыми они руководят.
  3. Топ предпринимателей по количеству организаций, которые они учредили.
  4. Топ организаций по количеству организаций, которые они учредили.
  5. Организации, где учредитель РФ.
  6. Организации, где есть учредитель иностранное лицо.
  7. Организации с оборотом от миллиарда рублей за 2020 год.
В отчёте “Организации с оборотом от миллиарда рублей за 2020 год” вы можете видеть, что налогов ряд крупных организации платят около нуля, сотрудников в некоторых тоже крайне мало в пересчёте на приход. Если сравнить с малым бизнесом, где налоговая нагрузка порядка 3-7%, то крупные компании явно недоплачивают и работают там какие-то многорукие и многоголовые, что на одного сотрудника бывает миллиарды прихода.

Сотрудничество и услуги

Если вам нравятся открытые данные бесплатно, без регистрации и рекламы в XML и JSON, то поддержите наш проект. Нам нужно:
  1. собрать 150 000р. на выкуп у ФНС данных ЕГРЮЛ на 2023 год.
  2. собрать 150 000р. на выкуп у ФНС данных ЕГРИП на 2023 год.
  3. 200 000р. на второй сервер с быстрыми дисками. Сейчас у проекта всего один сервер с одним быстрым диском 256Гб.
  4. финансировать разработку расширения функциональных возможностей, добавление других реестров данных.
  5. готовы принять в дар парсеры других реестров данных, архивы ЕГРЮЛ за 2002-2017 годы, ЕГРИП за 2002-2020 годы.
Если вам не трудно:

Реквизиты

Банковская карта для пожертвований: 5536 9141 0700 1889. Назначение платежа: пожертвование.

Юрлица и ИП могут как просто пожертвовать денег, так и купить у нас услуги по обработке данных: ООО "ИТСОФТ", ИНН 7730588444, БИК 044525999, Р/с 40702810201500019616.

Спонсоры

Авторы и исполнители

Контакты

Будем рады получить замечания, предложения и вопросы в комментариях к статье на Дзене, т.к. Хабр забанил нас за протест против войны.