Magento 2 Facebook Product Feed

View Demo

Your site is not the only place to advertise and sell your products. Facebook offers humongous marketing opportunities. Taking advantage of them is a smart choice for any business.

Magento 2 Facebook Feed lets you easily generate product feeds for Facebook Dynamic Ads or Facebook Store.

  • Generate product feeds for Facebook Dynamic Ads or Facebook Store
  • Export as many feeds and products as you need
  • Use templates, duplicate for similar channels, or build from scratch
  • Validate feeds against your custom rules before export
  • Filter variables with conditions
  • Schedule feed generation and delivery

ℹ️ Important: This sub-module is included in the Advanced Product Feeds extension.

Buying this item gives you access to all feeds including Facebook, Instagram, Google Shopping, and others in one powerful package.

Hyvä
Magento Cloud
Mage-OS
Compatible with:
Community:
2.3.* - 2.4.9
Enterprise:
2.3.* - 2.4.9


Business Value

  • Opportunity: Facebook has over 3,59 billion active users worldwide with 33 minutes of average time a user spends on this social media platform. It is a perfect Find a new audiAds on Facebook have one of the most advanced targeting options on the market, too. You can take advantage of both Facebook’s traffic and its tools by either marketing your products with its Dynamic Ads or creating your own Facebook Store.
  • Problem: You have to regularly export your products to Facebook in order to advertise and sell products there. This means that you have to generate a product feed and automate it.
  • Solution: Magento 2 Facebook Feed is a comprehensive solution for product feed generation and automation. It lets you generate product feeds for either Facebook Dynamic Ads or Facebook Store, customize them, automate their generation and delivery, use analytics to track their performance, and so much more.

How it Works

This feature lets you generate a product feed for Facebook Dynamic Ads or Facebook Store. Get a Facebook Shop integration Magento 2 feed which you can then import to the social network. We have templates that work out-of-the-box, but you can extensively customize them or even create your own ones. Feed generation and delivery can be automated, and there is also an extensive analytics suite.

Main Advantages

Export as Many Feeds and Products as You Need

Concentrate on your business, not your quota. You can update with as many products as you need to as often as you need to.

Facebook’s unlimited product import feature ensures that businesses, whether they are recently launched startups or established endeavors, can keep their product catalogs in sync with market dynamics. The result of using the Facebook product feed Magento 2 is a digital storefront that can promptly respond to changing consumer preferences, emerging trends, or seasonal shifts.

Use Ready Templates or Create Your Own Feeds

This feature includes ready-to-go Facebook Dynamic Ads and Facebook Store feed templates. Just set up the extension, choose the corresponding marketplace, shopping engine or advertisement network, and generate the feed to start marketing.

If you need more control over the feed, you can further customize it with our advanced set of patterns and variables. For example, instead of displaying the regular price, it may be required to display the Final Price with Tax or a Special Price. You can duplicate a template to reuse its configuration for similar channels.

Our Magento 2 Facebook shop extension offers full freedom when configuring the product feed. Create an individual template tailored to any sales channel, or generate a custom feed without a template when your channel requires a unique structure.

Filter Variables with Conditions

Consider a scenario where an online store offers a vast array of products. Each its product category has specific attributes, and tailoring the shopping experience for customers becomes imperative.

Our Magento 2 Facebook shop integration extension offers robust filtering options. Businesses can effortlessly filter out specific products based on a multitude of conditions.

Whether it's about showcasing a dedicated product set to a specific demographic during a particular season, or a response to market trends - this feature enables businesses to curate their offerings with surgical precision.

Validate Feeds Before Export

Make sure your file meets Facebook’s requirements before you upload it. The validator works with any feed and helps you catch issues early, so your catalog passes review faster.

Set up checks in Content Settings > Validation Rule, generate the feed, and run validation. If a rule is present, the check can run automatically, and you can also start it manually at any time. The result is a clear report with line numbers and plain-language messages.

The validator looks for common problems such as title length, missing required fields, character encoding, price and currency formats, and dimensions, along with any custom constraints you include in the rule. Open the product or attribute, correct the data, regenerate the feed, and validate again to publish accurate information on the first try.

Program Feed Generation and Delivery

Do you update your products regularly? Manually updating product feeds can be a time-consuming task, prone to errors and inconsistencies.

Our Magento Facebook plugin simplifies the task by offering a feed generation schedule based on Cron system utility.

Furthermore, our module continues feed automation with an automated feed delivery support. Easily configure to deliver the product feed to Facebook via FTP or SFTP, ensuring the secure and efficient transmission of product catalog data.

Magento product feed Facebook reports

Get additional view on the Facebook feed Magento 2 success. By tracking the number of clicks and orders made after customers are redirected from the marketplace, businesses gain insights into the effectiveness of the product feed.

Our extension provides comprehensive reports that break down data by Feed, SKU, Day, Week, Month, and Year.

To send Meta the views, add-to-carts and purchases these ads bring, from the browser and from your server, add our Facebook Pixel & Conversions API extension.

No hidden fees
Our developers install the extension on your store and configure it for your setup, free of charge.
Lifetime access to source code
Access to free support and updates for 1 year
Updates and support prolongation - $108

Pay today $179 for the first year.

Then $108 for updates and support services per year.

Cancel anytime.

30 days money back guarantee
See it in action!
Pick a quick tutorial to learn about various aspects of this extension
Customer Reviews 0
Earn points for your review about this extension modules. $1 = 10 points
Write Your Own Review

check-circle You submitted your review for moderation.

Manual & Support
Need more help?

Save time by starting your support request online and we'll connect you to an expert.

Frequently asked questions
chevron-down chevron-right

Why do I need a Magento Facebook shop integration?

Facebook allows businesses to dynamically showcase their products or services to a highly targeted audience, enhancing visibility and driving sales.

The Magento Facebook product feed essentially acts as a bridge between an online store's inventory and Facebook's advertising platform. By implementing Magento 2 Facebook store integration using this feed, businesses can seamlessly display their products on Facebook, reaching potential customers with tailored advertisements.

chevron-down chevron-right

Does the Magento 2 Facebook feed require manual update?

What makes our Magento 2 Facebook product feed extension exceptionally powerful is its ability to automatically update the feed. This means that any changes made to the inventory, such as new products or updated prices, are reflected in the ads, ensuring that customers always see the latest offerings.

chevron-down chevron-right

Does the Magento Facebook extension provides a product feed efficacy report?

Our Magento Facebook store integration tool offers tracking capabilities for the Magento Facebook feed via special arguments, which are appended to the product URLs.

The feed efficacy report includes such columns as Number of Clicks, indicating how many times customers redirected from the marketplace to your site.

Number of Orders quantifies the conversions that occurred after customers were redirected. Knowing this figure not only gauges the effectiveness of your marketing but also helps in inventory planning.

Revenue signifies the total earnings from the orders placed after marketplace redirection. Understanding your revenue trends can aid in strategic decision-making.

Revenue per Click is a metric that calculates the average revenue amassed for each individual click. This metric is a testament to the quality of your incoming traffic. A high revenue per click indicates that the visitors are not just browsing but making substantial purchases. This insight is invaluable as it enables you to focus your marketing efforts on channels that bring in high-value customers.

chevron-down chevron-right

Can this Magento 2 Facebook business extension generate a feed for a different service?

You absolutely can! In addition to Magento Facebook integration, our module offers **more than 50** templates for popular shopping services, including Amazon, Google Shopping, and eBay.

Changelog
Version 1.17.4Nov 10, 2026
⚠️ Saving or duplicating a product filter no longer fails on stores upgraded from old versions — On some stores upgraded from old versions of the module, the mst_feed_rule table still carried the leftover columns actions_serialized, created_at and updated_at. The module has not used them for years, but because they are required columns with no default value, every attempt to save a new filter or duplicate an existing one was refused with "Column 'actions_serialized' cannot be null" (or the same error for created_at or updated_at), so filters could not be managed at all. An upgrade patch now drops all three leftover columns when they are present. The patch does nothing on fresh installs or on stores that already lack the columns. Run bin/magento setup:upgrade after the update.
Version 1.17.3Nov 6, 2026
Bundles whose children are all out of stock are no longer exported at price 0 — Magento prices a bundle from its in-stock selections only, so a bundle whose enabled children had all gone out of stock exported Final Price, Regular Price and Min Price as 0, and g:price in the shipped templates with it. These bundles are now priced from their enabled selections regardless of stock, the same way configurable and grouped products already were: the price after the bundle's own special or tier discount, with each selection taken at its configured quantity so a child's tier price counts, as on the storefront. Regular Price stays the undiscounted price, so a sale on such a bundle remains visible, and both are in the store's display currency.
The "Final Price" product filter reads the exported price — A bundle, configurable or grouped product whose children are all out of stock reports a raw final price of 0, so a filter such as Final Price > 0 dropped it from the feed although the feed exported a positive price for it. The filter now checks the same price the feed exports, so the filter and the feed agree.
Security improvements
⚠️ Constructor change for code that extends the feed filter condition — Mirasvit\Feed\Model\Rule\Condition\Product now takes Mirasvit\Feed\Export\Resolver\Product\PriceResolver. Code that extends this class or passes its arguments in its own di.xml needs to be updated.
Version 1.17.2Nov 4, 2026
Bundle Final Price attribute — A new Bundle Final Price product attribute (bundle_final_price) gives a bundle's price after discounts: its default selections at their default quantities, each at the guest price, with a dynamic bundle's own special or tier percentage applied the same way as on the storefront. With no discount it equals Bundle Regular Price. Before, the only option was Final Price, which for a bundle is the cheapest single-unit combination with no quantities. A template comparing it with Bundle Regular Price therefore flagged every multi-quantity bundle as on sale, which triggered Google Merchant Center "price mismatch" disapprovals. Use Bundle Final Price as the bundle sale price in your templates.
Faster feed exports — Product attributes that are not prices (SKU, name, description and so on) no longer run the guest-price check. That check ran a catalog price rule database query and switched the customer group for every attribute of every product, which cost about a third of the export time on templates with many attributes. Prices are still always exported as the guest (NOT LOGGED IN) price.
⚠️ Faster feeds grid when feeds have large validation results — The feeds grid counts each feed's validation errors and warnings on every load. On large validation results this took seconds per feed and could make the grid time out. A new (feed_id, severity) index on the mst_feed_validation table speeds up this count (about 2.0 s → 0.37 s on 524k rows). Run bin/magento setup:upgrade to add the index.
Feed admin pages check admin role permissions — Any admin role, whatever its permissions, could load 17 feed grids and forms, including the feeds grid, which contains FTP/SFTP passwords. Each now requires the matching feed permission. Pages under Filters now check the Filters permission, the same as the menu, so a role that has the feed section but not Filters no longer opens pages whose grids then refuse to load. The Feed report now checks the Feed report permission. Check your admin roles if some users need to keep access to these sections.
Feed admin actions require the admin secret key — Opening a link was enough to trigger Preview, the template library, validation, dynamic variable validation and dynamic attribute actions, bypassing Magento's secret key check. They now require the secret key or form key like other admin actions. The Preview and Validate popups now send the form key, so they keep working.
Feed templates are limited to product and store data — Template expressions can now read only data values, such as attributes, prices and store settings. Expressions that tried to reach Magento internal objects now return an empty value. Update to this version to close this security issue.
Dynamic variable codes are limited to letters, digits, "_" and "-" — Codes with any other characters are now refused on save with a translated message, and an existing variable with such a code no longer loads its file. Update to this version to close this security issue.
Preview errors are shown as plain text — Preview returned the error from a broken template tag as HTML, so markup inside the tag could run in the browser of the admin opening the preview. The error is now logged and shown as a translated plain-text "Preview failed" message.
Version 1.17.1Oct 29, 2026
⚠️ Old feed files are cleaned up per feed, not by a cron sweep — When a feed publishes under a new name (renamed, dated filename, changed type, compression or JSON framing), its previous file and JSON sidecar are removed once the export completes, and deleting a feed removes its file, sidecar and previews. A file that another feed of the store still publishes is kept, and a file that cannot be deleted (for example an S3 error) is logged instead of failing the export or the delete. The feed_clean_files cron job is removed, because when media/feed is shared with another Magento installation (such as one S3 bucket) the sweep deleted the other installation's live feeds. Files left over from earlier versions can still be removed with bin/magento mirasvit:feed:cleanup, which now warns that it also removes another installation's files in shared storage. The Mirasvit\Feed\Cron\CleanupOldFeedFilesCron class is removed.
⚠️ Constructor changes for code that extends the feed — Mirasvit\Feed\Cron\ExportCron now takes Mirasvit\Feed\Model\ResourceModel\Feed\CollectionFactory instead of the feed collection, Mirasvit\Feed\Model\Feed\Exporter and Mirasvit\Feed\Repository\FeedRepository take Mirasvit\Feed\Service\PublishedFileCleaner, and Mirasvit\Feed\Export\Resolver\Product\PriceResolver and Mirasvit\Feed\Model\Rule\Condition\Product take the new Mirasvit\Feed\Service\GuestPriceService. Code that extends these classes or passes their arguments in its own di.xml needs to be updated.
Disabled feeds are no longer exported on schedule — A feed that was disabled, or had its cron schedule switched off, could still be generated by cron: the export cron could reuse an already-loaded list of all feeds, and a feed queued while active and disabled before the queue ran was exported anyway. Both cases are fixed: the export cron now reads the feed list fresh on every run and re-checks that a feed is enabled and scheduled, and a queued generation of a feed that has been disabled since is skipped and marked as failed.
Feeds always export the guest (NOT LOGGED IN) price — A feed generated while a customer was logged in, or filtered on Final Price, could use that customer group's tier price or catalog rule price instead of the public price shopping channels must see. This affected simple products, configurable, grouped and bundle products (including the min_price of their children). Prices and the Final Price product filter now always use the guest price.
Scheduled feeds no longer skip a time slot around midnight — When a long export delayed a feed past midnight, a time slot configured late on the previous day was lost until its next scheduled day. That missed slot now runs late instead, and only when the feed's last run was yesterday, so a feed is never generated on a day it is not scheduled for.
Feed validation works for feeds migrated from older versions — Validation rules of migrated feeds were stored in the wrong format, so every such feed reported "Valid" whatever its content. An upgrade patch repairs the stored rules of existing feeds and templates, one record at a time, and leaves correct rules untouched. After the upgrade these feeds are validated for the first time, so they may show validation warnings or errors they did not show before.
FTP/SFTP password is no longer autofilled with the admin password — Browsers filled the feed's FTP/SFTP password field with the saved admin login, silently storing the wrong delivery password. The field now opts out of credential autofill. If a feed's delivery stopped working because of this, enter its FTP/SFTP password again.
Logo upload on feeds and templates — A logo is now saved only when its file was actually written, and the previous logo is kept otherwise. If the logo cannot be saved, the feed or template is still saved, the previous logo is restored, a clear error is shown instead of "You saved…", and you stay on the edit form.
Category mapping files no longer flood the log — Every complete read of a category mapping file was logged as a read failure; it is now logged only when a file really cannot be read. Mapping files stored on Amazon S3 are read reliably.
Shipped templates lock Framing and Marketplace — These two fields could be edited on a shipped template and the save was then refused; they are now locked like the template's other general fields.
Version 1.17.0Oct 26, 2026
Feed is listed in the Core AI settings — Advanced Product Feeds now appears in the "modules using AI functionality" list of the Mirasvit Core AI settings, using the default AI provider configured there.
⚠️ Requires Mirasvit Core 2.0 — The module now requires mirasvit/module-core 2.0.0 or later and the new mirasvit/module-ai-core package. Composer installs them with the update; run setup:upgrade afterwards. Code that extended or injected the Core helpers the feed no longer uses (Mirasvit\Core\Helper\Io, Mirasvit\Core\Helper\Image, Mirasvit\Core\Service\SerializeService, Mirasvit\Core\Service\YamlService) needs to be updated.
Image resizing works on remote media storage — The resize filter in feed templates now uses Magento's own image processor and works whether media is stored locally or on Amazon S3. Resized images are cached under pub/media/mst_feed/cache, so their URLs in the feed change once. Two exports resizing the same image at the same time no longer clash, temporary files are always cleaned up, and an image that cannot be resized is exported at its original URL and the failure is logged.
The feed export lock is kept on the local disk — The per-feed lock file now lives under var/ instead of pub/media, so locking works the same when media is on S3 or a network drive. Reset on a feed now removes this lock file too.
Older product filters keep working — Feed product filters saved in the old storage format, or imported from older YAML files, are still read correctly. A filter that cannot be read is logged and skipped instead of breaking the export, preview or filter form, and saving such a filter shows an error message instead of an error page.
Out-of-stock products no longer appear as "in stock" in feeds (MSI) — With Multi-Source Inventory, a product whose source was flagged In Stock with quantity 0 and backorders off was exported as in stock, and the Is in stock (inventory) filter kept it. This most often affected configurable products whose only variants were in this state, and sent unsellable products to Google and Facebook. Stock status and the filter now use Magento's salable check, based on the stock assigned to the feed's website. Filtering for out-of-stock products in the default fast mode no longer drops products that should be kept. The stock is looked up once per store instead of once per product.
A duplicated feed gets a sensible filename — Duplicating a feed named its copy after the internal working file, so it published as mst_feed_4.xml_copy.xml. The copy now takes the original's filename with _copy, or _copy2, _copy3 and so on if that name is already taken.
Two feeds can no longer publish to the same file — The duplicate-filename check on save compared internal names and never found a match, so two feeds with the same filename and type could overwrite each other's file. Saving a feed that would publish to the same file as another feed (same filename, extension and compression) is now refused. A feed with an empty filename is not checked.
CSV feed validation without a delimiter — Validating a CSV feed with no column delimiter set could crash on PHP 8 or pass a file it never checked on PHP 7.4. It now stops with a clear message asking you to choose a delimiter, translated into every supported locale. The tab delimiter is also recognised reliably on every PHP version.
AI profiles with a blank name — An AI profile could be saved with an empty or whitespace-only name through an update, the REST API or an import, leaving it with no label in the admin. A blank name is now refused on save, and an existing unnamed profile is shown by its code.
Fixed an error when the feed edit form was built outside a regular browser request, for example from the API or command line.
Reasons to choose Mirasvit
Client focusing and satisfaction

These are our primary. A major portion of our new clients come from referrals from our existing clients. Our professional team of developers, marketers and support staff have invested the best knowledge and experience in the field into our work, so you know you can come back to us again and again.

Remarkable support

One year free and high quality support. We go to great lengths to provide maximum satisfaction with every module you have purchased in our store. By helping you with installation, configuration, answering your every question, we do all our best to eliminate any possible problems.

Risk-free Investment

30-days money back guarantee. If you are not satisfied with our Magento to Facebook shop performance for any reason, we provide a full refund.

Constant improvements and upgrades

We constantly add new features to all our modules, and are always interested in hearing your opinion and implementing your suggested features in our future developments.

Comprehensive Documentation

We provide an expanded user guide for every aspect of our Facebook store Magento, so you can find answers for all your burning questions.

Unencrypted source code of our products

You can customize Facebook shop Magento 2 according to your needs and requirements.

Usability and Performance

The Module is easy to install and upgrade, just follow our step-by-step user guide. Additionally, the extension is ready to use with the Hyvä theme.

Ready for Magento Cloud

No core modifications. The Facebook Magento has been tested in a Magento Cloud environment and is fully compatible with it.

Loading...