Техническое задание: Скрипт синхронизации остатков товаров
Цель проекта
Разработать автоматизированное решение для передачи данных об остатках товаров от поставщика на маркетплейс с соблюдением бизнес-логики и технических ограничений обеих сторон.
Основные функции
1. Выгрузка остатков
- Получение данных об остатках товаров через API поставщика.
- Использование файла сопоставления артикулов (Excel-таблица) для связи артикулов поставщика и артикулов маркетплейса.
- Применение бизнес-правил к количеству товара:
- Если у поставщика более 15 единиц товара - передавать на маркетплейс не более 15.
- Если у поставщика 15 или меньше - передавать фактическое количество.
- Фильтрация товаров: для определенных кодов (список предоставляется отдельно) всегда передавать остаток 0, независимо от наличия у поставщика.
2. Регулярное обновление
- Настройка автоматического цикла обновления остатков с периодичностью 1 раз в 30 минут.
- Учет и соблюдение всех rate-лимитов и ограничений API как поставщика, так и маркетплейса.
3. Управление процессом
- Возможность ручного запуска и остановки процесса синхронизации.
- Функция принудительного обнуления остатков на маркетплейсе (с учетом фильтра по кодам).
Технические требования
- Язык программирования: Python.
- Код должен быть хорошо структурирован, с комментариями.
- Необходима обработка ошибок (сетевая недоступность, изменения в API, проблемы с данными).
- Логирование ключевых событий и ошибок.
- Конфигурационные параметры (пути к файлам, ключи API, периодичность) должны выноситься в отдельный конфигурационный файл.
Результат работы
- Полный исходный код программы.
- Инструкция по настройке и запуску.
- Описание структуры конфигурационного файла.