Розробка кабінету 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С-обміні.
B2B-портали на 1С-Бітрікс
Наша спеціалізація — розробка B2B-порталів на 1С-Бітрікс. Не просто «інтернет-магазинів для оптовиків». Тут інший всесвіт: у кожного контрагента свій прайс, свій кредитний ліміт, свій набір документів і свій менеджер у Краснодарі. Роздрібний покупець обирає за картинкою та відгуками. Оптовик вбиває 50 артикулів у форму швидкого замовлення і чекає рахунок через 30 секунд.
У нас 10+ років досвіду в цій ніші, понад 50 проектів впровадження. Гарантія на роботи — 12 місяців. Сертифіковані спеціалісти 1С-Бітрікс. Зв'яжіться з нами — ми проаналізуємо вашу поточну структуру цін і запропонуємо архітектуру порталу під ваш бізнес.
Як влаштоване ціноутворення в B2B-порталі?
Якщо в роздробі одна ціна для всіх, то в B2B — матриця. Типи цін в b_catalog_price множаться на групи контрагентів, накопичувальні знижки, валютні перерахунки та договірні умови. Саме тут проект або злітає, або тоне в багах.
Типи цін і прайс-листи. У Бітрікс типи цін задаються через CCatalogGroup. Стандартний набір: роздрібна, дрібнооптова, оптова, дилерська, дистриб'юторська. Кожен контрагент прив'язаний до групи користувачів, група — до типу ціни. Але реальність складніша: один дилер може бачити оптові ціни на електроніку та дистриб'юторські на аксесуари. Це вже не штатний механізм — потрібна кастомна логіка через обробник OnSaleBasketItemBeforePriceSave.
Знижки — прогресивна шкала за обсягом (від 100 штук — мінус 5%, від 500 — мінус 12%), накопичувальні за період, сезонні, за категоріями. Знижки комбінуються через пріоритети в b_sale_discount. Порядок застосування — окремий головний біль: знижка може бути до або після фіксованої; пріоритети налаштовуються в «Правилах роботи з кошиком». При 20+ правилах налагодження перетворюється на квест.
Кредитні ліміти. Контрагенту встановлюється поріг відвантаження в кредит. Поточна заборгованість синхронізується з 1С через регістр РасчетыСКонтрагентами. Перевищення ліміту → блокування оформлення замовлення. Без цього менеджери відвантажують у борг, а бухгалтерія потім розгрібає дебіторку.
Договірні ціни — прайс прив'язаний до конкретного договору: терміни дії, номер, умови пролонгації. Договір закінчився — ціни перемикаються на базові автоматично. Реалізується через користувацькі властивості замовлення та обробник OnSaleComponentOrderProperties.
Валюта — для ЗЕД обов'язково. Перерахунок за курсом ЦБ (парсинг cbr.ru через CCurrencyRates::ConvertCurrency()) або фіксований курс контракту.
Що входить до дилерського кабінету?
Замовлення — повна історія з фільтрацією за статусами, датами, сумами. Повтор попереднього замовлення в один клік — для регулярних закупівель це економить години. Шаблони замовлень для типових позицій.
Фінанси — сальдо взаєморозрахунків, акт звірки, історія оплат. Все, що бухгалтер зазвичай запитує по email і чекає три дні — в кабінеті миттєво. Дані тягнуться з 1С через REST або CommerceML.
Документи — рахунки, накладні, рахунки-фактури, УПД, акти. Формуються в 1С, PDF пушиться на портал через інтеграцію. Завантаження одним кліком. Жодного «надішліть повторно, загубилося в пошті».
Управління співробітниками дилера — адміністратор створює обліковки з розмежуванням прав. Менеджер із закупівель формує замовлення, бухгалтер бачить лише фінанси, керівник — загальну картину. Реалізується через розширення стандартних груп користувачів Бітрікс.
Швидке замовлення: артикул + кількість = рахунок
B2B-клієнт знає, що йому потрібно. Каталог з красивими картками йому не потрібен — потрібна форма: артикул, кількість, наступний рядок.
- Форма швидкого замовлення — автопідстановка найменування та ціни при введенні артикула. Використовуємо AJAX-пошук по
b_iblock_element.XML_ID або PROPERTY_ARTICLE. 50 позицій за 3 хвилини
- Імпорт з Excel/CSV — клієнт вивантажив зі своєї системи, завантажив на портал. Автоспівставлення артикулів, перевірка наявності, формування замовлення. Парсинг через
PHPExcel або PhpSpreadsheet
- Кошик з повною інформацією — вага, об'єм, кількість місць, орієнтовна вартість доставки до оформлення
Чому інтеграція з 1С критична для B2B-порталу?
Без актуальних даних з 1С портал марний. Менеджер Іванов змінив ціну на цвяхи — через 15 хвилин дилер в Красноярську має бачити нову ціну.
| Дані |
Напрямок |
Механізм |
| Каталог, характеристики |
1С → Портал |
CommerceML або REST, 15–60 хв |
| Ціни за типами та контрагентами |
1С → Портал |
REST API, за подією або розкладом |
| Залишки по складах |
1С → Портал |
REST, 5–15 хв або realtime через HTTP-сервіс 1С |
| Замовлення |
Портал → 1С |
REST, реальний час |
| Статуси, відвантаження |
1С → Портал |
За подією |
| Взаєморозрахунки |
1С → Портал |
1–2 рази на день |
| Документи (PDF) |
1С → Портал |
За подією |
CommerceML простіше: штатний модуль обміну, XML-файли, мінімум налаштувань. Але він повільний на великих каталогах і не підтримує кастомні сутності (кредитні ліміти, сальдо). REST API через HTTP-сервіс 1С — гнучкіший, швидший, але потребує доопрацювання на стороні 1С. На практиці часто використовуємо гібрид: CommerceML для каталогу, REST для цін, залишків і документів. Згідно з офіційною документацією 1С-Бітрікс, для B2B-порталів критично налаштувати синхронізацію довідників та залишків у реальному часі. Детальніше про CommerceML та REST API 1С-Бітрікс.
ЕДО: юридично значущий обмін без паперу
Для великих B2B-проектів:
- Провайдери — Контур.Діадок, СБІС, Калуга Астрал. Рахунки-фактури, акти, накладні в електронному вигляді з юридичною силою
- КЕП — кваліфікований електронний підпис. Контрагент підписує акт прямо в кабінеті
- Роумінг між операторами — без цього половина партнерів, у яких інший оператор ЕДО, залишиться за бортом
Багатофілійність
- Регіональні склади — клієнт бачить залишки найближчого складу, може обрати склад відвантаження. Товар є в Новосибірську, але немає в Москві — портал покаже обидва варіанти з різними термінами
- Автоназначення менеджера — дилер з Краснодару працює з Іваном, з Єкатеринбурга — з Мариною. За полем
UF_REGION в картці контрагента
- Локальні умови — мінімальна сума замовлення, умови доставки, терміни — відрізняються за регіонами
Процес розробки B2B-порталів
Розробка B2B-порталів включає п'ять етапів. Нижче таблиця з орієнтовними термінами та результатами.
| Етап |
Термін |
Результат |
| Аудит процесів |
1–2 тижні |
Схема бізнес-процесів, карта інтеграцій |
| Проектування |
2–3 тижні |
Архітектура, прототипи, специфікація обміну з 1С |
| Розробка |
4–8 тижнів |
Кабінети, цінові механіки, інтеграції, документообіг |
| Тестування |
1–2 тижні |
Функціональне, інтеграційне, навантажувальне на реальних даних |
| Пілот |
2–3 тижні |
5–10 дилерів, зворотний зв'язок, доопрацювання |
Що входить в роботу:
- Повна проектна документація (ТЗ, архітектурна схема, протоколи інтеграції)
- Налаштування серверного оточення та розгортання (On-Premise або хмара)
- Перенесення всіх користувацьких даних та конфігурацій
- Навчання адміністраторів порталу (2 заняття онлайн)
- Гарантійна підтримка 12 місяців з реакцією до 4 годин
Після запуску — техпідтримка та розвиток. B2B-портал — жива система, яка еволюціонує разом з бізнесом.
Середня економія часу менеджера на обробці замовлень — до 20 годин на тиждень.
На старті перевірте коректність типів цін та груп користувачів, обмежте кількість знижкових правил (не більше 3–4), протестуйте інтеграцію з 1С на реальних даних, видайте дилерам доступи та проведіть навантажувальне тестування на 50 одночасних користувачів.
Замовте розробку B2B-порталу та отримайте консультацію спеціаліста. Зв'яжіться з нами для обговорення вашого проекту — ми підготуємо попередній розрахунок та запропонуємо оптимальне рішення.