Поставщики: компании и люди, у которых вы закупаете материалы и продукты. Через API их можно создавать, редактировать и удалять, получать список и данные поставщика.

Пути методов указаны относительно базового адреса API, а общие для всех методов правила (авторизация, формат запросов, частичное редактирование, постраничная выдача) описаны в статьях [Обзор API](https://developers.controlata.ru/hc/api-docs/articles/overview) и [Общие правила](https://developers.controlata.ru/hc/api-docs/articles/rules).

## Методы

| Метод | Что делает |
|---|---|
| [v1/suppliers/add](https://developers.controlata.ru/hc/api-docs/articles/suppliers-add) | Создает поставщика |
| [v1/suppliers/edit](https://developers.controlata.ru/hc/api-docs/articles/suppliers-edit) | Изменяет поставщика |
| [v1/suppliers/delete](https://developers.controlata.ru/hc/api-docs/articles/suppliers-delete) | Удаляет поставщика |
| [v1/suppliers/get_list](https://developers.controlata.ru/hc/api-docs/articles/suppliers-get-list) | Возвращает поставщиков компании |
| [v1/suppliers/get_entry](https://developers.controlata.ru/hc/api-docs/articles/suppliers-get-entry) | Возвращает данные поставщика |

## Поля поставщика

| Поле | Тип | Описание |
|---|---|---|
| id | int | ID поставщика |
| type | int | Тип поставщика (см. ниже) |
| name | string | Наименование юрлица или имя ИП и физлица |
| email | string | Электронная почта |
| phone | string | Телефон |
| address | string | Юридический адрес |
| inn | string | ИНН |
| kpp | string | КПП |
| ogrn | string | ОГРН |
| agreement | string | Договор |
| manager_name | string | Руководитель |
| manager_post | string | Должность руководителя |
| notes | string | Заметки |

Файлы поставщика через API не передаются и не возвращаются.

## Тип поставщика

| Значение | Тип |
|---|---|
| 1 | Юридическое лицо |
| 2 | Индивидуальный предприниматель |
| 3 | Физическое лицо |

Если тип не передан при создании, поставщик создается юридическим лицом (1). Тип можно передать числом или строкой: 2 или "2".

API сохраняет все переданные поля независимо от типа. Но в карточке поставщика Controlata показывает только поля, подходящие типу:

* ИНН, КПП и юридический адрес: у юрлица и ИП;
* ОГРН, руководитель и должность: только у юрлица.

## Реквизиты

ИНН, КПП и ОГРН сохраняются в том виде, в котором переданы: их формат и контрольные цифры не проверяются. Длина поля: ИНН до 12 символов, КПП 9, ОГРН до 15.

Уникальность имени и реквизитов тоже не проверяется. Если в Controlata появились дубли, выделите их в списке поставщиков и нажмите **Объединить**.

## Поставщики материалов и продуктов

Поставщиков можно указать в карточках материалов и продуктов: поле suppliers в методах [v1/materials/add](https://developers.controlata.ru/hc/api-docs/articles/materials-add), [v1/materials/edit](https://developers.controlata.ru/hc/api-docs/articles/materials-edit), [v1/products/add](https://developers.controlata.ru/hc/api-docs/articles/products-add) и [v1/products/edit](https://developers.controlata.ru/hc/api-docs/articles/products-edit) принимает ID поставщиков. При удалении поставщик убирается из всех карточек.

## Поставщик из поставки

Создавать поставщика заранее не обязательно. В [v1/purchases/add](https://developers.controlata.ru/hc/api-docs/articles/purchases-add) вместо supplier_id можно передать supplier_name и другие поля поставщика с префиксом supplier_ (supplier_type, supplier_email, supplier_phone, supplier_inn и так далее). Тогда Controlata создаст нового поставщика вместе с поставкой.

Каждая поставка с supplier_name создает нового поставщика, даже если поставщик с таким именем уже есть. Для постоянных поставщиков сохраните ID на своей стороне и передавайте supplier_id.
