WooCommerce — плагин магазина для WordPress с полноценным REST API и вебхуками. Для связки с 1С и складом это и удобство (открытый API, много расширений), и зона риска (обмен через сторонние плагины, зоопарк версий). Разберём, как выстроить надёжный обмен каталогом и заказами и как перейти на 1С-Битрикс.
Как WooCommerce обменивается данными
WooCommerce — это магазин поверх WordPress. Данные (товары, заказы, клиенты) хранятся в его БД, а наружу выставлены два канала: REST API и вебхуки. Для обмена с 1С дополнительно ставят плагин, реализующий протокол CommerceML — тот же, что использует 1С-Битрикс.
Что обычно интегрируют:
- Каталог — товары, вариации, цены, остатки из 1С;
- Заказы — из WooCommerce в CRM и 1С;
- Статусы — оплата и отгрузка обратно;
- Клиенты — с дедупликацией и оптовыми ценами.
REST API и аутентификация
WooCommerce REST API версии wc/v3 доступен по адресу вида /wp-json/wc/v3/. Основные ресурсы — products, products/<id>/variations, orders, customers. Авторизация — пара Consumer Key / Consumer Secret (HTTP Basic поверх HTTPS):
GET /wp-json/wc/v3/orders?status=processing
События (новый заказ, смена статуса) отдаются вебхуками, которые настраиваются в панели WooCommerce. Это правильный способ ловить заказы, а не опрашивать API в цикле.
Обмен с 1С по CommerceML
Каталог и заказы с 1С обычно гоняют не через REST, а плагином CommerceML. Механика та же, что у Битрикса:
- в 1С настраивается узел обмена с адресом точки на сайте;
- 1С выгружает
import.xmlиoffers.xml; - плагин раскладывает товары, вариации, цены и остатки;
- заказы отдаются обратно в 1С этим же протоколом.
Тонкое место WooCommerce — вариативные товары (variable products с вариациями). Характеристики 1С должны корректно ложиться на атрибуты и вариации Woo, иначе размеры/цвета «схлопнутся» в один товар или задублируются. Ключ сопоставления — SKU/артикул, единый в обеих системах.
Производительность и остатки
WooCommerce на большом каталоге чувствителен к нагрузке — сказывается природа WordPress с метаполями. Сравним подходы к обмену:
| Подход | Когда уместен | Риск |
|---|---|---|
| Полная выгрузка CommerceML | Первичная загрузка | Долго на 50k+ SKU |
| Инкрементальный обмен | Регулярно | Нужна фиксация изменений в 1С |
| REST batch по остаткам | Частое обновление цен/остатков | Лимиты и нагрузка на БД |
Практика: первичную загрузку делают полным пакетом, а дальше переходят на инкрементальный обмен — выгружать только изменённые товары и остатки. Это резко снижает нагрузку и время синхронизации.
Заказы и CRM
Заказ WooCommerce уходит в 1С через плагин, а в CRM — через вебхук и API. Надёжная схема:
- вебхук
order.createdловит новый заказ; - прослойка создаёт сделку в CRM и документ в 1С;
- идемпотентность по ID заказа Woo исключает дубли;
- обратно возвращаются статусы оплаты и отгрузки.
Если CRM внешняя (Битрикс24, retailCRM, amoCRM), назначьте её единственным владельцем воронки, а плагин 1С используйте под товароучёт и остатки. Так каналы не конкурируют за один заказ.
Миграция на 1С-Битрикс
Переезд с WooCommerce на 1С-Битрикс обычно вызван ростом B2B: тяжёлый каталог, персональные и дилерские цены, требования к скорости и стабильности, глубокие интеграции с маркетплейсами и логистикой.
Есть прямой доступ к БД WordPress, поэтому перенос управляем:
- Каталог — из 1С в Битрикс по CommerceML (первоисточник — 1С);
- Вариации — раскладываются в торговые предложения (SKU) инфоблока;
- Заказы и клиенты — экспорт через REST API Woo или из БД;
- URL — карта 301-редиректов со старых адресов WooCommerce.
Итог
WooCommerce гибок за счёт открытого REST API и вебхуков, но обмен с 1С держится на плагине CommerceML, а производительность на большом каталоге требует инкрементального обмена и контроля кэша. Ключевые опоры связки — единый SKU, аккуратные вариации, идемпотентность заказов и один владелец воронки в CRM.
Мы настраиваем обмен WooCommerce с 1С и CRM, оптимизируем синхронизацию каталога и остатков, а при росте нагрузки переносим магазин на 1С-Битрикс без потери товаров, заказов и SEO. Если Woo тормозит на вашем ассортименте — поможем наладить обмен или спланировать переезд.
Частые вопросы
Есть ли у WooCommerce обмен с 1С из коробки?
Нет, штатного обмена нет. Его добавляет плагин, реализующий протокол CommerceML — тот же, что у 1С-Битрикс. От качества плагина зависит стабильность вариаций и остатков.
Как авторизоваться в REST API WooCommerce?
Парой Consumer Key и Consumer Secret по HTTP Basic поверх HTTPS. API версии wc/v3 доступен по адресу /wp-json/wc/v3/ с ресурсами products, orders, customers и вариациями.
Почему у товаров с размерами ломаются вариации?
Из-за неверного маппинга: характеристики 1С должны корректно ложиться на атрибуты и вариации Woo. При ошибке модификации схлопываются в один товар или дублируются. Ключ — единый SKU.
Как ускорить обмен на большом каталоге?
Первичную загрузку делают полным пакетом CommerceML, а дальше переходят на инкрементальный обмен — выгружают только изменённые товары и остатки. Это снижает нагрузку на WordPress.
Почему на сайте показываются неверные остатки?
Часто виноват кэш WordPress. При обновлении наличия нужно сбрасывать кэш товара, иначе покупатель увидит «в наличии» там, где на складе уже ноль.
Как ловить заказы для CRM?
Через вебхук order.created, а не опрос API в цикле. Прослойка создаёт сделку в CRM и документ в 1С с идемпотентностью по ID заказа Woo, чтобы не было дублей.
Сложно ли перейти с WooCommerce на 1С-Битрикс?
Перенос управляем за счёт доступа к базе WordPress. Каталог берётся из 1С по CommerceML, вариации раскладываются в SKU, заказы и клиенты выгружаются через API, старые URL закрываются 301-редиректами.
Поможем с настройкой и поддержкой Интеграции и связки систем
Поможем с настройкой, доработкой и поддержкой Интеграции и связки систем.