Техническое задание: Интеграция учётной системы с интернет-магазином

Краткое описание проекта

Необходимо создать надёжный механизм автоматической синхронизации данных о товарах между удалённой системой учёта (API) и сайтом на базе WordPress с WooCommerce. Основная цель - обеспечить автоматическое обновление ассортимента, актуальных цен и остатков на сайте, минимизируя ручной труд и исключая ошибки.

Существующая структура

  • Интернет-магазин: Платформа WordPress с плагином WooCommerce.
  • Система учёта: Удалённое API сторонней административной программы для управления товарами, остатками и ценами.

Основные цели и требования

Автоматическая синхронизация

  • Создание и обновление карточек товаров на сайте на основе данных из API.
  • Автоматическое обновление количества остатков и цен для существующих товаров.
  • Частота обновления: каждые 10-15 минут (настраиваемый интервал).

Логика работы со статусами товаров

  • Новые товары: При первом импорте товар должен создаваться со статусом "черновик" (draft) или "скрытый" (private), чтобы он не отображался на сайте до ручной обработки контент-менеджером (добавление фото, описания).
  • Опубликованные товары: Если карточка товара уже была вручную опубликована на сайте, синхронизация не должна изменять её статус обратно на черновик. Меняются только данные по остаткам и цене.

Технические требования

  • Платформа для запуска: Скрипт должен быть развёрнут на стандартном хостинге с поддержкой cron. Возможен вариант реализации на VPS, если хостинг имеет ограничения.
  • Предлагаемые варианты реализации: PHP-скрипт, запускаемый по cron, либо сервис на VPS с управлением через systemd.
  • Идемпотентность и защита от дублей: Повторный запуск скрипта должен быть безопасным. Товары должны однозначно идентифицироваться по SKU (артикулу). При каждом запуске проверяется существование товара по SKU для обновления, а не создания дубликата.

Обязательные компоненты

  • Система логирования: Ведение детального лог-файла с указанием даты и времени каждого запуска, количеством обработанных товаров (создано/обновлено), а также записью возникающих ошибок.
  • Документация: Предоставить краткую инструкцию по проверке работы синхронизации, просмотру логов и принудительному перезапуску.

Опциональные улучшения

  • Система оповещений: Настройка отправки уведомлений в Telegram в случае критических сбоев (например, если синхронизация не отработала несколько раз подряд).

Ожидаемый результат

  • Автоматическая синхронизация данных работает стабильно по заданному расписанию.
  • Карточки товаров на сайте создаются и обновляются, цены и остатки всегда актуальны.
  • Новые товары попадают в админ-панель для последующей ручной обработки и публикации.
  • Статус уже опубликованных товаров не сбрасывается.
  • Отсутствуют дубликаты товаров.
  • Ведётся понятный лог работы для администрирования.

Разработка торгового бота для криптобиржи

Требуется создать автоматизированного торгового бота для работы на криптовалютной бирже. Исполнитель должен самостоятельно оценить сроки выполнения проекта. Полное техническое задание доступно по ссылке.