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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Разработка стратегии развития B2C-направления для поставщика автозапчастей

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