Налаштування обміну договорами контрагентів 1С та 1С-Бітрікс

У B2B-секторі кожен клієнт працює за індивідуальним договором: свої ціни, знижки, кредитний ліміт, термін оплати. Без синхронізації цих договорів з 1С у Бітрікс сайт не здатен коректно відобразити умови — клієнт бачить загальні ціни, менеджери вручну правлять замовлення, помилки ціноутворення сягают
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування обміну договорами контрагентів 1С та 1С-Бітрікс
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1461
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    764
  • Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    810
  • Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1166

У B2B-секторі кожен клієнт працює за індивідуальним договором: свої ціни, знижки, кредитний ліміт, термін оплати. Без синхронізації цих договорів з 1С у Бітрікс сайт не здатен коректно відобразити умови — клієнт бачить загальні ціни, менеджери вручну правлять замовлення, помилки ціноутворення сягають 30% на місяць. Ручне звірення договорів забирає до 20 годин на місяць у кожного менеджера, а кожна помилка в ціні — пряма втрата прибутку. Впровадження автоматизації окупається в перші 3 місяці за рахунок зниження штрафних санкцій і бухгалтерських помилок.

Стандартний CommerceML обмін не передає договори контрагентів — це обмеження платформи. Ми розробили розширення, яке через HTTP-сервіс 1С або файловий обмін передає повний набір реквізитів договору: GUID, номер, вид ціни, дати дії, кредитний ліміт та статус. За 5 років ми реалізували понад 20 таких інтеграцій для дистриб'юторів, виробників і оптових мереж.

Роль договору в 1С

В УТ, КА та ERP договір контрагента (ДоговорыКонтрагентов) — ключовий об'єкт ціноутворення. З договором пов'язані:

  • вид ціни — який прайс застосовується до цього клієнта;
  • знижки — персональні знижки або знижки за договором;
  • валюта розрахунків;
  • кредитний ліміт та термін кредиту;
  • умови оплати (передоплата, постоплата, днів відстрочки).

Якщо в 1С у клієнта три діючих договори (наприклад, роздрібний, оптовий та спеціальний), на сайті він повинен бачити ціни за потрібним договором і мати можливість вибрати договір при оформленні замовлення.

Передача договорів: архітектура

Стандартний CommerceML не передає договори. Потрібна кастомна синхронізація через HTTP-сервіс 1С або через файловий обмін. HTTP-сервіс обробляє запити в 3 рази швидше файлового обміну і підходить для каталогів із частими змінами.

Мінімальний набір даних договору для сайту:

{ "guid": "a1b2c3d4-1234-...", "number": "Д-0015", "name": "Договір поставки №15 від дати", "contractor_guid": "контрагент-guid", "price_type_guid": "вид-ціни-guid", "price_type_name": "Оптова", "credit_limit": 500000, "payment_delay_days": 14, "currency": "RUB", "valid_from": "2025-03-01", "valid_to": "2026-03-01", "is_active": true } 

У Бітрікс договори зберігаються в HighloadBlock ContractorContracts. При відкритті каталогу — визначається активний договір користувача, до нього прив'язується тип ціни в торговому каталозі.

Порівняння способів зберігання договорів у Бітрікс

Критерій HighloadBlock Інфоблок
Швидкість роботи з сотнями тисяч записів Швидко Повільно
Підтримка сортування та фільтрації Так Так, але важче
Зв'язок з користувачами Прямий (UF_USER) Через властивість
Складність налаштування Середня Висока (властивості)

Вибір залежить від обсягу договорів. Для каталогів із тисячами контрагентів HL-блок кращий.

Чому важливий маппінг договору на тип ціни?

Ключове завдання: користувач з певним договором повинен бачити ціни з пов'язаного виду цін. Реалізація:

  1. При авторизації користувача — визначаємо його договір(и) з HighloadBlock.
  2. Визначаємо тип ціни за договором (price_type_guid → ID типу ціни в Бітрікс).
  3. Встановлюємо сесійну змінну або параметр користувача CURRENT_PRICE_TYPE.
  4. Компонент каталогу читає цю змінну і виводить ціни потрібного типу.

Якщо у користувача кілька договорів — надаємо вибір в особистому кабінеті: «Працювати за договором №...». Вибір зберігається в сесії.

Як часто синхронізувати договори?

Договори змінюються рідко — новий договір підписується раз на рік, умови переглядаються раз на квартал. Достатньо синхронізувати раз на годину або навіть раз на добу.

Але є критичний сценарій: договір розірвано або закінчився — клієнт не повинен продовжувати бачити оптові ціни. Для цього в логіку авторизації додаємо перевірку valid_to договору. Якщо дата закінчилася — переводимо користувача на базовий тип ціни.

Як договір впливає на замовлення в 1С?

При передачі замовлення з Бітрікс в 1С потрібно вказати договір, за яким виставляється замовлення. В XML замовлення:

<ЗначениеРеквизита> <Наименование>ДоговорId</Наименование> <Значение>a1b2c3d4-1234-...</Значение> </ЗначениеРеквизита> 

В УТ при створенні замовлення покупця договір береться з цього реквізиту. Без договору — замовлення створюється за замовчуванням (перший активний договір контрагента), що може призвести до невірного ціноутворення в документах 1С.

Кейс з нашої практики: дистриб'ютор з індивідуальними умовами

Дистриб'ютор медичного обладнання: 180 дилерів, у кожного — індивідуальний договір зі своєю ціною (знижка від 5% до 40% від роздробу). Всі ціни ведуться в УТ як окремі види цін на кожного дилера (18 видів цін).

Завдання на сайті: кожен дилер при вході бачить тільки свої ціни, ціни інших дилерів недоступні. Реалізація:

  • синхронізація договорів з УТ у Бітрікс — раз на 2 години;
  • при авторизації — визначається договір, з нього береться GUID виду ціни;
  • GUID мапиться на тип ціни в Бітрікс (таблиця маппінгу в налаштуваннях);
  • каталог показує ціни потрібного типу.

Результат: економія часу менеджерів на 40%, зниження помилок ціноутворення на 95%.

Додатково: у кожного дилера є «менеджер-куратор» в УТ. При створенні замовлення на сайті — в замовлення автоматично додається менеджер (з поля договору ОтветственныйМенеджер). Менеджер в УТ одразу бачить замовлення свого клієнта.

Термін дії та автоматичне продовження

Якщо договір закінчується — за 30 днів до закінчення відправляємо сповіщення відповідальному менеджеру в Бітрікс24 (через REST API). Регламентне завдання в Бітрікс перевіряє valid_to всіх договорів щодня.

// Агент перевірки терміну дії договорів function checkContractExpiry() { $soon = date('Y-m-d', strtotime('+30 days')); $contracts = getContractsExpiringBefore($soon); foreach ($contracts as $contract) { notifyManager($contract['manager_id'], $contract); } return 'checkContractExpiry()'; // агент перезапускається } 

Що входить в роботу

Оцінимо ваш проект і запропонуємо рішення під ключ. В послугу входить:

  • аудит поточної схеми обліку договорів в 1С;
  • розробка HTTP-сервісу або файлового обміну для передачі договорів;
  • створення HighloadBlock ContractorContracts і налаштування маппінгу;
  • реалізація вибору договору в особистому кабінеті та сесійної логіки;
  • інтеграція з Бітрікс24 для сповіщень про закінчення;
  • тестування та гарантія 1 місяць на доопрацювання.

Замовте аудит поточної схеми обліку — це безкоштовно. Зв'яжіться з нами — отримайте консультацію з інтеграції ваших 1С та Бітрікс.

Синхронізація: способи та терміни

Спосіб Частота Підходить для
HTTP-сервіс 1С Кожні 1–2 години Середні та великі каталоги з частими змінами
Файловий обмін (CommerceML) Раз на добу Невеликі каталоги, стабільні договори
Ручний імпорт За запитом Разові інтеграції, тестування

Вибір способу залежить від обсягу даних та вимог до актуальності. Ми рекомендуємо HTTP-сервіс для динамічних проектів з великою кількістю контрагентів.

Досвід 5+ років та понад 20 успішних інтеграцій у сфері 1С-Бітрікс. Гарантуємо коректну роботу синхронізації, дотримання термінів (від 10 робочих днів) та підтримку після запуску.