Разработка B2B портала: архитектура, интеграции и перфоманс
B2B-портал — это рабочее место партнёра. В нём встречаются каталог, цены/остатки, заказы и логистика, сервисные заявки, документация и метрики. Качественная разработка b2b портала начинается с карты ролей и процессов: кто что видит, кто что может, где критический SLA, какие интеграции «тянут» данные. Ниже — практическая инструкция: архитектура (монолит/модульный/микросервисы), интеграции (ERP/CRM/EDS/платежи), перфоманс, безопасность и поддержка и сопровождение сайта. Сроки/стоимость разработки уточняйте по контактам на сайте.
1) Роли и сценарии
- Партнёр/Клиент: просмотр/заказ, статусы, возвраты, финдокументы.
- Менеджер: согласование цен/скидок, кредитные лимиты, спецусловия.
- Склад/Логистика: резерв, комплектация, отгрузка, трекинг.
- Финансы: счета/акты/КП, взаиморасчёты, дебиторка.
- Админ: права, сегменты, прайс-листы, атрибуты каталога.
2) Архитектура: монолит, модульный, микросервисы
Выбор архитектуры — не религия, а функция от команд, интеграций и SLA. Для старта часто достаточно модульного монолита (единый деплой, чёткие границы модулей).Микросервисы в веб разработке оправданы при независимых доменах (каталог ≠ заказы ≠ отчёты) и автономных командах.
Быстрые ориентиры
- Монолит: быстрее старт, сложнее масштабировать команды.
- Модульный монолит: чёткие границы, один деплой, понятная сложность.
- Микросервисы: независимость релизов, сложность операционки, контрактная дисциплина.
3) Доменная модель и каталог
B2B-каталог отличается от B2C: артикулы, наборы, характеристики, упаковки, кратность и прайс-листы по сегментам. Нужна модель с наследованием атрибутов, единым справочником единиц измерения и связями с остатками/резервами. Цены должны уметь «смотреть» на сегмент клиента, валюту, скидки и временные акции.
- Отдельные сущности: товар, SKU, упаковка, набор, услуга.
- Цены: базовая, сегментная, спеццена; налоги/НДС; валюта.
- Остатки/резервы: на складах; сроки годности/серии — по домену.
- Поиск: полнотекст + фильтры по атрибутам; сохранённые запросы.
4) Интеграции: ERP, CRM, EDS, платежи, логистика
Портал редко хранит «истину». Цены и остатки — в ERP, статусы заказов — в OMS/WMS, документы — в ЭДО/EDS, сделки — в CRM, оплата — у PSP. Интеграции строим через BFF/шину: кэшируем справочники, обеспечиваем идемпотентность, вебхуки подписываем, таймауты контролируем.
Паттерны интеграций
- BFF/Gateway: единая точка входа, нормализация ошибок, кеш.
- Очереди и ретраи: write-операции никогда не «теряются».
- Синхронизация прайс-листов/остатков — инкрементально.
- Вебхуки EDS/CRM/логистики — с HMAC, idempotent handler.
5) Авторизация и права
Роли, отделы, юрлица, филиалы, лимиты — всё это влияет на видимость ассортимента и прав на операции. Нужна матрица разрешений (RBAC/ABAC) с наследованием и аудитом действий.
- Многоаккаунтность: один пользователь — несколько компаний.
- Лимиты на заказ/кредит; согласование скидок/спеццен.
- Протоколирование: кто что сделал, когда и из какого контекста.
6) Перфоманс и UX
Большие таблицы и фильтры — типичный UX B2B. Важны сохранённые представления, быстрая пагинация, «массовые действия», импорт/экспорт, offline-режим для конфигураций. По метрикам целимся в LCP < 2.5 c, INP < 200–250 мс, стабильный CLS < 0.1.
- Серверный рендер первого экрана, ленивые таблицы и агрегации.
- Оптимистичные апдейты и отмена операций.
- Экспорт длинных отчетов — асинхронно, с уведомлением.
7) Безопасность
- Сессии — httpOnly/secure; MFA по роли; для API — короткие токены.
- CSP/SRI, защита от XSS/CSRF; валидация схем всех интеграций.
- Секреты — вне бандла; аудит доступа и событий, ретеншн логов.
8) Поддержка и сопровождение сайта
После запуска начинается главное — эксплуатация. Регламенты обновлений, бэкоф-стратегии, бюджеты перфоманса и наблюдаемость. Любая новая интеграция проходит «контрактные тесты» и бюджет бандла/метрик.
- RUM и серверные метрики, алерты на деградации/ретраи.
- Каталог интеграций и ключей, ротация и доступ по ролям.
- План тестов перед релизом (регресс/доступность/нагрузка).
9) План внедрения (6–16 недель)
- Аудит процессов и ролей, карта домена, согласование SLA.
- Архитектура: модульный монолит или микросервисы; контракты.
- Каталог/цены/остатки, авторизация и базовые роли.
- Заказы/статусы, интеграции с ERP/CRM/логистикой.
- Отчёты/финансы/ЭДО; наблюдаемость и безопасность.
- Релиз по фичефлагам; обучение, регламенты поддержки.
10) Анти-паттерны
- «Портал = сайт каталога» без ролей и прав.
- Прямые запросы с фронта в ERP/CRM.
- Никакой идемпотентности: двойные заказы и потерянные статусы.
- Отсутствие наблюдаемости: SLA «на словах».
Итог: разработка b2b портала — это про процессы и архитектуру. Чёткие роли, модульная структура, интеграции через BFF/шину, дисциплина перфоманса и строгая поддержка и сопровождение сайта — основа устойчивого роста партнёрских продаж. Сроки/стоимость разработки уточняйте по контактам на сайте.