Необхідно реалізувати автоматизовану інтеграцію між обліковою системою Visma Horizon (через REST API) та інтернет-магазином WooCommerce (WordPress):
- Автоматична синхронізація товарів, залишків та цін з Horizon у WooCommerce.
- Автоматична передача замовлень, оформлених на сайті, назад у Horizon.
- Інтеграція має бути надійною, підтримувати логи помилок та забезпечувати захист даних.
Visma Horizon — це облікова система (ERP) для бізнесу, яка автоматизує бухгалтерію, склад, продажі, закупівлі, облік товарів, співробітників тощо. Вона підтримує ведення довідників (номенклатура, склади, групи товарів), розрахунок цін, залишків, роботу з замовленнями та документообіг.
Головне для задачі:
У Visma Horizon є REST API, через який можна отримувати та відправляти дані про товари, залишки, замовлення та довідники.
Всі дані, необхідні для інтернет-магазину (товари, ціни, залишки, замовлення), знаходяться у таблицях всередині Horizon.
Ми хочемо автоматично синхронізувати товари та залишки з Horizon у WooCommerce, а також передавати замовлення з WooCommerce назад у Horizon для подальшої обробки.
Синхронізація товарів з Horizon у WooCommerce
Отримання з Horizon через API:
- Імпорт груп товарів (категорій) та інших довідників (одиниці виміру, склади тощо) з Horizon у WooCommerce з збереженням структури
Повного списку товарів (номенклатура)
Назва товару, унікальний код, штрихкод, опис, категорія/група, одиниця виміру
Поточні залишки по обраних складах
Актуальні ціни (з урахуванням актуальності за датою та потрібних прайс-листів)
Зображення
Оновлення WooCommerce:
Створення нових товарів та оновлення існуючих
Синхронізація залишків та цін за розкладом
Прив’язка до категорій WooCommerce
Обробка помилок (логування, алерти при збої)
Фільтрація неактуальних/неактивних позицій
Прийом та обробка замовлень з WooCommerce у Horizon
Відправка кожного нового замовлення у Horizon через REST API:
- Передавати всі дані замовлення: номер, дата, склад замовлення (товари, кількість, ціна), покупець (ім’я, e-mail, телефон, адреса), спосіб доставки та оплати, статус замовлення.
• Після відправки замовлення фіксується у Horizon і очікує підтвердження менеджером (реалізувати передачу статусу або флагу, що замовлення потребує підтвердження).
• Після отримання відповіді/статусу з Horizon — синхронізувати статус замовлення назад у WooCommerce (наприклад, “оплачено”, “відвантажено”, “скасовано”, “підтверджено менеджером” тощо).
• Логування успішних/неуспішних спроб передачі.
• Реалізувати автоматичну повторну відправку при помилках.
• Забезпечити обробку помилок та логування (логи помилок, подій та дій).
Інтеграція з онлайн платіжними системами не потрібна.
Всі замовлення, оформлені через інтернет-магазин WooCommerce, обробляються менеджером і оплачуються за рахунком банківським переказом між компаніями (B2B).
Інформація про статус оплати буде фіксуватися вручну у Horizon та/або WooCommerce залежно від бізнес-процесу.
Весь процес інтеграції та тестування потрібно реалізувати спочатку у тестовому середовищі (sandbox), з наданням детальної інструкції щодо запуску та переходу на робочий сервер.