Back to Facebook Catalog Feed
Facebook Catalog Feed icon

Documentation

Facebook Catalog Feed

Generate a scheduled Meta Commerce catalogue feed for Facebook and Instagram Shops.

Last updated 24 June 2026

The Facebook Catalog Feed plugin turns your OrbitCommerce product catalogue into a Meta Commerce catalogue feed for Facebook and Instagram Shops. It generates a standard CSV product feed that you add to Meta Commerce Manager as a scheduled data feed. Meta then fetches the file on a schedule and keeps your catalogue in step with your store, so your products stay available for shopping tags, dynamic ads and the Shop tab. The plugin is free to install.

Features

  • Meta Commerce CSV feed — produces a Commerce-Manager-ready CSV feed containing the fields Meta expects, including item ID, title, description, availability, condition, price, link, images, brand, category and identifiers.
  • Variant support — products with variants are output as one row per variant, grouped under a shared item_group_id so Meta treats them as a single product with options.
  • Colour, size and material — variant options named colour, size or material are mapped to the matching Meta catalogue columns automatically.
  • Sale pricing — where a product has a compare-at price higher than its selling price, the higher figure is written as the regular price and the lower figure as sale_price.
  • Scheduled refresh — the feed can be regenerated automatically every 30 minutes, hourly, daily, weekly or monthly so Meta always fetches current data.
  • Category mapping with a default fallback — map your store categories to Meta/Google product categories, and set a single default category that is applied to any product without a mapping so no row is left without a category (Meta rejects rows with an empty or invalid category).
  • Stock and status filtering — choose whether to include out-of-stock products and whether to publish active products only or all statuses.
  • Multiple feeds — create more than one feed, for example a separate feed per market or currency.

Before you start

You will need:

  • A Meta Business account with access to Commerce Manager.
  • A catalogue already created in Commerce Manager (or be ready to create one during setup).
  • A public storefront URL for your store, used to build the product links in the feed.
  • Products in your OrbitCommerce store with prices, images and (ideally) brand and barcode information filled in.

You do not need any Facebook developer keys. The plugin only reads your product and category data from OrbitCommerce; you connect the resulting feed to Meta yourself in Commerce Manager.

Getting started

  1. Install the plugin. Open your OrbitCommerce dashboard, go to the plugin store and install Facebook Catalog Feed. Once installed it appears in the sidebar as Facebook Catalog Feed.
  2. Open the plugin and create a feed. Go to the Feeds page and create a new feed. Give it a recognisable name, for example your store or market name.
  3. Set the feed details. Choose your target country (this pre-fills the matching language and currency), confirm the currency, and enter your Storefront URL so product links resolve correctly. Optionally set a default brand and adjust the product filters.
  4. Map your categories (recommended). Open the feed and use the category mapper to match your store categories to Meta/Google product categories, and set a default product category as a safety net for unmapped products.
  5. Turn on a schedule (optional). Enable scheduled generation and pick an interval so the feed is rebuilt automatically.
  6. Generate the feed. Run the feed once so a file is produced, then copy the feed URL shown on the feed detail page.
  7. Add the feed in Commerce Manager. In Meta Commerce Manager, open your catalogue, go to Data sources and add a scheduled data feed. Paste the feed URL, set Meta's fetch schedule (for example daily) and complete the import. Meta will then fetch the URL on its own schedule.

How the feed works

What the feed contains. Each product is exported as one or more CSV rows with these columns: id, title, description, availability, condition, price, link, image_link, additional_image_link, brand, item_group_id, google_product_category, product_type, gtin, mpn, sale_price, colour, size and material.

  • Title and description — the product name (with the variant's options appended for variant rows) and a plain-text description with HTML stripped out.
  • Availability — reported as in stock or out of stock based on quantity.
  • Condition — all items are exported as new.
  • Price — formatted with two decimal places followed by the feed currency, for example 19.99 GBP. Compare-at pricing is exported as a sale price as described above.
  • Link — built from your storefront URL plus the product handle.
  • Images — the first image becomes the main image; up to nine further images are added as additional images.
  • Brand — taken from the product's brand, falling back to the default brand you set on the feed.
  • Category — taken from your category mapping, falling back to the feed's default category.
  • Identifiers — a valid 8, 12, 13 or 14-digit barcode is exported as the gtin; if there is no valid barcode, the SKU is exported as the mpn.

Which products are included. The feed honours your filters: by default only active, in-stock products are exported. You can include out-of-stock products and/or all product statuses by changing the feed settings.

Refresh cadence. The plugin keeps a local copy of your product data, refreshed roughly hourly, and updates it in response to product changes in your store. When a feed runs (manually or on its schedule) it rebuilds the CSV from that data. Each run is recorded so you can see when it ran, how many products and items were exported, and whether there were any errors.

The feed URL. Each feed has its own URL that returns the latest generated CSV. This is the URL you give to Meta. It is served as a CSV file and is the single address Meta fetches on every scheduled pull — you do not need to re-upload anything once it is connected.

Settings

Each feed has its own settings:

  • Feed name — a label to identify the feed.
  • Target country — the market the feed is for; selecting a country pre-fills the matching content language and currency.
  • Content language — an ISO 639-1 language code (for example en).
  • Currency — the currency prices are exported in (defaults to GBP).
  • Storefront URL — your public store address, used to build product links.
  • Default brand — a fallback brand applied to products that have no brand set.
  • Include out-of-stock products — off by default; turn on to export items with zero stock.
  • Product status filter — export active only (default) or all statuses.
  • Category mapping — match your store categories to Meta/Google product categories.
  • Default product category — a single category applied to any product without a mapping, so every row carries a valid category.
  • Schedule — enable automatic regeneration and choose every 30 minutes, every hour, once a day, once a week or once a month.

Troubleshooting

Meta says the feed is empty or has very few items. Check your filters. By default the feed only includes active, in-stock products, so drafts and out-of-stock items are excluded. Turn on Include out-of-stock products or switch the status filter to All statuses if you expect more items, and make sure your products have prices set.

Meta rejects rows for a missing or invalid product category. Set a default product category on the feed and map your main store categories. Every row needs a valid category; the default ensures unmapped products are still accepted.

Product links are wrong or missing in Meta. Confirm the Storefront URL on the feed is your live, public store address with no trailing slash issues. Links are built as your storefront URL plus the product's handle, so an incorrect base URL breaks every link.

Meta isn't picking up recent product changes. Make sure the feed's schedule is enabled and that Meta's own fetch schedule in Commerce Manager is set to refresh regularly. The feed URL always returns the most recently generated file, so both the plugin schedule and Meta's fetch schedule need to be running for changes to flow through.

Products show as out of stock when they shouldn't. Availability is based on quantity. For products with variants, the product is in stock if any variant has stock. Check the stock levels recorded against the product and its variants in your store.

Support

For help with this plugin, visit the Orbit Commerce Help Centre, or use the Get support link on the plugin's store page.