Створення компанії POST /api/external/company/create
Метод створює компанію у статусі DRAFT, з договором-офертою OFFER, створює чернетку ключа суперадміністратора та привʼязує компанію до зовнішньої системи.
Якщо компанія з таким кодом вже привʼязана до цієї зовнішньої системи, метод не створює нову компанію, а повертає існуючий обʼєкт ESSCompany.
Якщо компанія з таким кодом вже активна, але не привʼязана до цієї зовнішньої системи, метод повертає помилку company_already_active.
REQUEST
|
URL |
|
|
Метод запиту |
POST |
|
URL запиту |
/api/external/company/create |
|
Authorization |
|
|
Auth type |
API key |
|
Key / Value |
x-system-id - токен, отриманий при підключенні |
|
Headers |
|
|
Content-Type |
application/json |
|
REQUEST |
|
|
REQUEST Body |
info - дані суперадміністратора компанії, для якого буде створено чернетку ключа. company - обʼєкт з даними про компанію ESSCompany |
COMPANY:
| Поле | Формат | Тип 1 | Опис |
|---|---|---|---|
fullName |
string | M | Повна назва компанії/ФОП. |
shortName |
string | M | Скорочена назва компанії/ФОП. |
fullNameEN |
string/null | O | Повна назва англійською. |
shortNameEN |
string/null | O | Скорочена назва англійською. |
type |
enum | M | Тип компанії: COMPANY або SELF_EMPLOYED. |
code |
string | M | Для компанії — ЄДРПОУ, для ФОП — РНОКПП. |
ipn |
string/null | O | ІПН платника ПДВ, якщо є. |
country |
string/null | O | Країна. |
state |
string/null | O | Область/регіон. |
locality |
string/null | O | Населений пункт. |
street |
string/null | O | Адреса. |
ceoName |
string/null | O | ПІБ керівника. |
- 1 - Під визначенням колонки Тип поля мається на увазі скорочене позначення:
-
-
M (mandatory) — обов’язкові до заповнення поля;
-
O (optional) — необов’язкові (опціональні) до заповнення поля.
-
Поля договору у запиті передавати не потрібно. Сервер завжди створює компанію з:
| Поле | Значення |
|---|---|
status |
DRAFT |
agreemType |
OFFER |
agreemNumber |
null |
agreemDate |
0 |
INFO:
| Поле | Тип | Обовʼязкове | Опис |
|---|---|---|---|
fullName |
string | так | ПІБ суперадміністратора. |
ipn |
string | так | ІПН/РНОКПП суперадміністратора. |
phone |
string | так | Телефон у форматі 380XXXXXXXXX. |
email |
string | так | Email суперадміністратора. |
organizationUnit |
string/null | ні | Підрозділ для даних ключа. |
position |
string/null | ні | Посада для даних ключа. |
JSON приклад запиту
{
"company": {
"fullName": "ТОВАРИСТВО З ОБМЕЖЕНОЮ ВІДПОВІДАЛЬНІСТЮ \"ТЕСТ\"",
"shortName": "ТОВ \"ТЕСТ\"",
"fullNameEN": "TEST LLC",
"shortNameEN": "TEST LLC",
"type": "COMPANY",
"code": "00000000",
"ipn": null,
"country": "UA",
"state": "м. Київ",
"locality": "Київ",
"street": "вул. Тестова, 1",
"ceoName": "Іваненко Іван Іванович"
},
"info": {
"fullName": "Іваненко Іван Іванович",
"ipn": "0000000000",
"phone": "380671234567",
"email": "ivanenko@example.com",
"organizationUnit": "Адміністрація",
"position": "Директор"
}
}
RESPONSE
У відповідь повертаються статус 200 та обʼєкт ESSCompany.
CURL
curl -X POST 'https://host/api/external/company/create' \
-H 'x-system-id: 019eb581-307b-7562-8a1f-20227511e898' \
-H 'Content-Type: application/json' \
-d '{
"company": {
"fullName": "ТОВАРИСТВО З ОБМЕЖЕНОЮ ВІДПОВІДАЛЬНІСТЮ \"ТЕСТ\"",
"shortName": "ТОВ \"ТЕСТ\"",
"fullNameEN": "TEST LLC",
"shortNameEN": "TEST LLC",
"type": "COMPANY",
"code": "00000000",
"ipn": null,
"country": "UA",
"state": "м. Київ",
"locality": "Київ",
"street": "вул. Тестова, 1",
"ceoName": "Іваненко Іван Іванович"
},
"info": {
"fullName": "Іваненко Іван Іванович",
"ipn": "0000000000",
"phone": "380671234567",
"email": "ivanenko@example.com",
"organizationUnit": "Адміністрація",
"position": "Директор"
}
}'
Помилки
type |
Опис |
|---|---|
access_denied |
Невірний x-system-id або доступ за IP заборонений. |
empty_body |
Тіло запиту порожнє. |
invalid_body |
Некоректний JSON або відсутні обовʼязкові поля. |
company_already_active |
Компанія з таким кодом вже активна, але не привʼязана до цієї зовнішньої системи. |
unknown_company |
Компанію не знайдено в публічних реєстрах, але не коректний ІПН/РНОКПП |
wrong_ipn |
Користувач з таким телефоном вже існує, але має інший ІПН/РНОКПП. |
offline_exists |
Користувач з таким телефоном вже існує з offline-ідентифікацією. |