Картка компанії за ЄДРПОУ на JavaScript: fetch і відображення
Оновлено 26.09.2026
Картка компанії потрібна майже в кожному бізнес-інтерфейсі: у CRM, у кабінеті бухгалтера, у сервісі перевірки контрагентів, у формі реєстрації партнера. Людина вводить код ЄДРПОУ і бачить назву, стан, керівника, засновників. Initask API повертає картку юридичної особи з Єдиного державного реєстру одним запитом `GET https://dani.initask.com/v1/company/{edrpou}`. Нижче приклад на JavaScript і практичні поради, як перетворити відповідь на зрозумілий блок інтерфейсу.
Приклад
```javascript const r = await fetch("https://dani.initask.com/v1/company/00032129", { headers: { Authorization: `Bearer ${process.env.INITASK_KEY}` }, }); const { ok, data, error } = await r.json(); console.log(r.headers.get("X-RateLimit-Remaining"), data); ```
Код виконується на сервері, ключ читається зі змінної середовища. Браузер звертається до вашого сервера і отримує вже оброблену картку. Код 00032129 з прикладу належить АТ «Ощадбанк».
Шапка картки
У шапці показуйте скорочену назву великим шрифтом, під нею повну назву і організаційно-правову форму. Для прикладу це АТ "ОЩАДБАНК", повна назва АКЦІОНЕРНЕ ТОВАРИСТВО "ДЕРЖАВНИЙ ОЩАДНИЙ БАНК УКРАЇНИ" і форма ПРИВАТНЕ АКЦІОНЕРНЕ ТОВАРИСТВО. Поруч значок стану.
Значок стану
Поле `status` має одне з пʼяти значень латиницею: діюча, припинена, у процесі припинення, банкрут або невідомий стан. За ним зручно обирати колір значка, а текст брати з `status_label`, де стан уже написано українською, для прикладу «Зареєстровано». Так інтерфейсу не потрібен власний словник станів.
Дата реєстрації і капітал
Дата реєстрації лежить у полі `registered`, для прикладу 1991-12-31. Статутний капітал у полі `capital` подано так, як у реєстрі: рядком з десятковою комою. Не перетворюйте його на число без потреби, бо формат реєстру може містити пробіли чи інші роздільники. Для показу досить рядка як є.
Люди в картці
Підписанти, засновники і бенефіціари приходять переліками рядків. Кожен рядок записаний так, як у реєстрі, інколи з посадою, датою чи поясненням через крапку з комою. Показуйте ці рядки як є, кожен окремим пунктом. Розбирати їх на частини ризиковано: формат рядка в реєстрі не завжди однаковий.
Замість імені перелік бенефіціарів може містити причину відсутності, як у прикладі: кінцевих бенефіціарних власників, що відповідають статусу, немає. Інтерфейс має показати це пояснення, бо для перевірки контрагента воно важливе.
Окремий перелік містить відокремлені підрозділи. У великих компаній їх багато, тому в картці варто показувати кількість і розгортати перелік за кліком.
Припинення і банкрутство
Поля про припинення і банкрутство порожні для діючої компанії. Якщо в них є дані, це найважливіша інформація картки, і її варто показати на самому верху червоною плашкою. Людина, яка відкрила картку контрагента, має побачити припинення чи банкрутство раніше за будь-що інше.
Помилки і коди
| Код | Помилка | Коли |
|---|---|---|
| 400 | bad_request | код має символи, відмінні від цифр, або більше 8 знаків |
| 404 | not_found | компанії з таким кодом у реєстрі немає |
Код з 5-7 цифр шлюз доповнює нулями зліва, тому запит `/v1/company/32129` поверне ту саму компанію. Поле введення може приймати код без нулів. Для 404 показуйте людині прохання перевірити код. Відомості про ФОП цей ендпоінт не повертає: вони публікуються у відкритих даних ЄДР без коду РНОКПП.
Актуальність і кеш
Поле `updated` показує, коли запис оновлено в реєстрі компаній Initask, який завантажує відкритий набір ЄДР з data.gov.ua. Покажіть цю дату дрібним шрифтом унизу картки. Шлюз тримає відповідь у кеші одну годину, і повторні відкриття тієї самої картки протягом години ліміт не витрачають.
| План | Запитів | Ціна, грн на місяць |
|---|---|---|
| Безкоштовний | 100 на добу | 0 |
| Старт | 10000 на місяць | 990 |
| Про | 100000 на місяць | 2990 |
Після вичерпання ліміту приходить 429 з заголовком `Retry-After`. Картка в такому разі може показати збережену раніше версію з датою.
Що робити
- Перенесіть запит на сервер і віддавайте інтерфейсу підготовлену картку.
- Показуйте стан з `status_label` і обирайте колір значка за `status`.
- Виводьте підписантів, засновників і бенефіціарів рядками як є.
- Поруч з карткою додайте судові справи, тендери і перевірку IBAN; для пошуку за назвою підключіть пошук компаній.
- Опис полів у документації компанії за ЄДРПОУ, тарифи на сторінці Ціни і ліміти.
Питання і відповіді
Як отримати дані компанії за кодом ЄДРПОУ в JavaScript?
Запит fetch з сервера до https://dani.initask.com/v1/company/{edrpou} з ключем у заголовку Authorization повертає картку з назвами, формою, станом, датою реєстрації, капіталом, підписантами, засновниками і бенефіціарами.
Як показати стан компанії українською?
Беріть текст з поля status_label, де стан уже написано українською, а колір значка обирайте за полем status.
Чи можна передати код ЄДРПОУ без нулів на початку?
Так, код з 5-7 цифр шлюз доповнює нулями зліва: запит /v1/company/32129 поверне ту саму компанію, що й 00032129.