Developing a Feed Generation Module for 1C-Bitrix
Product catalog must be exported to Google Shopping, Yandex.Market, Avito, Facebook Catalog, etc. Each platform has different format and field requirements. Manual feed generation doesn't scale. Feed generation module auto-exports to multiple platforms.
Supported Feeds
- Google Shopping XML
- Yandex.Market YML
- Facebook Catalog JSON
- Pinterest CSV
- Avito XML
Feed Configuration
Configure per platform:
- Which products include (by category, availability, price range)
- Field mapping (Bitrix field → Feed field)
- Image selection (main, additional, limit)
- Price markup/discount
- Availability rules
Automatic Generation
Cron task generates feeds nightly:
foreach ($platforms as $platform) {
$products = getProductsForPlatform($platform);
$feed = new FeedGenerator($platform);
foreach ($products as $product) {
$feed->addProduct([
'id' => $product['ID'],
'title' => $product['NAME'],
'description' => truncate($product['DETAIL_TEXT'], 2000),
'price' => $product['PRICE'] * (1 + $markup),
'availability' => $product['QUANTITY'] > 0 ? 'in stock' : 'out of stock',
]);
}
$feed->save($platform->getPath());
}
Feed URLs
Auto-generate and host feed files:
-
/feeds/google-shopping.xml -
/feeds/yandex-market.yml -
/feeds/facebook-catalog.json
Platforms poll these URLs periodically.
Development Timeline
| Stage | Duration |
|---|---|
| Basic (2 feeds) | 5–7 days |
| Multiple feeds (5+), field mapping | 10–14 days |
| Advanced (rules, filters, analytics) | 16–20 days |







