Редактирование перемещения

Максим

Максим

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

Изменяет перемещение. Меняются только переданные поля, остальные остаются прежними. Подробнее о частичном редактировании в статье Общие правила.

v1/transfers/edit.php

Параметры

Поле Тип Обязательное Описание
transfer_id int Да ID перемещения
materials array Нет Перемещаемые материалы: id или sku и amount
products array Нет Перемещаемые продукты: id или sku и amount
source_storage_id int Нет Склад, с которого перемещаются позиции
target_storage_id int Нет Склад, на который перемещаются позиции
num string Нет Номер
date string Нет Дата перемещения, YYYY-MM-DD
notes string Нет Заметки

Если передан materials или products, строки заменяются целиком. Строки передаются только в одном массиве, как в v1/transfers/add. Если не передан ни один массив, строки остаются прежними. Статус этим методом не меняется, для него есть v1/transfers/update_status.

Как работает

  • Пересчет. Перемещение проводится заново: прежние движения отменяются, строки списываются с источника по FIFO с текущими остатками. Статус сохраняется.
  • Тип перемещения меняется вместе со строками: передайте строки в другом массиве, например products вместо materials.
  • Склады проверяются, только если переданы склады или строки. Тогда оба склада, в том числе непереданный, должны существовать, различаться и хранить позиции типа перемещения. Поэтому перемещение со складом, который позже удалили, можно изменить, если не передавать склады и строки.

Пример запроса

{
    "transfer_id": 6967,
    "target_storage_id": 4005,
    "notes": "В магазин на Гагарина"
}

Пример ответа

{
    "success": true
}

Ошибки

Ошибка Причина
No transfer_id in input Не передан transfer_id
Transfer not found or access denied Перемещение не найдено или удалено
A transfer moves either materials or products. Create separate transfers Переданы и materials, и products
No products or materials in input Массивы строк переданы, но пустые
Product with id 512 not found Продукт не найден или удален
Amount must be greater than 0 for product with id 512 Количество не число или не больше 0 после округления
Storage ID is not set Склад равен 0 или пустой
Storage ID not found Склад не найден или удален
Source and target storage locations must be different Склады совпадают
Storage location 4005 does not store products Склад не хранит позиции этого типа
Date is not a valid date in format YYYY-MM-DD Неверный формат даты

Остальные ошибки строк такие же, как в v1/transfers/add.