-10%Переходите к нам от другого подрядчика — дадим скидку на первый этап работ

Согласование и статусы заказов в B2B-портале на 1С-Битрикс

Согласование и статусы заказов в B2B-портале на 1С-Битрикс: маршрут утверждения, роли закупщика, кредитный лимит

В рознице всё просто: человек складывает товар в корзину, оплачивает картой и ждёт доставку. Он сам себе и закупщик, и бухгалтер, и утверждающий. В B2B этой простоты нет. Заказ в оптовой компании собирает один сотрудник, а отвечает за деньги другой; закупку на сто тысяч рублей нельзя «просто оформить», её нужно утвердить; отсрочка платежа держится на кредитном лимите, а лимит нельзя превышать без ведома финансовой службы. Всё это превращает оформление заказа из одного клика в маленький бизнес-процесс с ролями, проверками и статусами.

Эта статья — практический разбор того, как выстроить согласование заказов b2b в портале на 1С-Битрикс: кто участвует в утверждении заказа со стороны покупателя, чем черновик отличается от заявки, как устроены статусы заказа b2b и маршрут согласования, как работает многоступенчатое утверждение по сумме, кредитный лимит и проверка дебиторки, и на чём всё это реализуется — на статусах заказа, правах и модуле «Бизнес-процессы». Материал из нашей практики разработки B2B-порталов и личных кабинетов — по делу, без обещаний «гарантированного порядка в закупках».

Коротко

  • Согласование заказа в B2B переносит в портал реальное правило компании: закупщик готовит заказ, руководитель его утверждает.
  • Внутри одного контрагента живут роли закупщика: закупщик, утверждающий, бухгалтер, наблюдатель — с разными правами.
  • Заказ проходит статусы: черновик → на согласовании → утверждён (или отклонён) → в работе → отгружен → закрыт.
  • Глубина утверждения зависит от суммы и кредитного лимита: мелочь — сам, крупное — по маршруту, сверх лимита — отдельно.
  • Реализуется на связке групп и прав, статусов заказа и модуля «Бизнес-процессы», а производственные статусы приходят из 1С обменом.

Почему в B2B заказ проходит согласование

Пока компания маленькая, закупки делает собственник или один менеджер — и согласовывать нечего: кто заказывает, тот и отвечает за деньги. Но как только закупки становятся регулярными, а сумм и людей больше, появляется естественное разделение. Заказ готовит тот, кто знает потребность, — снабженец, менеджер магазина, инженер. А распоряжается бюджетом другой — руководитель, финансовый директор, собственник. Между «я хочу заказать» и «мы за это заплатим» возникает точка контроля, и это и есть согласование.

Важно понимать: согласование заказов — это не про сайт и не про Битрикс. Это управленческий процесс, который существует в компании независимо от того, есть у неё B2B-портал или нет. До портала он живёт в почте, звонках и мессенджерах: закупщик собирает список, отправляет руководителю на почту, тот отвечает «ок» или «убери вот это», закупщик пересобирает и звонит поставщику. Медленно, без истории, с потерями. Портал не выдумывает этот процесс, а переносит его в удобный интерфейс, где всё зафиксировано и прозрачно.

Зачем компании-покупателю нужен контроль над заказами — если назвать честно, без пафоса:

Есть и вторая сторона — интерес поставщика. Ему тоже выгодно, чтобы заказ пришёл уже согласованным: меньше отмен, меньше «ой, это мы не заказывали», меньше споров по оплате. Поэтому хороший B2B-портал даёт согласование как удобство для покупателя, а не как барьер. Если процесс утверждения мешает закупщику работать, он начнёт обходить портал — и вся затея потеряет смысл.

Главная мысль: портал не создаёт процесс согласования, а оцифровывает уже существующий. Поэтому проектирование всегда начинается не с интерфейса, а с вопроса «как именно у вас сейчас утверждаются закупки — кто, что и на какой сумме решает». Если этого не выяснить, портал автоматизирует хаос вместо порядка.

Роли в организации-покупателе

Ключевое отличие B2B от розницы в том, что «покупатель» — это не человек, а организация. У одного контрагента может быть несколько сотрудников, и каждый работает со своей частью процесса. Свести их в одну учётную запись — верный способ потерять контроль: непонятно, кто заказал, все видят всё, согласование негде провести. Поэтому в основе согласования лежит ролевая модель внутри контрагента.

Типовой набор ролей закупщика в B2B-портале:

РольЧто делаетЧто видит и может
ЗакупщикСобирает и оформляет заказыКаталог, цены, корзину, свои заказы; отправляет на согласование
Утверждающий (руководитель)Принимает решение по заявкеЗаявки на утверждение, состав и сумму; кнопки «утвердить»/«отклонить»
БухгалтерРаботает с деньгами и документамиБаланс, счета, акты, сверку; оплату заказа, но не оформление
Администратор контрагентаУправляет сотрудниками компанииВсе разделы, список пользователей, назначение ролей и лимитов
НаблюдательСмотрит без действийЗаказы и статусы для контроля, без права утверждать и заказывать

Эти роли — не жёсткая догма, а конструктор. В крупной компании ролей может быть больше, с несколькими уровнями утверждающих; в маленькой — закупщик и утверждающий часто один человек, и тогда согласование просто выключают. Один сотрудник может совмещать роли: администратор нередко он же и главный утверждающий. Смысл ролевой модели не в том, чтобы усложнить, а в том, чтобы отразить реальное распределение ответственности у конкретного партнёра.

Технически роли внутри дилера — это несколько пользователей, привязанных к одному контрагенту, с разграничением прав на действия и разделы кабинета. Мы подробно разбираем механику подчинённых учётных записей в статье про личный кабинет дилера на 1С-Битрикс — здесь же нам важно, что именно эти роли определяют, кто в согласовании готовит заявку, а кто её утверждает.

Контрагент ООО «Партнёр» Закупщик собирает заказ видит цены шлёт на утверждение Утверждающий решает по заявке видит сумму утвердить / отклонить Бухгалтер баланс и оплата счета, акты не оформляет заказ Наблюдатель только просмотр заказы, статусы без действий
Схема: под одним контрагентом живут несколько сотрудников с разными ролями — закупщик готовит заказ, утверждающий решает, бухгалтер работает с деньгами, наблюдатель контролирует.

Корзина-заявка и черновик заказа

В рознице корзина живёт минуты: набрал — оформил — забыл. В B2B корзина превращается в рабочий документ, который закупщик собирает днями, сохраняет, дополняет и только потом отправляет дальше. Поэтому в согласовании появляется понятие черновика заказа — состояния, когда заявка ещё формируется и ни к чему не обязывает.

Разложим по шагам, как заказ рождается и превращается в заявку:

  1. Сбор корзины. Закупщик наполняет корзину из каталога, по артикулу или загрузкой из Excel. На этом этапе цены персональные, наличие видно, но заказ ещё не оформлен.
  2. Сохранение черновика. Собранная корзина сохраняется как черновик: можно закрыть портал и вернуться завтра, ничего не потеряв. Черновиков может быть несколько — под разные нужды.
  3. Проверка и уточнение. Закупщик сверяет количества, кратность упаковок, суммы. Портал подсказывает, что изменилось в ценах или наличии с момента сборки.
  4. Отправка на согласование. Закупщик нажимает «Отправить на утверждение». Заказ фиксируется и меняет статус — теперь это заявка, и его состав заморожен до решения утверждающего.
  5. Решение по заявке. Утверждающий видит заявку, состав и сумму. Он утверждает её, отклоняет или возвращает на доработку с комментарием.

Принципиальный момент — что можно и чего нельзя делать с заявкой после отправки. Пока заказ в черновике, закупщик правит его свободно. Как только заявка ушла на согласование, её нельзя молча менять: если разрешить закупщику тихо добавить позицию в уже отправленную заявку, теряется весь смысл контроля — утверждающий одобрит одно, а поставщику уйдёт другое. Поэтому правильная логика такая: любое изменение отправленной заявки возвращает её в черновик или на повторное согласование. Это защищает и покупателя, и поставщика.

По делу: черновик и заявка — это два статуса одного заказа, а не два разных объекта. Не заводите «отдельную сущность заявки» рядом с заказом — это плодит рассинхрон. Заказ один, он просто движется по статусам, и «черновик» — первый из них, а «на согласовании» — следующий.

Жизненный цикл заказа и статусы

Статус заказа — это его текущее состояние в общем конвейере. В рознице статусов немного: оформлен, оплачен, отправлен, доставлен. В B2B с согласованием их больше, потому что к производственным статусам добавляются статусы утверждения. Их важно спроектировать как единую цепочку, а не как две несвязанные схемы.

Типовой конвейер статусов заказа b2b с согласованием:

СтатусЧто означаетКто отвечает
ЧерновикКорзина собирается, заказ не отправленЗакупщик
На согласованииЗаявка отправлена, ждёт решенияУтверждающий
Отклонён / на доработкуУтверждающий вернул заявку с комментариемЗакупщик
УтверждёнРешение принято, заказ можно передавать в работуПортал → 1С
Принят в работуЗаказ ушёл в 1С, идёт обработка и резервПоставщик / 1С
В сборке / отгруженТовар собирается или уехал к покупателюСклад / 1С
ЗакрытЗаказ выполнен и оплачен1С

Обратите внимание на границу в середине цепочки. Статусы до «утверждён» включительно — это зона согласования, они живут на стороне портала и управляются ролями покупателя. Статусы после «принят в работу» — это зона исполнения, они ведутся в 1С и возвращаются на сайт обменом. Заказ пересекает эту границу один раз — в момент передачи в учётную систему, и именно на этом стыке чаще всего теряются заказы, если обмен спроектирован небрежно.

Ещё одна тонкость — тупиковые и возвратные статусы. «Отклонён» не обязательно конец: обычно это возврат в черновик, чтобы закупщик исправил и отправил снова. А вот «отменён» — уже финал. Хорошая схема статусов явно описывает все переходы: из какого статуса в какой можно попасть и кто имеет на это право. Без такой карты переходов появляются «зависшие» заказы, которые непонятно как двигать дальше.

Конвейер статусов заказа Черновик закупщик На согласовании утверждающий Утверждён портал В работе 1С Отгружен склад / 1С Отклонён на доработку отклонённая заявка возвращается закупщику в черновик
Схема: заказ движется по конвейеру статусов от черновика до отгрузки; отклонённая заявка не пропадает, а возвращается закупщику на доработку.

Маршрут согласования: закупщик → утверждающий → в работу

Маршрут согласования — это путь, который проходит заявка от закупщика до передачи в работу. В самом простом виде он линейный: один готовит, один утверждает, дальше в 1С. Но даже эта простая цепочка требует чёткого описания, кто на каком шаге что делает и какие развилки возможны.

Базовый маршрут выглядит так:

  1. Закупщик собирает и отправляет заявку. Заказ уходит из черновика в статус «на согласовании», система определяет, кто утверждающий для этого закупщика и этой суммы.
  2. Утверждающий получает задачу. Ему приходит уведомление, в кабинете появляется заявка с составом, суммой и данными закупщика. Он видит всё, что нужно для решения.
  3. Утверждающий принимает решение. Три исхода: утвердить, отклонить совсем или вернуть на доработку с комментарием (например, «убери позицию X, дорого»).
  4. Утверждённая заявка передаётся в работу. Заказ меняет статус на «утверждён» и уходит в 1С — начинается исполнение. Закупщик получает уведомление, что заказ принят.
  5. Отклонённая заявка возвращается. Закупщик видит причину, правит состав и отправляет заново — круг повторяется, пока заявку не утвердят или не отменят.

В более сложных случаях маршрут ветвится. Утверждающих может быть несколько — последовательно (сначала руководитель отдела, потом финансовый директор) или параллельно (нужно согласие и технического специалиста, и финансиста). Появляются условия: заявки до определённой суммы вообще не требуют утверждения, а сверх лимита поднимаются на уровень выше. Всё это — варианты одного и того же маршрута, и задача проектировщика — описать их явно, а не оставлять «на усмотрение».

Закупщик готовит заявку Утверждающий принимает решение Утверждён заказ зафиксирован В работу передача в 1С отклонено → назад закупщику на доработку → исполнение
Схема: базовый маршрут согласования — закупщик готовит заявку, утверждающий решает, утверждённый заказ уходит в работу, отклонённый возвращается на доработку.

Многоступенчатое утверждение по лимиту суммы

Гонять каждую копеечную закупку через руководителя — значит утопить процесс в бюрократии. Утверждать миллионный заказ без ведома финансиста — значит потерять контроль. Баланс между этими крайностями даёт многоступенчатое утверждение по сумме: чем крупнее заказ, тем выше он поднимается по цепочке согласующих.

Логика простая и знакомая любому, кто работал в компании с бюджетом:

Сумма заявкиКто утверждаетСмысл
В пределах лимита закупщикаНикто, оформляется сразуРутинные закупки не тормозят процесс
Первый порогРуководитель отделаКонтроль на среднем уровне
Второй порогПлюс финансовый директорКрупные суммы под финансовым контролем
Максимальный порогПлюс директор / собственникСтратегические закупки решает первое лицо

Здесь важнее всего понять, кто задаёт пороги. Это не настройка сайта, а финансовая политика компании-покупателя. Сколько может тратить закупщик без утверждения, где проходит граница «просто руководитель» и «руководитель плюс финансист» — решает сам покупатель, исходя из своей культуры и уровня доверия. Портал только берёт эти цифры и проверяет по ним каждую заявку. Поэтому при внедрении сначала выясняют пороги, а потом настраивают маршрут — не наоборот.

Многоступенчатость бывает двух видов, и их не стоит путать. Последовательное утверждение — заявка идёт по цепочке: одобрил первый, ушла второму, одобрил второй — утверждена. Параллельное — заявку одновременно видят несколько согласующих, и нужно согласие всех (или большинства). Последовательное медленнее, но проще и понятнее; параллельное быстрее, но требует аккуратной логики «что если один за, другой против». В большинстве B2B-порталов начинают с последовательного, как более прозрачного.

Осторожно с переусложнением: ветвистый маршрут с пятью уровнями и параллельными ветками выглядит солидно на схеме, но в реальности часто «зависает» — кто-то в отпуске, кто-то забыл. Начинайте с одного-двух порогов, которые реально работают, и добавляйте уровни только под явную потребность. Согласование должно ускорять закупки, а не превращать их в квест.
Утверждение по порогам суммы Заявка проверка суммы В пределах лимита без утверждения сразу в работу 1-й порог руководитель отдела 2-й порог + финансовый директор Максимум + директор / собственник
Схема: портал проверяет сумму заявки и направляет её на нужный уровень — мелочь оформляется без утверждения, крупные закупки поднимаются к финансисту и директору.

Кредитный лимит и отсрочка платежа

B2B почти всегда работает с отсрочкой: поставщик отгружает товар, а оплата приходит через оговорённый срок. Это удобно покупателю, но рискованно поставщику — если контрагент набирает товар в долг без ограничений, растёт дебиторская задолженность. Инструмент контроля — кредитный лимит, потолок долга, который поставщик готов держать за конкретным контрагентом.

В контексте согласования лимит — это ещё одна развилка маршрута, только считается она не по сумме заказа, а по остатку лимита. Логика такая:

Ключевое правило то же, что и с балансом: значения лимита и текущего долга приходят из 1С, сайт их не считает. Лимит — это финансовое решение, зафиксированное в учётной системе по контрагенту. Портал получает его обменом и показывает как шкалу: сколько всего, сколько выбрано, сколько свободно. Любая попытка «посчитать долг на сайте, складывая заказы» приведёт к расхождению с бухгалтерией и подрыву доверия.

Как именно лимит влияет на оформление — политика поставщика. Один жёстко блокирует отгрузку сверх лимита, другой пропускает под согласование менеджера, третий только предупреждает и оставляет решение человеку. Портал реализует выбранное правило, но формулирует его финансовая служба поставщика. Механику лимита и баланса в кабинете мы подробнее разбираем в статье про личный кабинет дилера — здесь важно, что лимит встроен именно в цепочку согласования заказа.

Кредитный лимит при заказе Долг 165 000 ₽ Новый заказ 75 000 свободно 60 000 Лимит контрагента 300 000 ₽ приходит из 1С по договору отсрочки В пределах лимита заказ на согласование обычный маршрут утверждения Сверх лимита блок / предоплата / согласование менеджеру по правилу поставщика
Схема: при оформлении портал сверяет новую сумму с остатком кредитного лимита из 1С — в пределах лимита заказ идёт обычным маршрутом, сверх лимита срабатывает правило поставщика.

Проверка дебиторки при оформлении заказа

Кредитный лимит — это верхняя граница, а дебиторка — то, что происходит внутри неё. Дебиторская задолженность — сумма, которую контрагент уже должен за отгруженный, но не оплаченный товар. Проверка дебиторки при заказе отвечает на вопрос не «сколько всего можно», а «нет ли уже проблем с оплатой прошлых поставок».

Что портал проверяет по дебиторке в момент оформления:

На основе этих данных срабатывает политика поставщика. Частый сценарий: пока просрочки нет, заказы проходят обычным маршрутом; появилась просрочка — новые заказы либо блокируются, либо уходят на согласование менеджеру поставщика, либо требуют закрыть долг. Это защищает поставщика от ситуации, когда контрагент, уже не платящий по счетам, продолжает набирать товар в долг.

Технически всё это — данные учёта. Дебиторка, просрочка, сроки оплаты живут в 1С и приходят на портал обменом взаиморасчётов по контрагенту. Сайт не рассчитывает задолженность и не решает единолично «блокировать или нет» — он показывает состояние и применяет заранее заданное правило. Финальное решение в спорных случаях всегда за человеком: менеджер может пропустить заказ надёжного клиента даже при небольшой просрочке. Портал лишь избавляет его от ручной проверки в типовых ситуациях.

Важно про дебиторку: проверка задолженности на портале — это удобная витрина уже существующей в 1С логики, а не замена финансовому учёту. Цифры — из учётной системы, правила — от финансовой службы, решение в спорных случаях — за человеком. Портал автоматизирует рутину и делает правила видимыми, но не берёт на себя роль бухгалтерии.

Уведомления участникам согласования

Согласование — это командная работа, где заявка передаётся от одного человека к другому. Если участники узнают об этом, только зайдя в портал и увидев новую задачу, процесс встанет: утверждающий не знает, что его ждёт заявка, закупщик не знает, что заказ отклонён. Поэтому уведомления — не украшение, а несущая конструкция маршрута согласования.

Кого и о чём уведомляют на разных этапах:

СобытиеКомуЗачем
Заявка отправленаУтверждающемуПоявилась задача — нужно принять решение
Заявка утвержденаЗакупщикуЗаказ принят и ушёл в работу
Заявка отклоненаЗакупщикуНужно исправить и отправить снова
Заявка «висит» дольше срокаУтверждающему и его руководителюНапоминание и эскалация, чтобы не зависла
Приближение к лимитуЗакупщику и бухгалтеруПредупредить, чтобы успели оплатить
Смена производственного статусаЗакупщикуЗаказ в сборке, отгружен, готов

Каналы стандартные: e-mail как база, уведомления внутри портала (колокольчик со списком задач), а для срочного — мессенджеры или SMS, если это оправдано. Для утверждающего особенно ценно, чтобы решение можно было принять прямо из уведомления — например, по ссылке из письма сразу попасть на заявку с кнопками «утвердить»/«отклонить», а не искать её в кабинете.

Главная опасность уведомлений — спам. Если система шлёт письмо на каждое микродействие, люди перестают их читать, и важное тонет в шуме. Правильный подход — уведомлять о значимых для конкретной роли событиях и дать участникам настройки: какие уведомления и каким каналом получать. Утверждающему нужны заявки на согласование, закупщику — решения и статусы, бухгалтеру — финансовые события. Каждому — своё, а не всё подряд.

История согласований и повтор заказа

Согласование ценно не только в моменте, но и как архив решений. Когда через полгода возникает вопрос «а кто утвердил эту закупку и почему», ответ должен находиться за секунды, а не в переписке. Поэтому у каждого заказа ведётся история согласования — журнал того, что с заявкой происходило.

Что фиксирует история согласования:

История тесно связана с повтором заказа. Опт живёт повторяющимися закупками: партнёр редко собирает каждый раз новый состав, чаще берёт примерно то же. Повтор переносит состав прошлого заказа в новый черновик по актуальным ценам и с проверкой наличия. Но в контексте согласования возникает вопрос: нужно ли повтор снова утверждать?

Ответ — это политика компании, и портал умеет реализовать оба варианта. Строгий подход: повтор — обычный новый заказ, проходит маршрут заново, потому что цены и обстоятельства могли измениться. Мягкий подход: повтор типовой закупки в пределах лимита разрешён без утверждения, чтобы не гонять рутину по кругу. Разумный баланс — повтор в пределах лимита без согласования, повтор сверх лимита по общему маршруту. Механику самого повтора с проверкой изменений мы разбираем в материале про быстрый заказ по артикулу и загрузку из Excel.

Документы: счёт на утверждение

Согласование — это не всегда только «нажать кнопку в портале». Часто утверждающему для решения нужен документ, который он покажет бухгалтерии или приложит к внутренней заявке. Самый частый такой документ — счёт на оплату, который в контексте согласования играет роль «счёта на утверждение».

Как документы вплетаются в маршрут согласования:

Здесь важна та же развилка, что и в кабинете дилера: где формируется документ. Предварительный счёт по заявке портал может сгенерировать сам — это несложно, данные все есть. А вот бухгалтерские документы (УПД, накладные, финальные счета) формируются в 1С по факту операций и приходят на сайт как файлы, привязанные к заказу. Пытаться «рисовать» учётные документы на сайте в обход 1С — плохая идея: они разойдутся с учётом.

Практика: «счёт на утверждение» — это чаще предварительный счёт по составу заявки, а не финальный бухгалтерский документ. Он нужен утверждающему, чтобы понимать сумму, и не обязан совпадать с окончательным счётом из 1С до копейки, если состав ещё может измениться. Финальный счёт выставляется уже по утверждённому и переданному в работу заказу.

Бизнес-процессы Битрикса для маршрутов

Перейдём к реализации. В 1С-Битрикс есть штатный модуль «Бизнес-процессы» — визуальный конструктор рабочих процессов с задачами, условиями, ветвлениями и уведомлениями. Он изначально задуман для сценариев вроде «документ идёт по цепочке согласующих», поэтому логика утверждения заказа ложится на него довольно естественно.

Что даёт модуль «Бизнес-процессы» для согласования заказов:

Бизнес-процессы бывают двух типов — привязанные к элементам (например, к заказу как к сущности) и последовательные/со статусами. Для согласования заказа обычно используют процесс, стартующий при оформлении заказа или переводе его в статус «на согласовании», который дальше ведёт заявку по цепочке. Триггером служит смена статуса, а результатом работы процесса — перевод заказа в «утверждён» или «отклонён».

Модуль доступен в старших редакциях 1С-Битрикс (в «Бизнесе» и выше), поэтому если планируется строить согласование на бизнес-процессах, это учитывают при выборе редакции. В младших редакциях маршруты приходится собирать на статусах и собственном коде — об этом в следующем разделе.

Статусы заказа против бизнес-процессов

Возникает закономерный вопрос: на чём вообще строить согласование — на модуле «Бизнес-процессы» или на собственной логике статусов и прав? Однозначного ответа нет, и честный подход — выбирать под конкретный процесс и нагрузку. Сравним оба пути.

КритерийБизнес-процессыСтатусы + свой код
Простой линейный маршрутИзбыточно, но работаетПроще и легче
Сложные ветвления и эскалацияСильная сторонаМного ручного кода
Изменение маршрутаВ конструкторе, без кодаТребует доработки
Производительность на объёмеТяжелее, нужно следитьЛегче контролировать
Отладка и прозрачностьСложнее диагностироватьПолный контроль в коде
Редакция БитриксаНужна старшаяРаботает шире

Практический вывод из нашего опыта: простые маршруты часто дешевле и надёжнее собрать на статусах заказа и правах ролей, а сложные ветвистые схемы с историей, эскалацией и частыми изменениями — на бизнес-процессах. Гибридный подход тоже встречается: базовое движение по статусам управляется своим кодом, а тяжёлое ветвистое согласование выносится в бизнес-процесс. Главное — не тащить бизнес-процессы «потому что модно», если маршрут — это две кнопки «отправил — утвердил».

Есть и третий фактор — производительность. Бизнес-процессы на большом объёме заказов и ветвистых схемах могут заметно нагружать систему, и это нужно закладывать заранее. Если через портал проходят сотни заявок в день, а маршрут простой, экономнее статусы. Если заявок немного, но каждая идёт по сложной цепочке с условиями — оправдан конструктор бизнес-процессов. Решение принимают по цифрам конкретного проекта, а не по общему правилу.

Группы, роли и разграничение прав

Фундамент всего согласования — разграничение прав. Именно оно определяет, кто может собирать заказ, кто утверждать, кто видеть баланс. Без чёткого разграничения роли превращаются в фикцию: если закупщик технически может сам утвердить свою заявку, никакого контроля нет.

В 1С-Битрикс права стоят на нескольких уровнях, и в согласовании задействованы все:

Особенно важно правило, которое легко упустить: закупщик не должен утверждать собственную заявку. Даже если человек совмещает роли, для конкретного заказа утверждающим должен быть кто-то другой (или, если утверждающий и закупщик реально один, согласование для этого сотрудника отключается явно). Иначе разделение ответственности рушится, и портал лишь имитирует контроль.

Права проверяются на сервере при каждом действии, а не скрытием кнопок в вёрстке. Если кнопки «утвердить» не видно, но действие можно вызвать прямым запросом — это не защита, а иллюзия. Каждое действие согласования (отправить, утвердить, отклонить, оформить сверх лимита) проходит проверку прав роли на бэкенде. Как устроено разграничение доступа к ценам и разделам через группы, мы разбираем в статье про оптовые цены по группам клиентов в 1С-Битрикс.

Реализация в кастомном личном кабинете

Теперь о том, где всё это живёт в интерфейсе. Согласование заказов — часть личного кабинета, и штатных «розничных» компонентов Битрикса для него недостаточно. Кабинет с согласованием — это связка штатного каркаса и доработок под B2B.

Из чего складывается реализация:

Разделы кабинета отличаются в зависимости от роли. Закупщик видит «Мои заказы» с черновиками и заявками на согласовании. Утверждающий — отдельный раздел «Заявки на утверждение» со списком того, что ждёт его решения, кнопками и полем комментария. Бухгалтер — баланс, счета, документы. Один и тот же кабинет показывает разным ролям разные вещи, и это разграничение — часть проектирования.

Ключевое правило кастомизации Битрикса неизменно: не править ядро и штатные компоненты напрямую. Всё делается через копии шаблонов, наследование, события и собственные модули. Иначе первое же обновление платформы затрёт доработки, и согласование сломается. Аккуратная кастомизация — то, что отличает поддерживаемый портал от «однажды собранного и боящегося обновлений».

Интеграция статусов с 1С

Согласование живёт на портале, а исполнение — в 1С. Между ними должен быть надёжный мост, иначе утверждённые заказы будут теряться, а покупатель — не видеть реальных статусов отгрузки. Интеграция статусов с 1С — это стык двух половин жизненного цикла заказа.

Что ходит между порталом и 1С в контексте согласования:

ДанныеНаправлениеРоль в согласовании
Утверждённый заказсайт → 1СПередача в работу после согласования
Производственные статусы1С → сайтВ работе, в сборке, отгружен, закрыт
Кредитный лимит1С → сайтПроверка при оформлении заказа
Баланс и дебиторка1С → сайтПроверка задолженности и просрочки
Документы (счёт, УПД)1С → сайтОснование и подтверждение отгрузки

Принципиальный момент — заказ передаётся в 1С только после утверждения. Черновики и заявки на согласовании в учётную систему не уходят: там незачем плодить неутверждённые заказы, которые могут отклонить. В 1С попадает уже согласованный заказ, и с этого момента им управляет учёт, а портал только отображает статусы, которые возвращаются обменом. Базовый обмен заказами идёт по стандарту CommerceML, а статусы, лимит и дебиторка — это расширенный обмен, который проектируют под конкретную конфигурацию 1С. Общие принципы мы разбираем в статье про интеграцию интернет-магазина с 1С.

Отдельно продумывают поведение при сбоях. Что делать, если заказ утверждён, а обмен с 1С временно недоступен? Правильный подход — заказ ставится в очередь на передачу и уходит, как только связь восстановится, а не «теряется». Статус на портале должен честно отражать, передан заказ в учёт или ещё ждёт. Сценарии сбоев проектируют заранее, а не после первого инцидента — иначе на границе портала и 1С будут регулярно пропадать согласованные заказы.

Портал черновик · согласование утверждение 1С резерв · сборка · отгрузка документы утверждённый заказ → ← статусы, лимит, дебиторка в 1С уходит только согласованный заказ, черновики — нет
Схема: портал отвечает за согласование, а после утверждения передаёт заказ в 1С; учётная система возвращает производственные статусы, лимит и дебиторку обменом.

Эскалация, сроки и «зависшие» заявки

Самая частая беда согласования в реальной эксплуатации — не сложные схемы, а простое человеческое «забыл». Утверждающий в отпуске, заявка висит третий день, закупщик нервничает, поставщик ждёт заказ. Хороший маршрут предусматривает, что делать с зависшими заявками, ещё на этапе проектирования.

Инструменты против «зависаний»:

Эскалация — мощный инструмент, но требует аккуратности. Если поднимать заявку наверх слишком быстро, руководителей завалит чужой рутиной; слишком медленно — процесс всё равно стоит. Разумные сроки подбирают под ритм компании: где-то решение ждут в течение часа, где-то день-два — норма. Как и пороги сумм, сроки — это политика покупателя, которую портал реализует, а не назначает сам.

Из практики: механизм заместителей и эскалации почти всегда недооценивают на старте, а в эксплуатации именно он спасает процесс. Первое же длинное согласование, застрявшее из-за отпуска утверждающего, показывает, что «а кто утвердит, пока Иван в отпуске» — вопрос, который нужно решить до запуска, а не после первой заблокированной поставки.

Кэш, права и безопасность согласования

Согласование работает с чувствительными данными: суммами закупок, балансом, лимитами, решениями руководства. Ошибки кэширования и прав здесь опаснее, чем в обычном каталоге, — можно показать одному контрагенту заявки другого или дать закупщику утвердить собственный заказ. Три вещи под особым контролем.

Проверка прав на каждом действии. Отправить заявку, утвердить, отклонить, оформить сверх лимита — каждое действие проверяет права роли на сервере. Нельзя полагаться на то, что «кнопки не видно»: если действие можно вызвать прямым запросом, оно должно быть отклонено на бэкенде. Особенно критично правило «нельзя утвердить свою заявку» — оно проверяется в коде, а не только скрытием кнопки.

Изоляция данных контрагентов. Заявки, заказы, баланс и документы одного контрагента не должны быть доступны другому ни через интерфейс, ни подбором ссылки. Каждый запрос фильтруется по привязке пользователя к контрагенту. Утверждающий видит только заявки своей компании, закупщик — только свои и своей роли.

Кэш с учётом пользователя и роли. Списки заявок, баланс, лимит нельзя кэшировать «одинаково для всех» — иначе один пользователь получит из общего кэша чужие данные. Персональные разделы выносят в динамическую часть, а статику отдаёт композитный режим. Это и вопрос корректности, и вопрос безопасности.

Безопасность = проверка на сервере: в согласовании любое «скрыли кнопку в шаблоне» — не защита, а иллюзия. Разграничение ролей, запрет самоутверждения и изоляция данных контрагентов должны работать на уровне бэкенда и прав, тогда их нельзя обойти из браузера. Это фундамент доверия к порталу и у покупателя, и у поставщика.

Как проектировать маршрут: от простого к сложному

Соблазн спроектировать «идеальный маршрут» со всеми уровнями, ветками и эскалациями сразу — велик, но почти всегда вреден. Сложная схема на старте затягивает запуск, путает пользователей и часто не соответствует реальному процессу, который у клиента ещё не устоялся. Правильный путь — от простого к сложному.

Разумная последовательность внедрения согласования:

  1. Опишите реальный процесс. Как сейчас, до портала, утверждаются закупки: кто готовит, кто решает, на какой сумме включается контроль. Без этого всё остальное бессмысленно.
  2. Начните с одного уровня. Закупщик → один утверждающий → в работу. Даже это уже наводит порядок и приучает людей к процессу в портале.
  3. Добавьте порог суммы. Мелочь в пределах лимита — без утверждения, крупнее — на согласование. Первый реальный фильтр, снимающий рутину.
  4. Встройте кредитный лимит. Проверка остатка лимита и дебиторки при оформлении — как дополнительная развилка маршрута.
  5. Настройте уведомления и сроки. Чтобы заявки не зависали: напоминания, эскалация, заместители на время отсутствия.
  6. Усложняйте под потребность. Второй и третий уровни, параллельные ветки, роли — добавляйте только тогда, когда простая схема упёрлась в реальный запрос.

Такой подход даёт рабочий результат быстро, а не «портал мечты» через полгода. Люди привыкают к согласованию на простой схеме, процесс обкатывается, и только потом его наращивают. Часто оказывается, что сложные ветки, которые планировали изначально, в реальности не нужны, — а те, о которых не думали, наоборот важны. Это выясняется только в работе, поэтому гибкость важнее полноты на старте.

Частые ошибки при внедрении согласования

Эти промахи повторяются в B2B-проектах чаще всего — зная их, вы сэкономите время и нервы участников:

Чек-лист внедрения

Короткий список для приёмки согласования перед запуском — по нему удобно проверить, что процесс закрыт и не развалится в эксплуатации:

  1. Реальный процесс описан. Известно, кто готовит, кто утверждает и на какой сумме включается контроль — до настройки, а не после.
  2. Роли разграничены. Закупщик, утверждающий, бухгалтер, наблюдатель — с разными правами; закупщик не может утвердить свою заявку.
  3. Черновик и заявка разделены. Черновик правится свободно, отправленная заявка заморожена; изменение возвращает на пересогласование.
  4. Статусы описаны как карта переходов. Видно, из какого статуса в какой можно попасть и кто имеет на это право; тупиков нет.
  5. Пороги суммы заданы покупателем. Уровни утверждения отражают реальную финансовую политику компании.
  6. Кредитный лимит и дебиторка встроены. Проверка остатка лимита и просрочки при оформлении; правило сверх лимита определено; цифры из 1С.
  7. Уведомления настроены по ролям. Каждый получает значимые для него события; есть напоминания и эскалация зависших заявок.
  8. Заместители предусмотрены. Процесс не встаёт из-за отпуска утверждающего.
  9. История согласования ведётся. Видно, кто, когда и с каким комментарием утвердил или отклонил.
  10. Интеграция с 1С состыкована. В 1С уходит только утверждённый заказ; статусы возвращаются; поведение при сбое обмена определено.
  11. Безопасность на бэкенде. Права проверяются на сервере, данные контрагентов изолированы, кэш учитывает пользователя.
  12. Схема реализации выбрана осознанно. Статусы или бизнес-процессы — под конкретный маршрут и нагрузку, а не «по моде».

Вывод

Согласование и статусы заказов в B2B-портале на 1С-Битрикс — это перенос в интерфейс реального управленческого процесса, который в компании и так есть: закупщик готовит заказ, руководитель его утверждает, финансы держат под контролем через лимит и дебиторку. Держится всё это на трёх опорах — ролях и правах внутри контрагента, продуманной цепочке статусов заказа и механизме маршрутов, который собирают либо на статусах и своём коде, либо на модуле «Бизнес-процессы».

Два принципа определяют, будет согласование помогать или мешать. Первый — процесс важнее интерфейса: сначала выясняют, кто, что и на какой сумме решает, и только потом настраивают маршрут; пороги, сроки и правила задаёт покупатель, а не подрядчик. Второй — контроль проверяется на сервере, а данные — из 1С: разграничение ролей, запрет самоутверждения и изоляция контрагентов работают на бэкенде, а лимит, баланс и статусы приходят из учётной системы, а не считаются на сайте. Соблюдая их и начиная с простой рабочей схемы, вы получаете согласование, которому доверяют обе стороны: закупки под контролем, заказы не теряются, а поставщик получает уже утверждённые заявки без споров.

Частые вопросы

Зачем в B2B заказ вообще проходит согласование, а не оформляется сразу?

В рознице заказ делает и оплачивает один человек — согласовывать нечего. В B2B закупку почти всегда готовит один сотрудник (закупщик), а отвечает за деньги другой (руководитель, финансовый директор). Организации нужен контроль: чтобы крупная закупка не ушла поставщику без ведома того, кто распоряжается бюджетом. Поэтому согласование заказов b2b — это не бюрократия ради бюрократии, а перенос уже существующего в компании правила «закупщик готовит — руководитель утверждает» в интерфейс портала. Портал лишь автоматизирует маршрут, который в компании и так есть, просто раньше он шёл в почте и мессенджерах.

Чем черновик заказа отличается от заявки на согласовании?

Черновик — это корзина закупщика, которую он ещё собирает: можно добавлять и убирать позиции, менять количество, сохранять и возвращаться позже. Пока заказ в черновике, он не виден поставщику и ни к чему не обязывает. Заявка на согласовании — это тот же состав, но отправленный по маршруту утверждения: закупщик его уже зафиксировал, и теперь решение за утверждающим. Ключевая разница в том, что заявку нельзя молча править в обход маршрута — любое изменение должно возвращать её на пересогласование, иначе теряется смысл контроля. Технически это два разных статуса одного заказа, а не два разных объекта.

Как работает многоступенчатое утверждение по сумме заказа?

Смысл в том, что глубина согласования зависит от суммы. Мелкую закупку в пределах лимита закупщик оформляет сам, без утверждения. Заказ покрупнее уходит на одного утверждающего — например, руководителя отдела. А крупная закупка сверх второго порога поднимается выше, к финансовому директору или директору. Пороги задаёт сама компания: это её финансовая политика, а не настройка сайта. Портал только проверяет сумму заявки и направляет её по нужной ветке маршрута. Такой подход экономит время на мелочах и включает контроль там, где на кону значимые деньги.

Кто участвует в согласовании со стороны покупателя?

Типичный набор ролей закупщика: сам закупщик (готовит заказ), утверждающий или руководитель (принимает решение по маршруту), бухгалтер (смотрит документы, баланс, оплату) и иногда наблюдатель для руководства. Все они — сотрудники одного контрагента с разными правами в кабинете. Один человек может совмещать роли, а в маленькой компании закупщик и утверждающий нередко один и тот же сотрудник — тогда согласование можно и отключить. Глубина ролевой модели зависит от того, как устроены закупки у конкретного партнёра, поэтому её всегда проектируют под реальный процесс, а не по шаблону.

Как связаны кредитный лимит и согласование заказа?

Кредитный лимит — это потолок задолженности, которую поставщик готов держать за контрагентом при отсрочке платежа. Когда закупщик оформляет заказ, портал проверяет: укладывается ли новая сумма вместе с текущим долгом в лимит. Если да — заказ идёт обычным маршрутом. Если заказ выводит контрагента за лимит, срабатывает правило компании: заблокировать, потребовать предоплату или отправить на отдельное согласование менеджеру поставщика. То есть лимит — ещё одна развилка в маршруте, только считается она не по сумме заказа, а по остатку лимита. Значения лимита и текущего долга приходят из 1С, сайт их не выдумывает.

Стоит ли строить маршруты согласования на модуле «Бизнес-процессы» Битрикса?

Модуль «Бизнес-процессы» — штатный инструмент 1С-Битрикс для маршрутов с задачами, условиями и уведомлениями, и он хорошо ложится на логику «заявка идёт по цепочке утверждающих». Его сильная сторона — визуальный конструктор и возможность менять маршрут без переписывания кода. Слабая — производительность и сложность отладки на больших объёмах и ветвистых схемах. На практике выбор такой: простые линейные маршруты часто дешевле собрать на статусах заказа и правах, а сложные ветвления с историей и эскалацией — на бизнес-процессах. Универсального ответа нет, решение принимают под конкретный процесс и нагрузку.

Что происходит со статусом заказа после утверждения на портале?

Утверждённый заказ — это ещё не отгруженный. После утверждения он меняет статус на «принят в работу» и уходит в 1С, где начинается реальная обработка: резерв, сборка, отгрузка, выставление документов. Дальнейшие статусы (в сборке, отгружен, закрыт) ведутся уже в учётной системе и возвращаются на портал обменом. То есть статусы согласования (черновик, на согласовании, утверждён, отклонён) живут на стороне сайта, а производственные статусы (в работе, отгружен) приходят из 1С. Важно, чтобы эти две «половины» жизненного цикла были состыкованы и заказ не «терялся» на границе между сайтом и учётом.

Можно ли повторить прошлый согласованный заказ без нового круга утверждения?

Это вопрос политики компании, а не техники. Технически повтор заказа переносит состав прошлой закупки в новый черновик, а дальше он проходит тот же маршрут, что и любой новый заказ: если сумма выше порога — снова на утверждение. Некоторые компании разрешают «быстрый повтор» типовых закупок в пределах лимита без согласования, чтобы не гонять по кругу рутину. Другие требуют утверждать каждый заказ независимо от истории. Портал умеет реализовать оба правила, но само правило — «доверяем повтору или нет» — формулирует бизнес. Разумный баланс: повтор в пределах лимита без утверждения, повтор сверх лимита — по общему маршруту.

Поделиться:

Нужен B2B-портал с согласованием заказов?

Спроектируем и внедрим маршруты утверждения: роли закупщика и руководителя, черновики и заявки, статусы заказа, кредитные лимиты и проверку дебиторки, уведомления и эскалацию, свяжем всё с обменом 1С. Рассчитаем работу по вашим условиям.

Услуга «B2B-порталы»

Игорь Воскресенский

Основатель студии B2Bsite. С 2014 года команда разрабатывает и поддерживает B2B-витрины и порталы на 1С-Битрикс: закрытый опт, персональные цены, личные кабинеты дилеров, согласование и статусы заказов, роли сотрудников и обмен с 1С для среднего и крупного бизнеса.

← Все статьи блога