Стенд під ваше завдання: обидва фіди (російський і український) не пройшли обробку, кількість товарів у Merchant Center різко впала. Нижче перевірка XML, яка показує рядок і причину помилки, типові причини та порядок робіт.




| Показник зі скріншота | Значення | Що це означає для діагностики |
|---|---|---|
| Всього товарів | 27 тис. | Раніше на графіку було близько 160 тис. Падіння ступінчасте, тож зламалося кілька разів, а не одноразово. |
| Надано вами (через фіди) | 4,47 тис. | Тільки це зараз приходить із фідів. Решту Google ще тримає зі старих оброблень. |
| Знайдено Google | 22,5 тис. | Це товари, які Google підхопив сам (розмітка на сайті), не з вашого фіда. Вони можуть мати застарілі ціни й наявність. |
| Не показується в Google | 19 тис. | Основна втрата показів і реклами. |
Цифри прочитані зі скріншота, який додано до вашого завдання. Причину кожного падіння на графіку (відомі дати змін фіда на вашому боці) уточнюємо разом на старті.
Перевірка йде локально в браузері, нічого нікуди не надсилається. У полі приклад зі штучними помилками, щоб було видно, як це працює.
Що перевіряється: синтаксис XML (рядок і колонка), символ & без екранування, керівні символи, BOM або пробіли перед XML-декларацією, дублі id, обов'язкові поля Google (id, title, description, link, image_link, price, availability), формат ціни.
| Причина | Як проявляється | Виправлення на стороні генерації фіда |
|---|---|---|
| Символ & або < у назві чи описі без екранування | Фід відхиляється повністю, не окремі товари | Екранувати або загортати текст у CDATA на виході, не в шаблоні |
| Керівні символи (залишки копіювання з Word, зворотний слеш, нульовий байт) | Помилка на конкретному рядку, часто після імпорту нових товарів | Чистити символи в діапазонах, заборонених XML 1.0, перед записом |
| Кодування файлу не збігається з декларацією | Кракозябри в назвах або помилка на першому нелатинському символі | Один UTF-8 на всьому ланцюжку: база, генератор, файл, заголовок відповіді |
| Обірваний файл (генерація не дописала закриваючі теги) | Помилка «unexpected end» у кінці файла, розмір файла різко менший | Писати у тимчасовий файл і підміняти основний лише після успішної валідації |
| Дубльовані id між російською й українською версіями | Один фід «з'їдає» товари іншого | Окремі джерела даних і окремі правила id для кожної мови |
| Порожні обов'язкові поля (ціна, наявність, посилання) | Товари відхиляються поштучно, видно в діагностиці | Правило виключення таких товарів або значення за замовчуванням |
Одразу після виправлення відхилені Google товари повертаються не миттєво: це залежить від повторної обробки. Терміни визначає Merchant Center, ми контролюємо результат за статусами.
Стенд GuardLabs. Приклад у перевірці штучний, перевірка працює на будь-якому вашому XML.