Максим

Максим

Обновлено Oct 6, 2026

Инвентаризации: сверка фактических остатков на складе с остатками в Controlata. Вы передаете фактическое количество, а Controlata сравнивает его с ожидаемым остатком и корректирует остаток на разницу. Через API инвентаризации можно создавать, редактировать и удалять, менять их статус, получать список и данные инвентаризации.

Пути методов указаны относительно базового адреса API, а общие для всех методов правила (авторизация, формат запросов, частичное редактирование, строки операций, постраничная выдача) описаны в статьях Обзор API и Общие правила.

Методы

Метод Что делает
v1/audits/add Создает инвентаризацию
v1/audits/edit Изменяет строки инвентаризации
v1/audits/delete Удаляет инвентаризацию
v1/audits/update_status Меняет статус инвентаризации
v1/audits/get_list Возвращает список инвентаризаций
v1/audits/get_entry Возвращает инвентаризацию со строками

Поля инвентаризации

Поле Тип Описание
id int ID инвентаризации
num int Номер. Присваивается автоматически: следующий по порядку
date string Дата инвентаризации, YYYY-MM-DD
status int Статус: 0 План, 1 Проведена
storage_id int Склад, на котором проводится инвентаризация
storage_name string Название склада
lines int Количество строк
surplus_cost float Излишки по себестоимости
shortage_cost float Недостачи по себестоимости, отрицательное число
total_cost float Итог по себестоимости: surplus_cost + shortage_cost
surplus_price float Излишки по цене продажи. Считается только для продуктов, у материалов 0
shortage_price float Недостачи по цене продажи, отрицательное число. Только для продуктов
total_price float Итог по цене продажи: surplus_price + shortage_price

Материалы или продукты

Одна инвентаризация считает либо материалы, либо продукты на одном складе. Строки передаются только в одном из массивов: materials или products. Тип определяется при создании и потом не меняется.

Ожидаемый и фактический остаток

  • Фактический остаток (actual) передаете вы: сколько позиций насчитали на складе.
  • Ожидаемый остаток (expected) рассчитывает Controlata: сумма всех проведенных движений позиции на этом складе по дату инвентаризации включительно. Запланированные операции не учитываются. Передавать ожидаемый остаток не нужно.

Ожидаемый остаток фиксируется в строке при ее добавлении. Если потом появится операция с более ранней датой, ожидаемый остаток уже добавленной строки не пересчитается.

Разница между фактом и ожиданием становится корректировкой остатка:

  • излишек (факт больше) добавляется на склад. Материалы оцениваются по цене из карточки материала. Продукты по себестоимости последнего прихода на этот склад до даты инвентаризации, а если приходов не было, по себестоимости из карточки продукта;
  • недостача (факт меньше) списывается со склада по FIFO.

Статусы

Код Статус Остатки
0 План Корректировки только запланированы: остаток не меняется, разница учитывается в поле planned остатков
1 Проведена Остатки скорректированы на разницу

Новая инвентаризация создается в статусе из настройки Статус новой инвентаризации по умолчанию. Сменить статус можно методом v1/audits/update_status.

Что можно изменить

После создания у инвентаризации меняются только строки: их фактические остатки, заметки и состав. Дату, склад и тип изменить нельзя. Чтобы провести инвентаризацию на другую дату или на другом складе, удалите ее и создайте новую.