# Catalog import МойСклад → «Демо-магазин» (stage) **Решение владельца.** Стенд закрыт basic-auth'ом на gateway от интернета (внутренняя сеть 192.168.1.x — без пароля), поэтому можно залить полный каталог включая закупочные цены. **Токен МойСклада.** `/var/www/sklad/appsettings.Production.json`, ключ `MoySklad:Token`, забирается через ssh + sudo на prod-vm. В логи / коммиты / docs / отчёты токен **никогда** не попадает. Передаётся только через env-переменную или stdin. **Границы.** Не трогаем проект `sklad`, прод `admin.food-market.kz`, `global.json`, `deploy/*/nginx`. ## Чек-лист - [ ] 1. Аудит текущего MoySklad-импорта + добор недостающих полей для «полной карточки» (товары, группы, ед. изм., штрихкоды, цены продажи/закупки, весовой признак, мин. остаток, артикул, фото) — сверка полей против API МойСклад 1.2. - [ ] 2. Импорт в «Демо-магазин» на стейдже без дублей: upsert по внешнему id МойСклада; merge по штрихкоду; дубли штрихкодов в самом МойСкладе — первый пропускаем в отчёт; группы — тоже без дублей; архивные товары МойСклада не льём. - [ ] 3. Токен у организации стенда после импорта удалить (или импорт без сохранения токена — тоже ок). - [ ] 4. Отчёт: группы/товары created/updated/merged/skipped + выборочная сверка 10 карточек с МойСкладом. - [ ] 5. Playwright-проверка каталога Демо-магазина изнутри сети: открывается, поиск по названию и штрихкоду работает, карточка показывает поля простого режима; повторный запуск импорта → 0 новых. ## Протокол выполнения (заполняется построчно)