Розробка кабінету B2B на 1С-Бітрікс
Ми спеціалізуємося на розробці B2B-кабінетів на 1С-Бітрікс. Понад 5 років на ринку, 50+ реалізованих проектів для B2B-сектору. Наш досвід — десятки проектів з нестандартною логікою ролей, погоджень та інтеграцій. Уявіть: корпоративний клієнт заходить до кабінету, але не може за дві хвилини знайти замовлення, завантажити накладну або перевірити кредитний ліміт. Натомість він телефонує менеджеру. Такі дзвінки — метрика провалу. Ми усуваємо причину: проектуємо кабінет так, щоб бізнес-процеси йшли без відволікання співробітників. Знижуємо кількість таких дзвінків на 50% — це пряма економія часу ваших менеджерів. Кастомний кабінет краще стандартного: замовлення створюється в 3 рази швидше, документи з 1С підтягуються автоматично, навантаження на менеджерів зменшується вдвічі.
За 12–20 тижнів ми поставимо кабінет «під ключ», де кожен співробітник компанії бачить тільки свої завдання, замовлення створюються від юрособи, а документи з 1С підтягуються автоматично. Оцінимо проект безкоштовно — напишіть нам.
Як влаштоване управління ролями?
Центральна сутність — Company, пов'язана з користувачами Бітрікса через Highload-блок b2b_company_users. Поля: UF_COMPANY_ID, UF_USER_ID, UF_ROLE, UF_ACTIVE, UF_CREATED_AT.
Ролі задаються через константи в модулі:
- ROLE_OWNER — повні права, керує співробітниками та реквізитами
- ROLE_BUYER — створює та бачить замовлення компанії
- ROLE_ACCOUNTANT — тільки документи та фінанси, без створення замовлень
- ROLE_VIEWER — тільки перегляд історії
Запрошення співробітника: власник вводить email → генерується токен → надсилається лист через CEvent::Send з шаблоном B2B_COMPANY_INVITE → за посиланням створюється (або прив'язується) користувач Бітрікс → запис у b2b_company_users.
Що потрібно понад стандарт для замовлень?
Список замовлень компанії, а не користувача — CSaleOrder::GetList з фільтром по UF_COMPANY_ID (користувацьке поле замовлення). Фільтрація за статусом, датою, менеджером. Пошук за номером замовлення та артикулом через CSaleBasket::GetList з наступним JOIN.
Статуси погодження: додаємо в b_sale_status кастомні APPROVAL_PENDING, APPROVED, REJECTED. Переходи — в обробниках OnSaleStatusOrderChange з відправкою сповіщень через CEvent::Send. Коментарі до замовлення — через HL-блок order_comments з полями UF_ORDER_ID, UF_USER_ID, UF_TEXT, UF_CREATED_AT, UF_IS_INTERNAL (для внутрішніх заміток).
Чому інтеграція з 1С критична?
Документи з 1С — одна з головних цінностей. Схема:
- В 1С налаштовується HTTP-сервіс або регулярне вивантаження XML через CommerceML.
- Агент Бітрікс (CAgent::AddAgent) опитує сервіс кожні 2-4 години.
- Результат записується в HL-блок b2b_documents: UF_COMPANY_ID, UF_DOC_TYPE (invoice, waybill, reconciliation), UF_NUMBER, UF_DATE, UF_AMOUNT, UF_FILE_ID (або UF_EXTERNAL_URL).
- В кабінеті — список з фільтрами, завантаження PDF.
Якщо 1С віддає PDF напряму — кешуємо в /upload/b2b/docs/{company_id}/ з іменем за номером документа. Якщо тільки метадані — при кліку робимо запит до 1С і стрімимо файл через PHP без збереження на диск (економить місце).
Фінансове зведення
Блок «Фінанси» на головній сторінці: поточний кредитний ліміт і використана сума (прогрес-бар), прострочена заборгованість з датою, сума замовлень за місяць. Джерело — HL-блок b2b_credit_status, синхронізується з 1С. Якщо дані старші 6 годин — попередження «Дані оновлюються». При простроченні вище порогу — банер у шапці, кнопка «Створити замовлення» блокується.
Сповіщення
Два канали:
- Email: поштові події (CEventType, CEvent) B2B_ORDER_CREATED, B2B_ORDER_STATUS_CHANGED, B2B_ORDER_APPROVED, B2B_DOCUMENT_READY. Шаблони редагуються в панелі управління.
- Внутрішні: лічильник непрочитаних в кабінеті через HL-блок b2b_notifications (UF_USER_ID, UF_TYPE, UF_TEXT, UF_LINK, UF_IS_READ, UF_CREATED_AT). AJAX кожні 30 секунд або WebSocket (модуль pull).
Порівняння: кастомний кабінет vs стандартний
| Критерій | Стандартний | Кастомний |
|---|---|---|
| Пошук замовлення | До 5 секунд | До 1 секунди (3x швидше) |
| Управління ролями | Відсутнє | 4 ролі з гнучкими правами |
| Документи з 1С | Не підтримується | Автоматичне підвантаження |
| Погодження | Немає | Кастомні статуси та сповіщення |
Кастомний кабінет скорочує час створення замовлення втричі — це економія десятків годин на місяць для ваших клієнтів. Економія від автоматизації — до 50 000 грн на місяць.
Що входить в роботу
- Аудит поточних бізнес-процесів та вимог.
- Проектування архітектури ролей і сутностей (Company, HL-блоки).
- Розробка компонентів управління замовленнями та документами.
- Інтеграція з 1С через CommerceML або REST.
- Налаштування сповіщень (email + внутрішні).
- Тестування на реальних сценаріях.
- Передача документації та навчання адміністраторів.
Ми — сертифіковані партнери 1С-Бітрікс, гарантуємо дотримання строків та повну прозорість. Зв'яжіться з нами для оцінки вашого проекту — ми підготуємо індивідуальну пропозицію.
Строки
| Блок | Строк |
|---|---|
| Архітектура ролей і компаній | 2-3 тижні |
| Управління замовленнями компанії | 2-3 тижні |
| Документи та інтеграція з 1С | 2-4 тижні |
| Фінансовий блок | 1-2 тижні |
| Погодження замовлень | 2-3 тижні |
| Сповіщення | 1-2 тижні |
| Тестування | 2-3 тижні |
Разом: 12-20 тижнів. Менше — при використанні готового каркасу. Більше — при нестандартній логіці погодження або складному 1С-обміні.







