Интеграция 1С с сайтом: способы и архитектура
Как связать 1С и интернет-магазин? Рассмотрим три основных подхода: типовой обмен CommerceML, свой API на HTTP-сервисах и использование шины данных.
1. Типовой обмен (CommerceML)
Это стандарт для CMS "1С-Битрикс", но поддерживается и другими (InSales, OpenCart и др.). 1С генерирует XML-файлы с товарами (import.xml, offers.xml) и отправляет их на сайт, а с сайта забирает заказы.
- Плюсы: Есть "из коробки" в УТ, КА, ERP, УНФ. Не требует программирования (только настройка).
- Минусы: Медленный на больших объемах. Сложно кастомизировать структуру данных. Не работает в реальном времени (обычно по расписанию).
2. REST API (HTTP-сервисы)
Самый современный подход. Вы создаете в 1С HTTP-сервис, к которому сайт обращается напрямую. Например, для получения актуального остатка или цены товара в момент открытия карточки посетителем.
// Пример ответа 1С на запрос остатка
Функция ПолучитьОстаток(Запрос)
Артикул = Запрос.ПараметрыЗапроса.Получить("article");
// ... запрос к базе ...
Ответ = Новый HTTPСервисОтвет(200);
Ответ.УстановитьТелоИзСтроки("{""quantity"": 15, ""price"": 2500}");
Возврат Ответ;
КонецФункции
3. Прямая запись в SQL (MySQL/PostgreSQL)
1С подключается напрямую к базе данных сайта через внешний источник данных (ODBC). Опасный, но очень быстрый способ. Сейчас используется редко, так как требует открытия базы сайта во вне.
Нужна интеграция с гарантией?
Настрою бесшовную интеграцию 1С с любым сайтом, маркетплейсом или CRM. Опыт сложных обменов 10+ лет.
Обсудить проект →