Максим

Максим

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

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

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

Методы

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

Поля перемещения

Поле Тип Описание
id int ID перемещения
num string Номер
date string Дата перемещения, YYYY-MM-DD
status int Статус: 0 План, 1 Отправлено, 2 Получено
source_storage_id int Склад, с которого перемещаются позиции
source_storage_name string Название склада-источника
target_storage_id int Склад, на который перемещаются позиции
target_storage_name string Название склада-получателя
cost float Себестоимость перемещенного по FIFO
price float Стоимость продуктов по цене продажи. У перемещения материалов 0
amount float Общее количество. null, если у позиций разные единицы измерения
lines int Количество строк
notes string Заметки

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

Одно перемещение переносит либо материалы, либо продукты. Поэтому строки передаются только в одном из массивов: materials или products. Чтобы переместить и то и другое, создайте два перемещения.

Оба склада должны хранить позиции этого типа: в настройках склада для материалов (или продуктов) не должно быть выбрано Нет. Какие позиции хранит склад, показывают поля materials и products в v1/storages/get_list. Склад-источник и склад-получатель должны различаться.

Статусы

Каждая строка перемещения состоит из двух движений: расхода на складе-источнике и прихода на складе-получателе. Статус определяет, какие из них уже произошли.

Код Статус Склад-источник Склад-получатель
0 План Расход запланирован Приход запланирован
1 Отправлено Позиции списаны Приход запланирован
2 Получено Позиции списаны Позиции поступили

Запланированное движение не меняет остаток, а учитывается в поле planned остатков. Новое перемещение создается в статусе из настройки Статус нового перемещения по умолчанию. Сменить статус можно методом v1/transfers/update_status.

Себестоимость

Позиции списываются со склада-источника по FIFO и поступают на склад-получатель с той же себестоимостью. Если остатка на источнике не хватает, перемещение все равно проводится, остаток источника уходит в минус.

Номер

Номер перемещения строковый и задается свободно. Если не передать его при создании, Controlata присвоит следующий по порядку: наибольший числовой номер плюс 1. Уникальность номера не проверяется.