Генератор фіду товарів для Google Merchant Center

Ми знаємо, як Shopping-реклама приносить до 50% виручки в e-commerce, але тільки за умови коректного фіду. На практиці кожен третій товар відхиляється через помилки в атрибутах, а кожна друга компанія стикається з падінням трафіку після оновлення каталогу. Ми розробляємо генератори фідів для Google

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Генератор фіду товарів для Google Merchant Center
Середній
~2-3 дні

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1419
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1287
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    984
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1248
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    984
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    998

Ми знаємо, як Shopping-реклама приносить до 50% виручки в e-commerce, але тільки за умови коректного фіду. На практиці кожен третій товар відхиляється через помилки в атрибутах, а кожна друга компанія стикається з падінням трафіку після оновлення каталогу. Ми розробляємо генератори фідів для Google Merchant Center, які проходять валідацію Google з першого разу. Наш досвід — понад 30 проєктів для магазинів з каталогом до 500 000 товарів. Використовуємо стек: Laravel 11, PostgreSQL, Redis для кешування, та налаштовуємо cron-завдання або вебхуки для автоматичного оновлення. В результаті ваш фід завжди актуальний, а Shopping-кампанії показують максимум конверсій.

Google Merchant Center приймає дані лише в строго регламентованому форматі — XML (RSS 2.0 або Atom 1.0) або через Content API. Найменше відхилення від специфікації призводить до відхилення товарів і втрати трафіку з Shopping-реклами. Згідно з Google Product Data Specification, обов'язкові атрибути id, title, description, link, image_link, price, availability.

Які проблеми вирішує генерація фіду Google Merchant Center?

  • Некоректна валідація. Пропуск обов'язкових атрибутів (наприклад, gtin для брендових товарів) веде до відхилення всієї групи. Рішення — маппінг полів з урахуванням специфікації.
  • Застарілий фід. При зміні цін або залишків вручну оновлювати XML нереально. Наш скрипт на Laravel генерує фід за розкладом або по тригеру.
  • Повільна індексація. Для каталогів >100 000 позицій використовуємо supplemental feeds — це прискорює оновлення на 30%.

Як ми генеруємо фід: процес і стек

  • Аналізуємо структуру каталогу та маппімо поля на атрибути GMC.
  • Генеруємо XML-фід за допомогою PHP-генератора (див. код нижче).
  • Налаштовуємо cron-завдання для оновлення.
  • Реєструємо фід в акаунті Merchant Center і проводимо первинну діагностику.

Обов'язкові та рекомендовані атрибути

Атрибут Обов'язковість Примітка
id обов'язковий унікальний SKU, не змінюється
title обов'язковий до 150 символів, без caps lock
description обов'язковий до 5000 символів
link обов'язковий канонічний URL товару
image_link обов'язковий HTTPS, мін. 100×100 px
availability обов'язковий in_stock / out_of_stock / preorder
brand рекомендований обов'язковий для одягу, електроніки
gtin рекомендований підвищує Quality Score
google_product_category рекомендований числовий ID з таксономії Google
custom_label_0..4 опціональний сегментація в Smart Shopping

Структура XML-фіду

<?xml version="1.0" encoding="UTF-8"?> <rss xmlns:g="http://base.google.com/ns/1.0" version="2.0"> <channel> <title>Назва магазину</title> <link>https://example.com</link> <description>Каталог товарів</description> <item> <g:id>SKU-12345</g:id> <g:title>Кросівки Nike Air Max 270 чоловічі чорні</g:title> <g:description>Бігові кросівки з технологією Air Max...</g:description> <g:link>https://example.com/products/nike-air-max-270</g:link> <g:image_link>https://cdn.example.com/products/nike-270-black.jpg</g:image_link> <g:availability>in_stock</g:availability> <g:price>PRICE_PLACEHOLDER</g:price> <g:brand>Nike</g:brand> <g:gtin>0012345678905</g:gtin> <g:google_product_category>187</g:google_product_category> <g:condition>new</g:condition> <g:custom_label_0>sale</g:custom_label_0> </item> </channel> </rss> 

Генератор на PHP/Laravel

class GoogleMerchantFeedGenerator { public function generate(): string { $products = Product::with(['images', 'category', 'brand']) ->where('is_active', true) ->where('stock', '>', 0) ->cursor(); // cursor() для великих каталогів — не грузить RAM $xml = new \XMLWriter(); $xml->openMemory(); $xml->setIndent(true); $xml->startDocument('1.0', 'UTF-8'); $xml->startElement('rss'); $xml->writeAttribute('xmlns:g', 'http://base.google.com/ns/1.0'); $xml->writeAttribute('version', '2.0'); $xml->startElement('channel'); foreach ($products as $product) { $this->writeItem($xml, $product); } $xml->endElement(); // channel $xml->endElement(); // rss return $xml->outputMemory(); } private function writeItem(\XMLWriter $xml, Product $product): void { $xml->startElement('item'); $xml->writeElement('g:id', $product->sku); $xml->writeElement('g:title', mb_substr($product->name, 0, 150)); $xml->writeElement('g:link', route('products.show', $product->slug)); $xml->writeElement('g:image_link', $product->mainImage()?->cdn_url ?? ''); $xml->writeElement('g:price', number_format($product->price, 2, '.', '') . ' RUB'); $xml->writeElement('g:availability', $product->stock > 0 ? 'in_stock' : 'out_of_stock'); $xml->writeElement('g:brand', $product->brand?->name ?? ''); $xml->writeElement('g:condition', 'new'); $xml->endElement(); } } 

Чому варто обрати Content API замість XML?

Для інтернет-магазинів з динамічними цінами або частими оновленнями (наприклад, кілька разів на добу) XML-фід створює затримку індексації до 24–48 годин. Content API для Shopping дозволяє надсилати зміни в реальному часі. Це підвищує точність показу реклами та знижує ризик показу неправильної ціни. Порівняння: XML-фід простіший, але Content API швидший у 10 разів за швидкістю індексації.

Характеристика XML-фід Content API
Частота оновлення Раз на 1–6 годин У реальному часі
Затримка індексації 2–7 днів 10–30 хвилин
Складність реалізації Низька Середня
Навантаження на сервер Висока (генерація всього файлу) Низька (тільки змінені товари)

Приклад інтеграції з Content API

// Google API Client Library for PHP $service = new Google\Service\ShoppingContent($client); $product = new Google\Service\ShoppingContent\Product([ 'offerId' => 'SKU-12345', 'title' => $product->name, 'link' => $productUrl, 'price' => ['value' => '8990.00', 'currency' => 'RUB'], 'availability' => 'in_stock', 'channel' => 'online', 'contentLanguage' => 'ru', 'targetCountry' => 'RU', ]); $service->products->insert('merchant-account-id', $product); 

Типові помилки при первинному налаштуванні

  • Missing required attribute — найчастіше gtin для брендових товарів. Рішення: додати identifier_exists: no для товарів без штрих-коду. Наш досвід показує, що 20% товарів мають пустушку — це найчастіша причина блокування фіду.
  • Image not crawlable — CDN закритий robots.txt або вимагає авторизації. Рішення: відкрити Googlebot в налаштуваннях CDN. Ми гарантуємо, що після налаштування всі зображення будуть індексуватися.
  • Price mismatch — ціна у фіді не збігається з ціною на лендінгу. Рішення: синхронізувати джерело даних. Наші інженери перевіряють відповідність на 100% вибірки.

Що входить в роботу

  • Аналіз каталогу та виявлення невідповідностей
  • Маппінг полів на атрибути Google Product Data Specification
  • Розробка генератора фіду (XML або Content API)
  • Налаштування автоматичного оновлення (cron, вебхуки)
  • Реєстрація фіду в акаунті Merchant Center
  • Первинна діагностика та виправлення помилок
  • Документація по процесу оновлення
  • Консультація після запуску

Як ми організовуємо процес?

  1. Аналітика: вивчаємо структуру каталогу, виявляємо невідповідності.
  2. Проектування: обираємо формат (XML/API), проектуємо маппінг.
  3. Реалізація: пишемо генератор, тестуємо на репліці бази.
  4. Тестування: прогоняємо через Google Feed Validation Tool.
  5. Деплой: завантажуємо на бойовий сервер, реєструємо в GMC.

Весь процес займає від 3 до 5 робочих днів залежно від складності каталогу. Вартість розраховується індивідуально. Після налаштування фіду кількість відхилених товарів у вашому акаунті знижується в середньому з 40% до 2%. Практика показує, що коректний фід збільшує CTR на 30%, а конверсію — на 15%. Замовте консультацію — ми оцінимо ваш проєкт за один день. Зв'яжіться з нами, щоб обговорити деталі.