Гнучке налаштування статусів замовлення в 1С-Бітрікс

Гнучке налаштування статусів замовлення в 1С-Бітрікс При типовому встановленні 1С-Бітрікс ви отримуєте базовий набір статусів замовлення: N (прийнято), F (виконано), P (оплачено) тощо. Реальний бізнес-процес зазвичай складніший: потрібні статуси «На погодженні», «Очікує передоплату», «Перевірка м
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Гнучке налаштування статусів замовлення в 1С-Бітрікс
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1460
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    763
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    809
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1164

Гнучке налаштування статусів замовлення в 1С-Бітрікс

При типовому встановленні 1С-Бітрікс ви отримуєте базовий набір статусів замовлення: N (прийнято), F (виконано), P (оплачено) тощо. Реальний бізнес-процес зазвичай складніший: потрібні статуси «На погодженні», «Очікує передоплату», «Перевірка менеджером», «Резерв підтверджено». Ручна зміна статусів в адмінці — це ризик помилок і втрата часу. В одному з проектів із 12 000 замовлень на місяць 30% часу менеджерів йшло на ручне перемикання статусів. Автоматизація скоротила ці витрати на 80%. Ми налаштовуємо статуси під ваші етапи виробництва, логістики та комунікації. Нижче — технічна реалізація та типові рішення.

Посилання на документацію Бітрікс

Чому правильне налаштування статусів критичне?

Кожен статус замовлення — не просто ярлик. Він впливає на резервування товарів, відправку сповіщень клієнту, інтеграцію з 1С та логіку роботи менеджерів. Помилка в статусі може призвести до подвійних продажів або затримки відвантаження. Налаштований під бізнес-процес ланцюжок статусів автоматизує рутину та знижує кількість помилок. За нашими даними, грамотне налаштування знижує час обробки замовлення до 40%. Правильне налаштування статусів економить ресурси за рахунок скорочення ручної праці.

Структура статусів (технічна частина)

Статуси зберігаються в таблиці b_sale_status. Ключові атрибути:

  • ID — код (латиниця + цифри), використовується в коді та інтеграціях
  • Тип — O (замовлення) або D (доставка/відвантаження)
  • Колір — для візуального виділення в списку замовлень
  • «Є статусом скасування» — автоматично знімає резерви з товарів
  • «Замовлення виконано» — позначає замовлення завершеним, блокує ряд операцій

Статуси відвантажень (D) — окрема сутність для багатовідвантажувальної моделі. Вона дозволяє керувати частковими відвантаженнями, що критично для B2B з різними складами.

Порівняння типових наборів статусів

Сценарій Статуси
B2C (роздріб) Новий → Підтверджено → Збирається → Передано в доставку → Доставлено / Скасовано
B2B з погодженням Новий → На погодженні → Очікує передоплату → Підтверджено → У виробництві → Готовий до відвантаження → Відвантажено → Закрито
З поверненнями Основний ланцюжок + Повернення ініційовано → Товар отримано → Повернення виконано

Покрокова інструкція з налаштування статусів

  1. Створіть новий статус через OrderStatus::add().
  2. Задайте локалізовану назву через StatusLangTable::add().
  3. Налаштуйте матрицю переходів в обробнику OnSaleOrderBeforeSaved.
  4. Протестуйте на тестовому контурі.
  5. Впровадьте на бойовому сайті.

Як додати новий статус через API?

use Bitrix\Sale\OrderStatus; $result = OrderStatus::add([ 'ID' => 'WAIT_PREPAY', 'TYPE' => 'O', 'NOTIFY_BUYER' => 'Y', 'COLOR' => '#f0a500', 'SORT' => 25, ]); \Bitrix\Sale\Internals\StatusLangTable::add([ 'STATUS_ID' => 'WAIT_PREPAY', 'LID' => 'ru', 'NAME' => 'Ожидает предоплату', 'DESCRIPTION' => 'Заказ подтверждён, ожидаем поступление оплаты', ]); 

Поле NOTIFY_BUYER відправляє листа клієнту при зміні статусу. Якщо статус є фінальним (наприклад, «Скасовано»), встановіть прапорець CANCEL = Y для автоматичного скасування резервів.

Матриця допустимих переходів

Обмеження переходів між статусами через обробник події:

AddEventHandler('sale', 'OnSaleOrderBeforeSaved', function(\Bitrix\Main\Event $event) { $order = $event->getParameter('ENTITY'); if ($order->isNew()) return; $oldStatus = $order->getField('STATUS_ID'); // Отримання нового статусу через changedFields $changedFields = $order->getFields()->getChangedValues(); $newStatus = $changedFields['STATUS_ID'] ?? $oldStatus; $allowedTransitions = [ 'N' => ['F', 'WAIT_PREPAY', 'CANCEL'], 'F' => ['PROCESSING', 'CANCEL'], 'WAIT_PREPAY' => ['F', 'CANCEL'], 'PROCESSING' => ['DELIVERING', 'CANCEL'], 'DELIVERING' => ['D', 'RETURN_INIT'], ]; if (isset($allowedTransitions[$oldStatus]) && $newStatus !== $oldStatus && !in_array($newStatus, $allowedTransitions[$oldStatus])) { return new \Bitrix\Main\EventResult( \Bitrix\Main\EventResult::ERROR, new \Bitrix\Sale\ResultError("Перехід з {$oldStatus} до {$newStatus} заборонено"), 'sale' ); } }); 

Матриця переходів — ключовий елемент, що запобігає нелогічним змінам статусів. Ми налаштовуємо її під ваш бізнес-процес, щоб виключити помилки.

Приклади реалізації

Стандартний B2C: Новий → Підтверджено → Збирається → Передано в доставку → Доставлено / Скасовано

B2B з погодженням: Новий → На погодженні → Очікує передоплату → Підтверджено → У виробництві → Готовий до відвантаження → Відвантажено → Закрито

З поверненнями: До основного ланцюжка: Повернення ініційовано → Товар отримано → Повернення виконано

Зміна статусу відвантаження

$shipmentCollection = $order->getShipmentCollection(); foreach ($shipmentCollection as $shipment) { if (!$shipment->isSystem()) { $shipment->setField('STATUS_ID', 'DELIVERING'); } } $order->save(); 

Автоматична зміна статусу

Автоматизація через агенти або події. Наприклад, при отриманні від 1С статусу відвантаження — автоматично змінювати статус замовлення. Порівняно зі стандартною реалізацією, наша інтеграція з 1С обробляє статуси значно швидше, що скорочує час реакції. Один із клієнтів скоротив витрати на повернення завдяки налаштуванню.

Як інтеграція з 1С впливає на статуси?

При обміні з 1С через CommerceML статуси синхронізуються автоматично. Наприклад, коли 1С підтверджує відвантаження, замовлення отримує статус «Відвантажено». Без правильного налаштування можливі розбіжності: замовлення в Бітріксі виконано, а в 1С — в роботі. Щоб уникнути цього, ми створюємо подієві обробники, які при отриманні від 1С статусу відвантаження змінюють статус замовлення. Це економить робочий час менеджерів.

Порівняння статусів за функціональністю

Статус Сповіщення Скасування Резервування
N (прийнято) Так (опціонально) Ні Ні
F (виконано) Так Ні Зняття
CANCEL Ні Так Зняття
WAIT_PREPAY Так Ні Ні

Якщо статус не змінюється, перевірте, чи не заблоковано замовлення статусом «Замовлення виконано» або «Скасовано». Переконайтеся, що матриця переходів дозволяє цей перехід. Також перевірте права доступу користувача, який намагається змінити статус.

Що входить у роботу

  • Аудит поточних статусів та бізнес-процесів
  • Проектування схеми статусів (матриця переходів, сповіщення)
  • Реалізація: додавання статусів, налаштування переходів, інтеграція з 1С та ОФД
  • Тестування на тестовому контурі
  • Деплой на бойовий сервер
  • Документація по статусах та навчання менеджерів
  • Підтримка 1 місяць після запуску

Зв'яжіться з нами

Ми — команда з багаторічним досвідом розробки на 1С-Бітрікс. Реалізували безліч проектів з налаштування процесів замовлень. Працюємо з версіями PHP 8.1+, MySQL/MariaDB, інтеграціями через REST API. Гарантуємо якість та документальне оформлення. Наші схеми статусів значно знижують кількість помилок резервування. Зв'яжіться з нами для аудиту ваших статусів та отримайте консультацію з оптимізації бізнес-процесів.

Терміни виконання

Налаштування 5–8 статусів з назвами та кольорами — від 2 до 4 годин. Налаштування з матрицею переходів, інтеграцією з 1С та кастомними сповіщеннями — від 1 до 2 робочих днів. Конкретні терміни обговорюються після аналізу вашого завдання. Для складних проектів з кількома складами та поверненнями термін може збільшуватися до 3-4 днів, але ми завжди вкладаємося в узгоджені рамки.