Генерация фида товаров для Facebook/Instagram Catalog

Запуск динамической рекламы в Facebook и Instagram часто блокируется из-за ошибок в фиде товаров, что приводит к потере бюджета и времени. Мы разрабатываем и настраиваем фид под ключ, учитывая все требования Meta, чтобы ваш каталог успешно проходил модерацию. Наша команда обеспечивает стабильную работу и последующую поддержку, помогая вам сосредоточиться на росте продаж.

Разработка и обслуживание любых видов сайтов:

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

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Генерация фида товаров для Facebook/Instagram Catalog
Средний
~2-3 дня
Часто задаваемые вопросы

Генерация фида товаров для Facebook/Instagram Catalog

При запуске динамической рекламы в Facebook и Instagram каталог товаров отклоняется чаще всего из-за ошибок в фиде. Неправильный формат цены, отсутствие обязательных полей или неверный URL изображения — и вся партия товаров не проходит модерацию. Мы сталкивались с этим десятки раз и выработали пошаговый процесс, который гарантирует успешную загрузку каталога с первого раза. Наш опыт показывает, что даже крупные интернет-магазины с сотнями тысяч SKU допускают одни и те же ошибки: путают price и sale_price, не указывают google_product_category, используют HTTP вместо HTTPS. В результате рекламные кампании не показываются, а бюджет тратится впустую. Мы предлагаем комплексную услугу по генерации и настройке фида под ключ — от аудита текущих данных до интеграции с Pixel и запуска первых динамических объявлений. Согласно документации Meta, фид должен соответствовать формату CSV, TSV или XML с обязательным набором полей.

Какие проблемы решает правильно настроенный фид?

Meta требует фид в формате CSV, TSV или XML (RSS/Atom). Каталог используется в динамической рекламе (Dynamic Ads), Instagram Shopping и Shops — три разных плейсмента с частично пересекающимися требованиями к полям. Одна ошибка в формате поля price или availability приводит к отклонению всей партии товаров при загрузке. Правильная настройка фида решает три ключевые проблемы:

  • Отсутствие товаров в рекламе — из-за невалидных данных каталог блокируется.
  • Низкая релевантность — без корректных полей (google_product_category, size, color) Meta не может показывать товары целевой аудитории.
  • Потеря конверсий — если фид не синхронизирован с Pixel, динамический ретаргетинг не срабатывает.

Обязательные поля каталога

Поле Формат Пример
id строка до 100 символов SKU-44231
title строка до 150 символов Куртка зимняя мужская синяя L
description строка до 9999 символов —
availability enum in stock / out of stock / preorder
condition enum new / refurbished / used
price число + код валюты 4990.00 RUB
link URL HTTPS обязательно
image_link URL мин. 500×500 px, HTTPS
brand строка —

Дополнительные поля для одежды и обуви

Для категории Apparel & Accessories Meta требует:

  • google_product_category — числовой ID из таксономии Google (Meta использует именно её)
  • size — размер (XL, 44, 42/34)
  • color — цвет на языке целевой аудитории
  • gender — male / female / unisex
  • age_group — adult / kids / newborn
  • material — материал (опционально, но повышает relevance score)
Развернуть полный перечень полей для одежды Все поля: id, title, description, availability, condition, price, link, image_link, additional_image_link, brand, google_product_category, color, size, gender, age_group, sale_price, sale_price_effective_date. Отсутствие любого обязательного поля приведёт к ошибке загрузки.

Что делать, если фид отклоняется?

В Commerce Manager есть раздел Catalog → Issues, где Meta показывает причины ошибок для каждой позиции. Самые частые проблемы:

  • Неверный формат цены: используйте формат 1234.56 RUB, без пробелов перед кодом валюты.
  • Отсутствие HTTPS: все ссылки (link, image_link) должны быть по HTTPS.
  • Превышение длины title: обрезайте до 150 символов, включая название варианта.
  • Некорректный availability: используйте строго in stock, out of stock или preorder.

Мы проводим аудит фида и исправляем все ошибки до загрузки, гарантируя успешное прохождение модерации. В 90% случаев достаточно одной итерации, чтобы устранить все проблемы.

Генератор CSV-фида

CSV проще в генерации и отладке, чем XML. Meta принимает оба формата одинаково. Предпочитаем TSV — из-за запятых в описании товаров разделитель табуляция надёжнее. Ниже таблица сравнения форматов:

Формат Сложность генерации Размер файла Поддержка запятых в полях Скорость загрузки
CSV Низкая Маленький Проблематично (экранирование) Высокая
TSV Низкая Маленький Не проблема (табуляция) Высокая
XML (RSS) Высокая Большой Не проблема Средняя

Пример класса на PHP, который генерирует TSV-фид с учётом вариантов товаров:

class MetaCatalogFeedGenerator {
    private const HEADERS = [
        'id',
        'title',
        'description',
        'availability',
        'condition',
        'price',
        'link',
        'image_link',
        'additional_image_link',
        'brand',
        'google_product_category',
        'color',
        'size',
        'gender',
        'age_group',
        'sale_price',
        'sale_price_effective_date',
    ];

    public function generate(string $outputPath): void
    {
        $file = fopen($outputPath, 'w');
        // BOM не добавляем — Meta не требует, может сломать парсер
        fputcsv($file, self::HEADERS, "\t"); // TSV надёжнее CSV из-за запятых в описании

        Product::with(['images', 'category', 'brand', 'variants'])
            ->where('is_active', true)
            ->chunk(200, function ($products) use ($file) {
                foreach ($products as $product) {
                    foreach ($this->expandVariants($product) as $row) {
                        fputcsv($file, $row, "\t");
                    }
                }
            });

        fclose($file);
    }

    private function expandVariants(Product $product): array
    {
        if ($product->variants->isEmpty()) {
            return [$this->buildRow($product, null)];
        }

        return $product->variants->map(
            fn($variant) => $this->buildRow($product, $variant)
        )->toArray();
    }

    private function buildRow(Product $product, ?ProductVariant $variant): array
    {
        $id = $variant ? $product->sku . '-' . $variant->sku : $product->sku;
        $price = $variant?->price ?? $product->price;
        $stock = $variant?->stock ?? $product->stock;

        $additionalImages = $product->images->skip(1)
            ->pluck('cdn_url')
            ->take(9) // Meta допускает до 10 изображений
            ->implode(',');

        $salePrice = '';
        $salePriceDate = '';
        if ($product->sale_price && $product->sale_ends_at > now()) {
            $salePrice = number_format($product->sale_price, 2, '.', '') . ' RUB';
            $salePriceDate = $product->sale_starts_at->toIso8601String() . '/' . $product->sale_ends_at->toIso8601String();
        }

        return [
            $id,
            mb_substr($product->name . ($variant ? ' ' . $variant->name : ''), 0, 150),
            strip_tags($product->description),
            $stock > 0 ? 'in stock' : 'out of stock',
            'new',
            number_format($price, 2, '.', '') . ' RUB',
            route('products.show', $product->slug) . ($variant ? '?variant=' . $variant->id : ''),
            $product->mainImage()?->cdn_url ?? '',
            $additionalImages,
            $product->brand?->name ?? '',
            $product->google_category_id ?? '',
            $variant?->color ?? $product->color ?? '',
            $variant?->size ?? '',
            $product->gender ?? '',
            $product->age_group ?? 'adult',
            $salePrice,
            $salePriceDate,
        ];
    }
}

Настройка в Business Manager

После генерации фида:

  1. Commerce Manager → Catalog → Data Sources → Add Data Feed
  2. Указать URL фида или загрузить файл вручную
  3. Выбрать расписание обновления: ежечасно, ежедневно или вручную
  4. Назначить каталог рекламным аккаунтам

Meta предоставляет диагностику ошибок в разделе Catalog → Issues — каждая позиция с проблемой помечается с описанием причины. Загрузка фида с более чем 5% ошибок приведёт к отказу в использовании каталога для рекламы.

Pixel + Catalog для динамического ретаргетинга

Для Dynamic Ads недостаточно только фида — нужно настроить Meta Pixel с событиями:

// Страница товара
fbq('track', 'ViewContent', {
  content_ids: ['SKU-44231'],
  content_type: 'product',
  value: 4990.00,
  currency: 'RUB',
});

// Добавление в корзину
fbq('track', 'AddToCart', {
  content_ids: ['SKU-44231'],
  content_type: 'product',
  value: 4990.00,
  currency: 'RUB',
});

content_ids должны точно совпадать с полем id в каталоге — иначе матчинг не работает. Ретаргетинг на основе каталога позволяет сократить стоимость привлечения клиента в среднем на 30-40%.

Процесс работы и что входит

Мы предлагаем настройку фида под ключ:

  1. Аудит текущего каталога — проверяем структуру, обязательные поля, ошибки в данных.
  2. Генерация фида — пишем генератор под вашу CMS или ERP, настраиваем TSV/CSV/XML.
  3. Тестирование — загружаем тестовую партию, проверяем в Issues Meta.
  4. Интеграция Pixel — добавляем события ViewContent, AddToCart, Purchase.
  5. Деплой и мониторинг — настраиваем автообновление, даем доступы к отчетам.

В результате вы получаете работающий каталог, исправный фид и настроенный ретаргетинг. Гарантируем прохождение модерации с первого раза — наш опыт более 5 лет и 50+ успешных проектов.

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

Сроки

Генератор фида + настройка источника данных в Business Manager — от 3 до 5 рабочих дней. Интеграция с Pixel и тестирование динамического ретаргетинга — ещё от 2 до 3 рабочих дней. Точные сроки зависят от объема каталога и сложности интеграции.

Оценим ваш проект. Свяжитесь с нами, чтобы получить консультацию и расчет стоимости.

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

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1394
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1369
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1142
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1060