Зв'язатись
CRM та інтеграції · WordPress

NetHunt Sync — CRM для WooCommerce

Автоматична передача замовлень WooCommerce у NetHunt CRM: запис створюється одразу після checkout у папці з телефоном, товарами та сумою. Автостворення папки з полями, дедуплікація, повторні спроби, метабокс статусу й журнал синхронізації.

Версія
v0.2.0
Сумісність
WordPress 6.2+, WooCommerce 6.0+
Платформа
WordPress
NetHunt Sync — CRM для WooCommerce

Що включено в ліцензії

Функція Free
Кожне замовлення WooCommerce потрапляє записом у папку NetHunt CRM
Передаються телефон, email, сума, список товарів і посилання на замовлення
Підтримка класичного чекауту та Checkout Blocks
Тригер-статуси на вибір
Дедуплікація записів: лок на рівні БД проти паралельних відправок
Пошук запису за «Order ID» після таймауту — без другого запису в CRM
Повторні спроби при недоступності CRM
Журнал обмінів і метабокс у замовленні
Сумісність з HPOS
Безкоштовний

NetHunt Sync для WooCommerce — плагін, який автоматично передає кожне нове замовлення WooCommerce у NetHunt CRM. Одразу після оформлення в папці NetHunt з’являється запис із телефоном, email, сумою, списком товарів і посиланням на замовлення — менеджер працює із заявкою в CRM, а не переносить дані з адмінки магазину вручну.

Плагін повністю безкоштовний, код відкритий. Завантажити можна з GitHub: github.com/catcodestudio/wp-nethunt-sync. Жодних ліцензійних ключів, платних версій чи обмежень за кількістю замовлень.

Що отримує адмін

Налаштування NetHunt Sync для WooCommerce — токен, папка, тригерні статуси
Одна сторінка налаштувань у WooCommerce: API-токен, папка для замовлень, момент відправки — одразу після checkout або при переході в один із вибраних статусів. Тут же кнопка «Перевірити з’єднання» і вкладка «Журнал» з останніми подіями синхронізації.
Метабокс NetHunt у замовленні WooCommerce зі статусом синхронізації
На сторінці кожного замовлення — метабокс NetHunt: статус синхронізації, ID запису в CRM і кнопка «Відправити повторно» (з 0.2.0 працює як нонсифіковане посилання — раніше вкладена форма всередині форми замовлення не давала їй спрацювати). Для вже відправлених замовлень повторна відправка оновлює наявний запис через PATCH, а не створює дубль.
Папка WooCommerce Orders у NetHunt CRM із записами замовлень
Так замовлення виглядають у самому NetHunt: папка «WooCommerce Orders» із записами, де кожне замовлення має телефон, email, суму, список товарів і спосіб оплати. Папку з усіма полями плагін створює сам.

Як це працює — крок за кроком

  1. Покупець оформлює замовлення — підтримується і класичний checkout, і Checkout Blocks.
  2. Плагін збирає поля запису: ім’я, телефон (нормалізується до формату +380), email, суму, товари, адресу і спосіб оплати — та надсилає POST /api/v2/folders/{folderId}/records у NetHunt із заголовком Authorization: Bearer.
  3. NetHunt повертає ID запису — він зберігається у меті замовлення _cc_nethunt_record_id, тому дублі виключені.
  4. Якщо NetHunt тимчасово недоступний — WP-Cron повторює відправку автоматично: 3 спроби з паузами 5 хв / 30 хв / 2 год.
  5. Менеджер бачить результат у метабоксі замовлення та в журналі синхронізації; сплачені онлайн замовлення отримують чекбокс Paid і позначку «✅ Оплачено онлайн» у коментарі.

Скільки коштує

Безкоштовно. Плагін розповсюджується під ліцензією GPLv2, код відкритий на GitHub. Усі функції доступні одразу після встановлення — платної версії не існує.

Технічні вимоги

  • WordPress 6.2+ (тестовано до 7.0)
  • WooCommerce 6.0 або новіше
  • PHP 7.4+
  • API-токен NetHunt — створюється у кабінеті: Settings → API & MCP → Create token

Що під капотом

  • Публічне REST API v2 NetHunt з Bearer-токеном; кнопка «Перевірити з’єднання» робить GET /folders і одразу показує, чи валідний токен.
  • Автопровіжн папки: якщо папку не вказано, плагін створює «WooCommerce Orders (домен)» з усіма полями однією дією. Якщо вказати власну папку — додасть лише відсутні поля (Phone, Email, Total, Products, Payment method тощо), наявні не чіпає.
  • Захист від подвійної відправки на рівні БД: чекаут, зміна статусу і колбек оплати можуть прилетіти на одне замовлення одночасно — лок бере рівно один запит, решта відсіюються, тож другого запису в CRM не буде.
  • Поле «Order ID» у папці: якщо відповіді від NetHunt не було (таймаут), плагін перед повторною спробою шукає запис за цим полем і підхоплює наявний замість того, щоб створити другий. Папкам, створеним у 0.1.0, поле додається автоматично.
  • Чисте видалення: разом із плагіном зникають таблиця журналу й налаштування; ID записів на замовленнях лишаються навмисно — саме вони не дають при перевстановленні залити старі замовлення в CRM удруге.
  • Шифрування API-токена у БД — libsodium з HMAC-фолбеком; токен не лежить у відкритому вигляді.
  • HPOS-сумісність (custom order tables) — робота із замовленнями тільки через WC_Order CRUD.
  • Точки розширення для розробників: фільтр cc_nethunt_order_payload (змінити дані перед відправкою) і хук cc_nethunt_order_sent (реакція на успішну синхронізацію).

Як встановити

  1. Завантажте catcode-order-sync-with-nethunt-for-woocommerce-0.2.0.zip через Плагіни → Додати новий → Завантажити плагін.
  2. Активуйте плагін у меню «Плагіни».
  3. Відкрийте WooCommerce → NetHunt Sync і вставте API-токен з кабінету NetHunt (Settings → API & MCP → Create token).
  4. Збережіть налаштування — плагін сам створить папку «WooCommerce Orders» з полями або підключить вказану вами.
  5. Натисніть «Перевірити з’єднання» — має з’явитися підтвердження.
  6. Зробіть тестове замовлення і перевірте, що запис з’явився в NetHunt.

Історія версій

0.2.0 — серпень 2026
Кнопка «Відправити повторно» нарешті працює: метабокс малював власну форму всередині форми замовлення, і браузер її викидав. Захист від подвійної відправки переїхав з транзієнта на лок у базі — паралельні запити більше не створюють два записи. Додано поле «Order ID» у папці й пошук за ним після таймауту, щоб спроба без відповіді не перетворилась на другий запис. Видалення плагіна тепер прибирає таблицю журналу. Стилі адмінки — через wp_add_inline_style, інтерфейс переведено на англійську з українським перекладом у /languages. Плагін перейменовано на «CatCode Order Sync with NetHunt for WooCommerce» (налаштування, мета й таблиця не змінились — мігрувати нічого не треба).
0.1.0 — липень 2026
Перший публічний реліз: відправка замовлень у папку NetHunt через REST API v2, автопровіжн папки з полями, повторні спроби через WP-Cron, метабокс у замовленні, журнал синхронізації, перевірка з’єднання, шифрування токена.

Часті питання

Чи треба вручну створювати поля в NetHunt?

Ні. Якщо поле «Папка для замовлень» порожнє, плагін створює папку з усіма полями сам. Якщо вказати ID існуючої папки — додасть лише відсутні поля, ваші наявні не зміняться.

Чи створюються дублі при повторній зміні статусу?

Ні. Плагін зберігає NetHunt ID запису у меті замовлення і перед створенням перевіряє його. Одночасні події розводить лок на рівні БД, а спробу без відповіді плагін перед повтором звіряє за полем «Order ID» у папці — другий запис не створюється.

Чи чіпає плагін checkout або тему?

Ні. Плагін працює тільки з хуками замовлень на боці сервера — жодних змін у темі, шаблонах чи сторінці оформлення. Після видалення checkout залишиться який був.

Що буде після видалення плагіна?

Записи в NetHunt і замовлення в магазині лишаються. Видалення (не деактивація) прибирає налаштування і таблицю журналу; ID записів на замовленнях лишаються навмисно — вони страхують від дублів при повторному встановленні.

Що робить кнопка «Відправити повторно»?

Якщо замовлення ще не в NetHunt — створює запис (POST). Якщо вже відправлене — оновлює його актуальними даними через PATCH.

Що буде, якщо NetHunt недоступний у момент замовлення?

Плагін повторить відправку автоматично через WP-Cron: 3 спроби з паузами 5 хв / 30 хв / 2 год. Статус кожної спроби видно в журналі.

Питання щодо модуля?

Пишіть у Telegram — відповімо протягом робочого дня. Допоможемо з налаштуванням, сумісністю та активацією ключа.

@catcode_support

Не той варіант, що шукаєте?

Ми робимо кастомні модулі під WordPress, WooCommerce, OpenCart і Shopify. Розкажіть про задачу — підготуємо оцінку.

Замовити кастомний модуль