# Промпт: скрипт импорта каталога Oreshka (CSV) в Mercur Контекст: Oreshka Seeds — первый продавец на seed-bank.online. Каталог 1197+ SKU в `store2047252202602181305.csv` (semicolon-delimited, UTF-8). ## Задача для агента Напиши Node.js/TS скрипт (`scripts/import-oreshka-catalog.ts`), который: 1. Читает CSV построчно (semicolon delimiter) 2. Маппит поля CSV → Medusa Admin API product create payload: - SKU → `variants[0].sku` - title → `title` - price → `variants[0].prices` (currency EUR) - category → `collection_id` (создать/найти Medusa collection по названию категории, см. маппинг категорий в `oreshka_new_stack_plan.md` раздел 3) - photo[0..N] (space-separated поле) → `images[]`, photo[0] = thumbnail - qty → `variants[0].inventory_quantity` 3. Привязывает все созданные продукты к `seller_id` = Oreshka (создать Seller-запись с `org_type: shop` заранее вручную через Admin Panel, ID передать как аргумент скрипта) 4. Идемпотентность: если продукт с таким SKU уже существует — обновляет, не дублирует 5. Логирует построчно: успех/ошибка/пропущено, финальный summary (создано X, обновлено Y, ошибок Z) 6. НЕ выдумывать отсутствующие поля — если поле пустое в CSV, оставлять null/skip, логировать как warning ## Технические требования - Использовать Medusa JS SDK (`@medusajs/js-sdk`), не сырые fetch-запросы - Batch-обработка (не по одному продукту синхронно) — размер батча 50 - Dry-run режим (`--dry-run` флаг) — вывести что будет создано, без реальных запросов ## Проверка Запустить на первых 10 строках CSV перед полным импортом, проверить в Admin Panel визуально.