АПИ для «Прозрачного бизнеса» — pb.nalog.ru

Получайте по ИНН карточку организации или ИП из «Прозрачного бизнеса» ФНС: сведения о регистрации, руководителях, участниках, видах деятельности, доходах и расходах, численности, налогах и задолженности.

Подключение и параметры

Базовый адрес — https://api-sudodelo.torkndgov.ru. Получите ключ пользователя по инструкции «Открытое API системы СУДиДЕЛО». Полные схемы полей доступны в Swagger, раздел PbNalog.

GET /api/PbNalog/organizations/{inn}?apiKey=YOUR_API_KEY&refresh=false
Поле / параметрОписание
innОбязательный параметр пути, строка из 10 цифр для юридического лица или 12 цифр для ИП. Передавайте без пробелов и разделителей.
apiKeyОбязательный query-параметр: API KEY пользователя (GUID).
refreshНеобязательный query-параметр: true или false. По умолчанию false. Значение true запрашивает обновление с портала, обходя срок кеширования и кеш отсутствующих записей.

Пример запроса

Пример curl рассчитан на Bash. Замените YOUR_API_KEY своим ключом, а ИНН — ИНН нужного субъекта. Ключ не следует размещать в общедоступных ссылках или журналах.

curl --fail --get "https://api-sudodelo.torkndgov.ru/api/PbNalog/organizations/7707083893" \
  --data-urlencode "apiKey=YOUR_API_KEY" \
  --data-urlencode "refresh=false"

Для принудительного обновления замените refresh=false на refresh=true. Даже при таком запросе проверяйте meta.source: при недоступности портала могут вернуться ранее сохранённые данные.

Что возвращается

Успешный ответ — один JSON-объект, без пагинации. Имена полей сохраняются в snake_case. Необязательные значения могут быть null, списки — пустыми. Отсутствующее значение не следует считать нулём.

Поле / параметрОписание
innИНН на верхнем уровне ответа, вне subject.
typeТип субъекта: organization — организация, individual — ИП.
subjectКарточка субъекта. Поля, неприменимые к его типу, могут быть null.
managersРуководители: cnt, inn, name, position.
participantsУчастники / учредители: cnt, inn, name.
okved2_exsДополнительные виды деятельности: code, name; поле type может отсутствовать по смыслу или быть null.
form1Финансовые результаты по годам: year, revenue, expense.
sschrСреднесписочная численность: year, value.
taxpayУплаченные налоги: year, kbk, kbk_name, sum.
offenseСведения о годах нарушений: year. Текущий ответ не передаёт дополнительные подробности и суммы штрафов.
arrearЗадолженность по периодам: year, period, kbk_name, sums, empty.
taxmodeНалоговые режимы по периодам: year, period, usn, ausn, psn, envd, eshn, spr, npd, empty. Признаки режимов — true / false / null.
metaИсточник и время получения данных; описание ниже.

Основные поля subject

Поле / параметрОписание
name_full, name_shortПолное и сокращённое название организации.
surname, name, patronymicФамилия, имя, отчество ИП.
reg_number, kppРегистрационный номер и КПП.
reg_date, record_date, registration_date, issue_dateДаты в строковом формате источника.
postal_index, address, address_rf, region, settlement, municipal_districtАдрес и его составляющие.
okved2Основной вид деятельности: code, name, type.
okopf_code, status, liquidatedКод организационно-правовой формы; статус {code, name}; признак ликвидации.
rsmp_category, rsmp_dateКатегория МСП и дата включения.
authorized_capital, capital_typeУставный капитал строкой и его тип; не путайте с числовым полем в BoNalog.
registration_event, code_ip_type, code_grazhdРегистрационное событие и коды характеристик ИП.
tax_officeНалоговый орган: region_code, region_name, code, name.
tax_regimeТекущие налоговые режимы и период: usn, ausn, psn, envd, eshn, spr, npd, year, period.
latestПоследние показатели: taxpay {sum, year}, form1 {revenue, expense, year}, sschr {value, year}, offense_year, arrear {year, period}. У ИП весь объект может быть null.
flagsКоды признаков источника: invalid, predo, pr_rafp, pr_zd, pr_otch, is_protch_przd, foreignorg, pr_liq. Передаются без дополнительной интерпретации.
linksСсылки источника: rsmppdf, egrulurl, gosregurl, puchdocurl.

Кеш и актуальность данных

При обычном запросе свежие данные возвращаются из кеша. Срок кеширования указан в ответе, а не задаётся параметром запроса. Если портал недоступен, метод может вернуть сохранённые устаревшие данные с HTTP 200 и meta.source=stale. При отсутствии сохранённых данных в такой ситуации возвращается 503.

Поле / параметрОписание
meta.sourceportal — данные получены с портала; cache — из кеша; stale — сохранённые устаревшие данные.
meta.fetched_atВремя получения данных. Проверяйте его вместе с source; это не обязательно время текущего запроса.
meta.ttl_hoursСрок кеширования в часах. Не фиксируйте его в интеграции: используйте значение ответа.
meta.portalАдрес публичного портала-источника.

Ошибки

Поле / параметрОписание
400Неверный формат refresh, например текст вместо true / false.
401API KEY отсутствует или недействителен.
404По ИНН запись не найдена в соответствующем источнике.
422Неверный формат ИНН: требуется строка из 10 или 12 цифр.
502Ошибка связи, таймаут либо неожиданный ответ источника. Повторите запрос позже.
503Портал недоступен и сохранённых данных нет. Повторите запрос позже.

При ошибке проверяйте HTTP-код и сообщение ответа. Формат ошибки валидации параметров может отличаться от текстового сообщения ошибки источника. Схема успешного ответа применяется только к HTTP 200.