Налаштування обміну 1С та 1С-Бітрікс через REST API

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Налаштування обміну 1С та 1С-Бітрікс через REST API
Проста
~1 робочий день
Часті питання

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

Етапи розробки

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

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Налаштування обміну 1С і 1С-Бітрікс через REST API

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

Коли REST API кращий за CommerceML

REST-інтеграція виправдана при:

  • Необхідності оновлення даних швидше, ніж раз на 15 хвилин (ціни при акції, критичні залишки)
  • Обміні нестандартними даними, яких немає в CommerceML
  • Інтеграції з кастомною конфігурацією 1С без стандартного обробника обміну
  • Наявності кількох сайтів або сервісів, підключених до однієї бази 1С

REST API Бітрікс для інтеграції з 1С

Бітрікс надає REST API через модуль rest. Для зовнішніх систем створити вхідний вебхук:

Налаштування → Налаштування продуктів → REST API → Вхідні вебхуки → Додати

Права вебхука — тільки необхідні: catalog для каталогу, sale для замовлень. Не надавати вебхуку права адміністратора.

Оновлення залишків через REST

З 1С (через HTTP-з'єднання в конфігураторі) запит до API Бітрікс:

POST https://myshop.ru/rest/1/WEBHOOK_KEY/catalog.storeproduct.update
Content-Type: application/json

{
    "productId": 12345,
    "storeId": 3,
    "amount": 47
}

Це точкове оновлення — змінюється тільки конкретний товар на конкретному складі. На відміну від пакетного вивантаження, яке обробляє всі 50 000 позицій, REST-виклик займає мілісекунди.

Отримання замовлень із Бітрікс у 1С через REST

Альтернатива файловому обміну замовленнями — 1С опитує REST API за розкладом:

GET https://myshop.ru/rest/1/WEBHOOK_KEY/sale.order.list
    ?filter[STATUS_ID]=N
    &filter[>=DATE_INSERT]=2024-03-15T00:00:00
    &select[]=ID
    &select[]=ACCOUNT_NUMBER
    &select[]=PRICE
    &select[]=CURRENCY

Відповідь — JSON зі списком нових замовлень. 1С обробляє кожне, створює документи, після чого оновлює статус через sale.order.update.

Вебхуки Бітрікс для push-сповіщень у 1С

Для негайної передачі подій (нове замовлення, зміна статусу) — налаштувати вихідний вебхук Бітрікс, який надсилає дані до HTTP-сервісу 1С:

Налаштування → REST API → Вихідні вебхуки → Додати:

  • URL: адреса HTTP-сервісу в 1С
  • Тип події: ONSALEORDERNEW (нове замовлення)

При появі нового замовлення Бітрікс негайно POST-запитом сповіщає 1С — без очікування наступного сеансу обміну.

HTTP-сервіс у 1С

Для прийому REST-запитів від Бітрікс у 1С потрібен HTTP-сервіс (конфігуратор → Загальні → HTTP-сервіси). Публікується як частина конфігурації:

Адреса сервісу: https://1c.myshop.ru/CompanyName/hs/exchange/

Методи обробника приймають JSON, обробляють і повертають відповідь із HTTP-статусом.

Терміни налаштування

Налаштування REST-інтеграції для обміну залишками та замовленнями — 1–2 дні. З вебхуками та push-сповіщеннями в обидва боки — 3–5 днів. Повна заміна CommerceML на REST API для великого каталогу — 1–3 тижні.