АПИ для бухгалтерской отчётности — bo.nalog.gov.ru
Получайте по ИНН карточку организации и историю бухгалтерской отчётности по периодам из государственного информационного ресурса БФО ФНС. Метод возвращает структурированные данные JSON.
Подключение и параметры
Базовый адрес — https://api-sudodelo.torkndgov.ru. Получите ключ пользователя по инструкции «Открытое API системы СУДиДЕЛО». Полные схемы полей доступны в Swagger, раздел BoNalog.
GET /api/BoNalog/organizations/{inn}?apiKey=YOUR_API_KEY&refresh=false
| Поле / параметр | Описание |
|---|---|
inn | Обязательный параметр пути, строка из 10 цифр для юридического лица или 12 цифр для ИП. Передавайте без пробелов и разделителей. |
apiKey | Обязательный query-параметр: API KEY пользователя (GUID). |
refresh | Необязательный query-параметр: true или false. По умолчанию false. Значение true запрашивает обновление с портала, обходя срок кеширования и кеш отсутствующих записей. |
Допустимый формат ИНН не гарантирует наличия записи в ресурсе БФО. Метод принимает и 12-значный ИНН, но наличие отчётности ИП не обещается: если запись не найдена, возвращается 404.
Пример запроса
Пример curl рассчитан на Bash. Замените YOUR_API_KEY своим ключом, а ИНН — ИНН нужного субъекта. Ключ не следует размещать в общедоступных ссылках или журналах.
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/BoNalog/organizations/5903117707" \
--data-urlencode "apiKey=YOUR_API_KEY" \
--data-urlencode "refresh=false"
Для принудительного обновления замените refresh=false на refresh=true. Даже при таком запросе проверяйте meta.source: при недоступности портала могут вернуться ранее сохранённые данные.
Что возвращается
Успешный ответ — один JSON-объект, без пагинации. Имена полей сохраняются в snake_case. Необязательные значения могут быть null, списки — пустыми. Отсутствующее значение не следует считать нулём.
| Поле / параметр | Описание |
|---|---|
inn | ИНН на верхнем уровне, вне organization. |
organization | Карточка организации. |
bfo | Массив записей бухгалтерской отчётности по периодам. |
meta | Источник и время получения данных; описание ниже. |
Поля organization
| Поле / параметр | Описание |
|---|---|
id | Идентификатор организации в ресурсе БФО. |
full_name, short_name | Полное и сокращённое название. |
ogrn, kpp | ОГРН и КПП строками. |
status, status_date | Статус и его дата. |
registration_date | Дата регистрации. |
address | Объект адреса: index, region, district, city, settlement, street, house, building, office. Все составляющие необязательны. |
okved2, okopf | Объекты {code, name}: вид деятельности и организационно-правовая форма. |
authorized_capital | Уставный капитал, число в рублях. |
active | Признак действующей организации: true / false / null. |
Поля элемента bfo
| Поле / параметр | Описание |
|---|---|
period | Отчётный период, строка. |
gain_sum | Выручка, число в тысячах рублей. |
actives | Активы, число в тысячах рублей. |
knb, knd | Коды формы / документа из источника, строки. |
publication | Числовой код публикации источника, передаётся как есть. |
actual_bfo_date | Дата актуальной бухгалтерской отчётности. |
published | Признак публикации: true / false / null. |
bfo_deadline_violation | Признак нарушения срока представления: true / false / null. |
published_correction_number, published_correction_date | Номер и дата опубликованной корректировки. |
is_cb | Признак is_cb источника, true / false / null. |
msp_category | Категория МСП в формате источника, строка. |
Даты передаются в формате даты и времени JSON и могут быть null. Важно различать единицы: gain_sum и actives — тысячи рублей, authorized_capital — рубли. Этот GET-метод возвращает карточку и историю показателей; скачивание файлов отчётности отдельным действием в нём не предусмотрено.
Кеш и актуальность данных
При обычном запросе свежие данные возвращаются из кеша. Срок кеширования указан в ответе, а не задаётся параметром запроса. Если портал недоступен, метод может вернуть сохранённые устаревшие данные с HTTP 200 и meta.source=stale. При отсутствии сохранённых данных в такой ситуации возвращается 503.
| Поле / параметр | Описание |
|---|---|
meta.source | portal — данные получены с портала; cache — из кеша; stale — сохранённые устаревшие данные. |
meta.fetched_at | Время получения данных. Проверяйте его вместе с source; это не обязательно время текущего запроса. |
meta.ttl_hours | Срок кеширования в часах. Не фиксируйте его в интеграции: используйте значение ответа. |
meta.portal | Адрес публичного портала-источника. |
Ошибки
| Поле / параметр | Описание |
|---|---|
400 | Неверный формат refresh, например текст вместо true / false. |
401 | API KEY отсутствует или недействителен. |
404 | По ИНН запись не найдена в соответствующем источнике. |
422 | Неверный формат ИНН: требуется строка из 10 или 12 цифр. |
502 | Ошибка связи, таймаут либо неожиданный ответ источника. Повторите запрос позже. |
503 | Портал недоступен и сохранённых данных нет. Повторите запрос позже. |
При ошибке проверяйте HTTP-код и сообщение ответа. Формат ошибки валидации параметров может отличаться от текстового сообщения ошибки источника. Схема успешного ответа применяется только к HTTP 200.