Настройка обмена 1С и 1С-Битрикс через REST API

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка обмена 1С и 1С-Битрикс через REST API
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1175
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • 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 Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка обмена 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 недели.