Розробка B2B-порталу на 1С-Бітрікс під ключ
Стандартний інтернет-магазин на Бітріксі не підходить для оптових продажів: одна ціна для всіх, публічний каталог, відсутність лімітів кредиту та алгоритму узгодження замовлень. Коли менеджер витрачає 40 хвилин на оформлення кожного замовлення вручну через CRM, а дилер телефонує, щоб дізнатися залишки — це симптоми відсутності B2B-порталу. Ми проєктуємо архітектуру, налаштовуємо ціноутворення, інтегруємо з 1С та впроваджуємо бізнес-процеси узгодження. Зв'яжіться з нами, щоб оцінити ваш проєкт.
Чим B2B-портал принципово відрізняється від публічного магазину
Архітектурно — інша логіка авторизації, модель ціноутворення та сценарій замовлення. B2B-портал на Бітріксі впроваджується в 3-5 разів швидше самописного рішення при співставному функціоналі. Кастомна розробка вимагає в середньому 30-40 тижнів, тоді як на Бітрікс — 12-22.
Авторизація та групи користувачів. У bitrix:sale користувач прив'язаний до однієї групи. У B2B потрібна ієрархія: компанія → контактна особа → роль (закупівельник, бухгалтер, директор). Штатні групи не підходять — вони плоскі. Реалізується через кастомний модуль з таблицею зв'язків company_user та D7 ORM (Bitrix\Main\ORM\Data\DataManager). Права на дії задаються через бітову маску в Highload-блоці ролей.
Типи цін. Модуль catalog підтримує декілька типів цін: CATALOG_GROUP_ID у таблиці b_catalog_price. Для B2B це обов'язкова механіка — кожній групі користувачів призначається свій тип ціни. Індивідуальні контрактні ціни реалізуються через обробник події OnSaleOrderBeforeSaved або кастомний провайдер цін.
Каталог із залишками в реальному часі. B2B-покупці замовляють великими партіями і перевіряють доступність до оформлення. Дані про залишки b_catalog_store_product оновлюються при синхронізації з 1С через CommerceML. Якщо синхронізація раз на годину — клієнт бачить застарілі дані. Рішення: REST API 1С + інкрементальне оновлення через CCatalogStoreProduct::Update(). Економія часу менеджерів — до 40 годин на місяць, що при ставці $20/год дає $800 економії щомісяця.
Як організувати авторизацію на B2B-порталі?
Для B2B необхідний кастомний модуль авторизації, що реалізує ієрархію «Компанія — Контактна особа — Роль» з розподілом прав. Це дозволяє, наприклад, дати бухгалтеру доступ до фінансових документів, але не до замовлень. Комерційна платформа 1С-Бітрікс надає D7 ORM для побудови таких зв'язків.
Ключові модулі та компоненти
- Модуль
sale— основа для кошика та замовлень. У B2B доопрацьовується: додаємо статуси (На узгодженні, Узгоджено, Відхилено), налаштовуємо бізнес-процеси через модульbizproc. - Модуль
catalog— ціноутворення, торгові пропозиції (SKU), управління складами. Обов'язково задіюютьсяCatalogGroupтаDiscountCoupon. - Модуль
crm(якщо схема з Бітрікс24) — синхронізація замовлень порталу з угодами CRM через REST APIcrm.deal.add/crm.deal.update. - Особистий кабінет — історія замовлень з повторенням, поточні замовлення, заборгованість, документи (рахунки, накладні в PDF), управління контактними особами.
Як інтегрувати B2B-портал з 1С без порушення штатного обміну?
Стандартний обмін через CommerceML закриває товари, ціни, склади, замовлення. Але не закриває:
- Ліміти кредиту та заборгованість — вивантажуються окремим XML або REST-сервісом 1С. На стороні Бітрікс — кастомний Highload-блок
b2b_credit_limits. - Документи — рахунки та накладні зберігаються в 1С. Портал запитує список через REST, кешує в
/upload/b2b/docs/з TTL 24 години. - Специфікації — індивідуальні договірні позиції, зберігаються в Highload-блоці з прив'язкою до компанії.
Важливо: не ламати стандартний обмін CommerceML. Кастомні поля та логіка — через події OnBeforeCatalogImport1C, OnSuccessCatalogImport1C, окремі таблиці.
Продуктивність під навантаженням
B2B-портал з 500+ активними компаніями та піковим навантаженням вимагає:
- Тегований кеш каталогу:
CIBlock::clearIblockTagCache($iblockId)при оновленні залишків. - Альтернатива для персональних цін: кеш по ключу
user_group_price_{groupId}_{productId}. - Сесії в Redis при балансуванні.
-
Elasticsearch для пошуку по каталогу замість модуля
search.
Етапи розробки
Розгорнути таблицю етапів
| Етап | Зміст | Термін (тижні) |
|---|---|---|
| Аналітика | Схема ролей, сценарії замовлення, карта інтеграцій з 1С | 2-3 |
| Проєктування БД | Highload-блоки, D7-сутності, схема ціноутворення | 1-2 |
| Бекенд | Модуль авторизації, ціноутворення, інтеграція 1С | 4-8 |
| Особистий кабінет | Замовлення, документи, управління компанією | 3-5 |
| Узгодження замовлень | Бізнес-процеси bizproc, сповіщення |
1-3 |
| Тестування | Навантажувальне, приймальне, інтеграційне | 2-3 |
Разом: 12-22 тижні в залежності від складності інтеграції з 1С.
Типові помилки та їх вирішення
Розгорнути таблицю помилок
| Помилка | Вирішення |
|---|---|
| Зберігання персональних цін у сесії | Використовувати Redis або БД |
| Синхронізація 1С блокує сайт | Інкрементальний обмін, тільки змінені позиції |
Бізнес-процеси узгодження в init.php |
Винести в окремий модуль з конфігурованими правилами |
Покрокова інструкція: як відбувається інтеграція з 1С
- Налаштування CommerceML на стороні 1С: задати регламент вивантаження товарів, цін, залишків.
- Створення REST-сервісу в 1С для передачі кредитних лімітів та документів.
- Реалізація обробників подій Бітрікс (
OnBeforeCatalogImport1C,OnSuccessCatalogImport1C). - Тестування обміну на тестовому контурі.
- Запуск у продакшн та моніторинг.
Що входить у роботу
- Повна технічна документація (архітектура, схема БД, API-контракти).
- Вихідний код кастомних модулів з ліцензією на використання.
- Доступи до dev- та prod-оточень, репозиторію.
- Навчання адміністраторів (до 8 годин) та інструкції для користувачів.
- Гарантійна підтримка 6 місяців з реакцією протягом 4 годин.
Наша компанія має 7+ років досвіду в розробці на 1С-Бітрікс, реалізовано понад 50 B2B-проектів для виробничих та дистриб'юторських компаній. Ми на ринку з 2016 року.
Готові обговорити ваш проєкт? Зв'яжіться з нами для консультації. Замовте розробку B2B-порталу під ключ та отримайте оцінку вартості та термінів.







