OneBox Sync — синхронизация заказов для WooCommerce
Бесплатный плагин интеграции WooCommerce с OneBox OS: после checkout в CRM создаётся процесс-заказ с клиентом, адресом доставки и товарами.
- Совместимость
- WordPress 6.2+, WooCommerce 6.0+
- PHP
- 7.4 и новее
- Обновлено
- 13 августа 2026
Что умеет модуль
Как это выглядит
Технические требования
WordPress 6.2+ (протестировано до 7.0)
WooCommerce 6.0 или новее
PHP 7.4+
OneBox OS с компонентом «API v2» (1b.app → Приложения → API-сервисы) и REST API логином/паролем сотрудника (Пользователи и сотрудники → карточка сотрудника)
История версий
Починена кнопка «Отправить повторно» в метабоксе.
Первый публичный релиз: отправка заказов в OneBox OS через API v2 (token/get + order/set), двойная дедупликация (externalid + мета), привязка товаров к каталогу, маршрутизация по…
Полное описание модуля
OneBox Sync для WooCommerce — плагин, который после каждого checkout автоматически создаёт в OneBox OS процесс-заказ с клиентом, телефоном, адресом доставки и списком товаров. Менеджер открывает готовую заявку в CRM вместо того, чтобы переносить данные из заказа WooCommerce руками — и ни один ордер не теряется между сайтом и OneBox.
Как это работает — шаг за шагом
- Покупатель оформляет заказ — плагин поддерживает и классический чекаут, и Checkout Blocks.
- Плагин авторизуется в OneBox: получает токен через POST
/api/v2/token/get/(токен кешируется и обновляется автоматически) и отправляет заказ через POST/api/v2/order/set/на домен вашего OneBox. - Клиент и товары маппятся на CRM: clientname/clientemail/clientphone/clientaddress плюс массив products с привязкой к каталогу OneBox — каталожные товары находятся по артикулу (SKU) или создаются автоматически. Доставка — отдельной строкой, поэтому сумма процесса сходится с суммой заказа.
- OneBox возвращает ID процесса — он сохраняется в мете
_cc_onebox_order_id; дополнительно передаётся externalidwc-{id}, поэтому дубли исключены дважды. - Если OneBox недоступен — WP-Cron повторяет отправку: до 3 попыток — повтор через 5 мин, затем через 30 мин. Оплаченные онлайн заказы получают в комментарии процесса пометку «✅ Оплачено онлайн» (COD и офлайн-методы не помечаются).
Что под капотом
- Двойная дедупликация: externalid
wc-{id}даёт upsert на стороне OneBox, а сохранённый ID процесса в мете заказа блокирует повторное создание со стороны плагина. - Лок на уровне БД — если хук чекаута, смена статуса и колбэк платёжки прилетают на один заказ одновременно, в OneBox уйдёт ровно один запрос на создание (проверено 24 параллельными запросами на 3 заказа).
- Попытка без ответа не дублирует сделку — если OneBox не ответил (таймаут), заказ помечается, а перед повтором плагин спрашивает CRM по externalid (POST
/order/get/) и подхватывает уже созданный процесс. - API-пароль зашифрован в БД — libsodium с HMAC-фолбеком; токен доступа кешируется и обновляется автоматически.
- Нормализация телефона до E.164 (+380…) — номера в CRM приходят в едином формате.
- HPOS-совместимость (custom order tables) — работа с заказами исключительно через WC_Order CRUD.
- Расширяемость: фильтр
cc_onebox_order_payloadпозволяет изменить данные перед отправкой, хукcc_onebox_order_sent— выполнить свой код после успешной синхронизации.
Как установить
- Установите в OneBox компонент «API v2» (1b.app → Приложения → API-сервисы) и задайте сотруднику логин и пароль в карточке (Пользователи и сотрудники → Логин, пароль, права доступа).
- Загрузите
catcode-order-sync-with-onebox-for-woocommerce-0.2.0.zipчерез Плагины → Добавить новый → Загрузить плагин и активируйте. - Откройте WooCommerce → OneBox Sync и укажите домен вашего OneBox, API-логин и API-пароль.
- Нажмите «Проверить соединение» — плагин получит токен и список бизнес-процессов.
- При необходимости укажите ID бизнес-процесса, этапа и источника (пустые поля = первый бизнес-процесс автоматически) и сохраните.
- Сделайте тестовый заказ — в OneBox появится процесс-заказ.
Вопросы
о модуле
Не нашли ответ? Напишите в Telegram — ответим в течение рабочего дня.
Откуда взять API-логин и пароль?
Кабинет OneBox OS → приложение «Пользователи и сотрудники» → карточка сотрудника → REST API пароль. Логин — логин этого сотрудника. Плагин сам обменивает их на токен через /api/v2/token/get/.
Создаются ли дубли при повторной смене статуса?
Нет. Плагин передаёт externalid wc-{id} — OneBox сам обновляет найденный процесс — и дополнительно сверяет сохранённый OneBox ID в мете заказа.
Что делает кнопка «Отправить повторно»?
Если заказ ещё не в OneBox — создаёт процесс. Если уже отправлен — обновляет тот же процесс актуальными данными: товары обновляются, а не дублируются.
Трогает ли плагин checkout или тему?
Нет. Вся работа происходит на сервере через хуки заказов — фронтенд, тема и страница оформления не меняются.
Что будет, если у товара нет совпадения в каталоге OneBox?
Плагин передаёт товары с привязкой к каталогу (productinfo: название, артикул, externalid) — товар находится по артикулу или создаётся в каталоге автоматически.
Что будет, если OneBox совсем не ответит?
Заказ помечается как «попытка без ответа», и перед повтором плагин спрашивает OneBox, нет ли там уже процесса с таким externalid. Если есть — подхватывает его ID и пишет заметку в заказе; второй процесс не создаётся.
Что будет после удаления плагина?
Процессы в OneBox и сами заказы останутся. Плагин убирает свою таблицу журнала, настройки и остаточные локи, а служебную мету с ID процесса оставляет намеренно — именно она не даёт повторно отправить старые заказы после переустановки.
Пока нет ни одного отзыва. Будьте первым.
Пока вопросов нет. Спроси — мы ответим в течение 24 часов.
Не тот вариант, что искали?
Делаем кастомные модули под WordPress, WooCommerce, OpenCart и Shopify. Расскажите о задаче — подготовим оценку.
Заказать кастомный модуль
Покупка модуля
—