Что внутри
- Каждый заказ WooCommerce автоматически становится заявкой в SalesDrive
- Передаются имя, телефон, товары, доставка, способ оплаты и комментарий покупателя
- Поддержка классического чекаута и Checkout Blocks
- Триггер-статусы на выбор
- Дедупликация — повторная отправка не создаёт вторую заявку
- Повторные попытки при недоступности CRM
- Журнал обменов и метабокс в заказе
- Совместимость с HPOS
- Бесплатный
SalesDrive Sync для WooCommerce — плагин, который автоматически передаёт каждый заказ WooCommerce в CRM SalesDrive. Как только покупатель завершил checkout, в SalesDrive появляется заявка с покупателем, товарами, доставкой и комментарием — менеджер работает в CRM, а не копирует данные из админки сайта вручную. Поддерживаются и классический чекаут, и новые Checkout Blocks.
Плагин полностью бесплатный. Скачать: catcode-order-sync-with-salesdrive-for-woocommerce-0.2.0.zip. Лицензия GPLv2 — без ключей, без пробных периодов, без ограничений по количеству заказов.
Что получает админ



Как это работает — шаг за шагом
- Покупатель оформляет заказ в магазине — через классический чекаут или Checkout Blocks.
- Плагин собирает payload: покупатель (телефон нормализуется до формата +380), товары с SKU, ценой и количеством, доставка, комментарий. Для оплаченных онлайн заказов в комментарий опционально добавляется пометка «Оплачено онлайн».
- Данные летят в SalesDrive через обработчик заявок — POST /handler/ с заголовком X-Api-Key.
- SalesDrive возвращает номер заявки — он сохраняется в мете заказа (_cc_salesdrive_order_id). Вместе с локом на уровне БД это гарантирует: один заказ — одна заявка.
- Если CRM временно недоступна — плагин сам повторяет отправку: 3 попытки с паузами 5 мин / 30 мин / 2 ч по WP-Cron.
- Менеджер видит результат в метабоксе заказа и во вкладке «Журнал» на странице настроек.
Сколько стоит
Бесплатно. Плагин распространяется под лицензией GPLv2 — скачивайте и пользуйтесь без активаций, подписок и лимитов.
Технические требования
- WordPress 6.2+ (протестировано до 7.0)
- WooCommerce 6.0 или новее, включая HPOS (custom order tables)
- PHP 7.4+
- Кабинет SalesDrive: домен вида yourshop.salesdrive.me и API-ключ базы заявок с правом «Заявки: добавление» (Установки → Общие настройки и интеграции → Другие сервисы → API → API-ключи). Право «Заявки: чтение» не обязательно, но желательно — с ним плагин после таймаута проверяет, создана ли заявка, вместо того чтобы рисковать дублем.
Что под капотом
- API-ключ зашифрован в БД — libsodium с HMAC-фолбеком для хостингов без расширения sodium. В открытом виде ключ в базе не лежит.
- Лок на уровне БД против дубля: чекаут, смена статуса и колбэк платёжки могут прилететь одновременно — в работу проходит ровно один запрос, а заказ перечитывается мимо кеша HPOS перед финальной проверкой.
- Проверка по externalId после таймаута: обработчик заявок SalesDrive НЕ дедуплицирует (два POST с тем же externalId дают две заявки), поэтому перед повторной попыткой плагин спрашивает CRM через GET /api/order/list/, есть ли заявка, и подхватывает её ID. Если у ключа нет права на чтение — заказ помечается в метабоксе, чтобы менеджер проверил CRM вручную.
- HPOS-совместимость — вся работа с заказами идёт только через WC_Order CRUD, без прямых запросов к постам.
- Нормализация телефона покупателя до E.164 (+380…) перед отправкой в CRM.
- Валюта: у обработчика заявок нет поля валюты, поэтому для заказов не в гривне код валюты дописывается в комментарий заявки.
- Точки расширения для разработчиков: фильтр cc_salesdrive_order_payload (изменить тело заявки) и хук cc_salesdrive_order_sent (реакция на успешную отправку).
Как установить
- Скачайте
catcode-order-sync-with-salesdrive-for-woocommerce-0.2.0.zipи установите через Плагины → Добавить новый → Загрузить плагин. - Активируйте в меню «Плагины».
- Откройте WooCommerce → SalesDrive Sync, введите домен кабинета и API-ключ.
- Нажмите «Проверить соединение» — убедитесь, что CRM отвечает.
- Выберите, когда отправлять заказы (сразу после checkout или при переходе в выбранные статусы), сохраните настройки.
История версий
- 0.2.0 — август 2026
- Кнопка «Отправить повторно» в метабоксе наконец работает: раньше метабокс рисовал собственную форму внутри формы заказа WooCommerce, и браузер её выбрасывал — клик ничего не отправлял. Теперь это нонсифицированная ссылка с сообщением о результате. Защита от двойной отправки переведена с транзиента на лок уровня БД (транзиент — это read-then-write, и параллельные запросы создавали две заявки). После попытки, не получившей ответа, плагин проверяет по externalId через GET /api/order/list/, есть ли заявка, и подхватывает её вместо создания второй. Удаление плагина теперь убирает и таблицу журнала. Пометка об оплате больше не уезжает в CRM HTML-сущностью вместо символа гривны; для заказов не в гривне дописывается код валюты. Интерфейс переведён на английский с украинским переводом в /languages, под wp.org плагин переименован в catcode-order-sync-with-salesdrive-for-woocommerce (настройки, мета заказов и таблица журнала не изменились — мигрировать ничего не надо).
- 0.1.0 — июль 2026
- Первый публичный релиз: отправка заказов в SalesDrive после checkout или по статусу-триггеру, дедупликация по externalId, повторные попытки через WP-Cron (3 попытки), метабокс в заказе с ручной отправкой, журнал событий, проверка соединения, шифрование API-ключа, HPOS-совместимость.
Частые вопросы
Меняет ли плагин мой checkout или тему?
Нет. Плагин работает только «за кулисами»: слушает события создания заказа и смены статуса. Никаких изменений в шаблонах или чекауте.
Откуда взять API-ключ SalesDrive?
Кабинет SalesDrive → Установки → Общие настройки и интеграции → Другие сервисы → API → API-ключи. Нужен ключ базы заявок с правом «Заявки: добавление»; добавьте ещё «Заявки: чтение», чтобы работала проверка дублей после таймаута.
Создадутся ли дубли, если статус заказа меняется несколько раз?
Нет. Плагин сохраняет SalesDrive ID в мете заказа, а перед отправкой берёт лок на уровне базы — даже если чекаут, смена статуса и колбэк платёжки сработают одновременно, заявка создастся одна. Если ответ от CRM вообще не пришёл, плагин перед повтором проверяет по externalId, нет ли заявки там.
Что делает кнопка «Отправить повторно»?
Если заказ ещё не в SalesDrive — создаёт заявку. Если уже отправлен — обновляет её актуальными данными через /api/order/update/. Результат показывается сообщением вверху страницы заказа.
Что будет после удаления плагина?
Удаление (не деактивация) убирает настройки, зашифрованный ключ и таблицу журнала. ID заявок на заказах остаются намеренно — именно они не дают при переустановке залить в CRM вторую копию старого заказа.
В какой валюте идут суммы?
В валюте заказа, обычными числами: у обработчика заявок SalesDrive нет поля валюты, поэтому суммы попадают в ту валюту, в которой работает ваш кабинет. Для заказов не в гривне плагин дописывает код валюты в комментарий заявки.
Работает ли с новым блочным чекаутом WooCommerce?
Да, поддерживаются и классический чекаут, и Checkout Blocks.
Вопросы по модулю?
Пишите в Telegram — ответим в течение рабочего дня. Поможем с настройкой, совместимостью и активацией ключа.
Пока ни одного отзыва. Будь первым — ниже.
Оставить отзыв
Отзыв модерируется перед публикацией — обычно это занимает до 24 часов.
Пока вопросов нет. Спроси — мы ответим в течение 24 часов.
Задать вопрос
Обычно отвечаем в течение 24 часов в рабочее время.
Покупка модуля
—