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

Собираем донаты на выкуп данных ЕГРЮЛ у ФНС.

Надоело нам, что открытые данные по сути закрытые, и мы решили их открыть. Подробнее читайте в статье на Хабре. Вторую статью "ЕГРЮЛ, ЕГРИП в виде архивов ФНС, csv, xml, json (API) и анализ данных" с оригинальным введением выложил на Дзен.

Актуальность данных

2024-03-16 ООО "АВТО-ГИД"
2024-03-16 ООО "РЕМОНТИКА"
2024-03-16 ООО "ЯСТРЕБ"
2024-03-17 ИП Гутарович Ольга Владимировна
2024-03-17 ИП Пикашов Дмитрий Владимирович
2024-03-17 ИП Раннев Павел Владиславович

Статистика по годам

Количество новых организаций и ИП уверенно росло до 2011 года, а теперь наша экономика как...

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

  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. Организации, где учредитель РФ.
  8. Организации, где есть учредитель иностранное лицо.
  9. Организации с оборотом от миллиарда рублей за 2020 год.
  10. % женщин и мужчин среди предпринимателей, обороты, прибыль и налоги по регионам, ОКВЭД и на сотрудника.
В отчёте “Организации с оборотом от миллиарда рублей за 2020 год” вы можете видеть, что налогов ряд крупных организации платят около нуля, сотрудников в некоторых тоже крайне мало в пересчёте на приход. Если сравнить с малым бизнесом, где налоговая нагрузка порядка 3-7%, то крупные компании явно недоплачивают и работают там какие-то многорукие и многоголовые, что на одного сотрудника бывает миллиарды прихода.

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

Вы можете получить репликацию базы данных. Для репликации БД вы можете разместить свой сервер в нашем дата-центре или у нас взять сервер в аренду.

В 2021 году мы купили доступ за свои 150 000р. В 2022 собрали донатов 150 000р на доступ к ЕГРИП. В 2023 собрали 150 000р на доступ к ЕГРЮЛ на 2023 год. Если вы пользуетесь данными донатьте сколько не жалко. Важно, чтобы было видно что сбор идёт. Это подталкивает других людей донатить. Ссылку на новый сбор оставляю. Первые 150 000р пойдут на доступ к ЕГРЮЛ в 2024 году, но желательно собрать и 150 000р на ЕГРИП. Совсем в идеале бы ещё 200 000р на бухбалансы.

Если вам нравятся открытые данные бесплатно, без регистрации и рекламы в 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.

Можно закинуть донат оплатой картой через сервис тинькофф.

Bitcoin: bc1qnxxgtg49mcwh4f3fm6eu3h852plkj0qxxmu4uj
Ethereum: 0x718bCa1eBd7CBC9637Dcc4143f00EC57269Bf583
Toncoin UQChtCCASVUw14aUUziMknx6zGlLH43-PVeAY5thNgzpzXPi или в Телеграм @itsoft7

Спонсоры

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

Контакты

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

Вторую статью Хабр не пропустил из-за следующего абзаца: "С началом войны РФ с Украиной мои статьи потеряли смысл на фоне этого ада. Продуктивно работать почти невозможно. Кто-то потерял дом, кто-то детей. Миллионы беженцев." Можете написать в соцсетях Хабра комменты с требованием отменить цензуру. У Хабра уже подгорает хорошо, из-за того, что не все готовы продавать свои убеждения и удалять свои мысли по их хотелкам. Хабр ещё снёс статью Записки киевского врача, которая за 1.5 часа получила 77 лайков и 4500 прочтений.