Magento_SharedCatalog modules defines the visibility of products as well as product prices in the catalog and in B2B quotes for different company accounts.
The module allows a merchant to create multiple shared catalogs, link them to one or more company accounts, and set different product prices. Shared catalogs also control the visibility of products and categories for a company in the storefront. The shared catalog type (public or custom) defines the scope of products and prices available for guest users vs logged-in users. The system can have only one public and any number of custom shared catalogs.
The module relies on the
CatalogPermissions module, in that the visibility of categories for a customer group is defined by category permissions for this customer group. Once a shared catalog is enabled in B2B features, the category permissions are automatically enabled. Adding a product or a category to a shared catalog enables appropriate category permissions for the customer groups linked to this shared catalog.
The module provides web APIs and can be integrated with third-party solutions to manage shared catalogs in Magento.
The module heavily depends on the Magento_Company module, which must be installed and enabled the first. Category permissions must be enabled for shared catalogs to work properly. Price configuration for a shared catalog requires the start of a message queue consumer
The module does not create any backward incompatible changes. Can be deactivated and uninstalled at any time.
When the module is uninstalled, the other ProductTypeSharedCatalog modules won’t work.
Shared catalogs are using message queues to save prices. For more information about queues, see Message Queues.
Extension developers can interact with the Magento_SharedCatalog module. For more information about the Magento extension mechanism, see Magento plug-ins.
The Magento dependency injection mechanism enables you to override the functionality of the
You can extend and override layouts in the
For more information about layouts, see the Layout documentation.
Magento\SharedCatalog\view\adminhtml\ui_component directory contains extensible UI components.
Forms: Company, catalog rule, catalog rule staging, product, sales rule, sales rule staging update, shared catalog, shared catalog tier price.
Listings: Company, product, shared catalog company, shared catalog, shared catalog product pricing, shared catalog product listing.