Максим

Максим

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

Меняет статус заказа. От статуса зависит, списаны ли продукты и материалы заказа со склада (см. Заказы).

v1/orders/update_status.php

Параметры

Поле Тип Обязательное Описание
order_id int Да ID заказа
status int Да Новый статус: 0 Новый, 1 Упакован, 3 Отправлен, 4 Отменен
date_shipped string Нет Дата отправки. Учитывается при переходе в статус «Отправлен»

Статус 2 «Частично отправлен» через API не ставится: он появляется, когда часть заказа отгружают в интерфейсе Controlata.

Как работает

  • Остатки. В статусах «Упакован» и «Отправлен» продукты и материалы списываются со склада, в статусе «Новый» попадают в запланированное изменение остатка, в статусе «Отменен» на остатки не влияют. Остатки пересчитываются сразу.
  • Дата отправки. При переходе в «Отправлен» переданная date_shipped записывается в заказ, и списание датируется ею. Без date_shipped дата отправки не меняется. В других статусах date_shipped игнорируется.
  • Частичная отправка. Если заказ был в статусе «Частично отправлен», при переходе в «Отправлен» неотправленная часть оформляется еще одной отгрузкой.
  • Возврат из отправленных. При переходе из «Отправлен» или «Частично отправлен» в «Новый», «Упакован» или «Отменен» отгрузки заказа удаляются.
  • Тот же статус. Если заказ уже в переданном статусе, ничего не меняется, и метод отвечает успехом.

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

{
    "order_id": 43727,
    "status": 3,
    "date_shipped": "2026-10-08"
}

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

{
    "success": true
}

Ошибки

Ошибка Причина
No order_id in input Не передано обязательное поле (вместо order_id будет имя поля)
Invalid status value. Must be one of: 0, 1, 3, 4 Неверный статус, в том числе 2
Order not found or access denied Заказ не найден или удален
Date is not a valid date in format YYYY-MM-DD Неверная date_shipped