Ручное обновление прайс-листа из 300 позиций отнимает у администратора шоурума четыре часа в неделю. При этом Яндекс Бизнес принимает фиды объемом до 15 МБ (до 10 000 позиций, справка: yandex.ru/support/business-priority/ru/manage/price-list) и поддерживает автоматическую смену статуса наличия через атрибут available="unknown». Если обновлять остатки вручную, карточка собирает отказы и теряет позиции в поиске. Автоматическая выгрузка YML решает эту задачу.

Чем опасна ручная загрузка каталога

Пользователи ищут вещи прямо в геосервисах. По запросу «купить красное вечернее платье» Яндекс Карты показывают организации с этим товаром в прайс-листе. Если в каталоге нет актуальных позиций, алгоритмы пессимизируют карточку по товарным запросам.

Ручное добавление подходит микробизнесу с ассортиментом до 20 позиций. Полноценный магазин одежды меняет размерные сетки, проводит распродажи и обновляет коллекции каждый сезон. Вручную скорректировать цены на 500 артикулов в день старта акции невозможно. Оптимизация карточки требует регулярного обновления данных, иначе модераторы получают жалобы пользователей на несовпадение цен и блокируют прайс-лист.

CMS сайта или складская программа генерирует фид по ссылке. Яндекс Карты считывают файл, парсят данные и обновляют витрину. Изменения на сайте попадают в карточку организации без участия менеджера.

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

Модерация отклоняет фиды при ошибках в синтаксисе. Файл должен содержать стандартный XML-заголовок, начинающийся строго с первой строки и нулевого символа. Система не обрабатывает документы с пустыми элементами или HTML-атрибутами внутри тегов.

Текстовые поля не принимают спецсимволы с ASCII-кодами от 0 до 31. Кодировка документа — строго UTF-8. Любое отклонение вызывает ошибку парсинга, и выгрузка в Яндекс Бизнес останавливается.

ПараметрЛимит / ТребованиеПоследствия нарушения
Объем файлаДо 15 МБФайл не загрузится в личный кабинет
Количество товаровДо 10 000 позицийОбрезание каталога или отказ в обработке
ЦеныТолько точные значения, без диапазоновТовар с ценой «0» или без цены не публикуется
КодировкаUTF-8Ошибка чтения документа, искажение названий

Проверяйте структуру документа через валидатор Яндекс Вебмастера, выбирая схему «Бизнес».

Бонус 10 000 ₽ на рекламу
Первую рекламную кампанию в Яндекс Директе или Яндекс Бизнесе можно запустить с бонусом 10 000 ₽. Промокод PERK-4681-4B05-B5F2 активируется по реферальной ссылке при пополнении бюджета от 10 000 ₽ (только для новых клиентов). Перейти в Яндекс Бизнес →

Обязательные теги товарной матрицы

Спецификация YML строго регламентирует структуру данных. Корневой элемент каталога разделяется на категории и предложения. Товар привязывается только к одной категории через идентификатор.

Идентификатор категории указывается в атрибуте id тега category. Сами товары размещаются в блоке offers, где каждый артикул получает уникальный offer id длиной до 80 символов. Разрешены цифры, латиница, русские буквы (кроме «ё») и базовые знаки пунктуации.

ЭлементНазначениеТребования к заполнению
categoryIdСвязка товара с категориейЦелое число не более 18 знаков
currencyIdКод валютыСтрого RUB, KZT или BYN
vendorПроизводитель или брендТекстовое название марки
priceСтоимость позицииДо 20 символов, разделитель — точка или запятая

Отсутствие позиции на складе размечается флагом. В тег offer добавляется атрибут available="unknown». Карточка товара скрывается из профиля на Картах, но остается в базе. Когда вещь снова поступает на склад, атрибут убирают, и карточка возвращается в выдачу.

Требования к контенту: названия, описания и изображения

Название товара формируется по схеме: тип товара + бренд + модель + характеристики (пример: «Джинсы Levis 501 мужские синие размер 32»). Длина поля name ограничена 250 символами. Чтобы сниппет читался без обрезки, сокращайте названия до 56 символов и выносите основные ключи в начало строки.

Описание разделено на два тега. Поле shortDescription вмещает до 250 символов и выводится в сниппете на Картах. Поле description рассчитано на 3000 знаков. В YML-формате нет отдельных тегов под единицы измерения, поэтому размеры, вес и состав ткани указываются в тексте описания.

Фотографии передаются через тег picture прямыми ссылками на графические файлы. Ссылки на Яндекс Диск или другие облачные хранилища выдают ошибку, так как ведут на HTML-страницы. Выгрузка работает по протоколам HTTP и HTTPS с портами 80, 443 и 8080. Протоколы FTP и SMB не поддерживаются.

Пример настройки: шоурум в Екатеринбурге

Дано: розничная точка, 400 артикулов платьев и костюмов. Размеры вымываются ежедневно, ручное обновление отнимало рабочее время. Настроена синхронизация по YML из системы МойСклад.

Порядок действий:

  1. Сгенерировали прямую ссылку на YML-файл на стороне складской программы.
  2. В правила экспорта добавили условие: при нулевом остатке артикулу присваивается атрибут available="unknown».
  3. В Яндекс Бизнесе открыли раздел «О компании» → «Товары и услуги».
  4. В строке «Источник» указали «Вручную, из файла» → «YML-фид» и вставили URL.

Результат: фид обработан за пять минут, система загрузила все 400 позиций. При покупке последнего размера на складе программа обновляет фид. Робот Яндекса считывает флаг отсутствия и скрывает позицию из витрины на Картах.

Синхронизация данных для сетевых магазинов

Для сетей с филиалами используется отдельный XML-файл в разделе «Сети → Информация о сети → Данные». Загрузка этого файла массово меняет адреса, телефоны и расписание филиалов.

Модерация сверяет данные из файла с сайтом сети. Телефоны должны совпадать до последней цифры. Если подменный номер колл-трекинга отсутствует на сайте, фид отклонят. Основная рубрика в файле также обязана соответствовать сайту. Проверка рубрик работает семантически: комбинация «Магазин одежды, Ателье» проходит валидацию, а «Магазин одежды, Шиномонтаж» блокируется.

Не допускаются дубли — одинаковые адреса и координаты у двух разных организаций. Одинаковые адреса разрешены для банкоматов, постаматов, вендоматов и терминалов, но их координаты должны различаться более чем на 30 метров. Новые филиалы из файла регистрируются в базе, а удаленные из XML точки автоматически закрываются.

Ошибки при парсинге фида

Кириллица в ссылках на фото. URL должны соответствовать стандарту RFC 3986, кириллические знаки нужно переводить в формат %D0%B0. Если сервер магазина медленно отдает файлы, Яндекс прерывает соединение по таймауту, и карточки остаются без фото.

Несовпадение цен на сайте и в фиде. Это приводит к жалобам пользователей и блокировке прайс-листа. Цены передаются строго числом: пробелы для разделения разрядов («15 000») ломают парсер, рабочий формат — 15000.

Пустой тег vendor. Пользователи на Картах часто фильтруют каталог по брендам. Без этого тега товары магазина исключаются из выдачи по фильтру.

Localis · Бесплатно
Оценка карточки Яндекс Бизнеса за 120 секунд
Покажет что не так в карточке и как это исправить. Оценка бесплатная, без регистрации, результат через 2 минуты.
Проверить свою карточку

Использование фида в рекламных кампаниях

Подключение YML-фида в рекламной кампании доступно только в рекламной подписке для сайтов. Яндекс Директ автоматически собирает креативы, подтягивая изображение, стоимость и название из файла.

Подключение выполняется в разделе «Продвижение → Материалы» (блок «Товары и услуги»). Нейросети Яндекса берут текст из shortDescription для создания объявлений. Настройка георекламы требует заполнения профиля качественными фотографиями, поскольку нечеткие снимки из фида снижают CTR рекламной карусели.

Бонус 10 000 ₽ на первую рекламную кампанию
Промокод PERK-4681-4B05-B5F2 добавит 10 000 ₽ к бюджету рекламной кампании в Яндекс Директе или Яндекс Бизнесе. Условия: минимальное пополнение от 10 000 ₽, действует только для новых клиентов (компания раньше не запускала рекламу или последняя кампания была больше года назад), не применяется при запуске через агентство. Активировать нужно по реферальной ссылке. Перейти в Яндекс Бизнес →

Чек-лист проверки YML-фида

  1. Файл сохранен в кодировке UTF-8 без BOM.
  2. Размер документа не превышает 15 МБ.
  3. Количество предложений — до 10 000.
  4. XML-заголовок начинается с нулевого символа первой строки.
  5. В файле нет пустых тегов вида <description></description>.
  6. В тексте отсутствуют HTML-разметка и символы с кодами ASCII 0-31.
  7. Цены указаны целым числом или через точку, без пробелов.
  8. Валюта задана кодом RUB, KZT или BYN.
  9. Названия сформированы по структуре «Тип + Бренд + Модель + Свойство».
  10. Тег picture содержит прямые ссылки на графические файлы (.jpg.png).
  11. Товары с нулевым остатком размечены атрибутом available="unknown».
  12. Структура проверена через валидатор Яндекс Вебмастера по схеме «Бизнес».

Частые вопросы

Сколько времени занимает обработка фида?

Обработка файла длится до одного часа. Загруженные позиции появляются в личном кабинете Яндекс Бизнеса через несколько минут после завершения парсинга.

Можно ли передавать диапазон цен?

Нет, система принимает только точные числовые значения. Позиции без цены или со значением «0» не публикуются.

Как временно скрыть отсутствующий товар?

Добавьте в тег offer атрибут available="unknown» (<offer id="123" available="unknown">). Товар пропадет из публичной витрины на Картах, но останется в базе кабинета.

Почему не загружаются фотографии?

Тег picture содержит ссылку на HTML-страницу веб-диска вместо прямого файла. Ссылка должна оканчиваться расширением файла, а сервер отдавать ответ по портам 80, 443 или 8080.

Нужно ли чистить старый прайс-лист перед загрузкой фида?

При переключении на «YML-фид» система заменяет ручной список данными из файла. Управление остатками переходит полностью на сторону вашей CMS или учетной системы.

Сгенерируйте тестовую выгрузку из вашей учетной системы, проверьте XML-валидатором Вебмастера на схеме «Бизнес» и добавьте готовую ссылку в разделе «Товары и услуги» Яндекс Бизнеса.