Marketplace Product Offer Prices feature walkthroughEdit on GitHub
With the Marketplace Product Offer Prices feature, the Marketplace merchants can define custom prices for product offers.
Merchants can define the prices for each product offer. If no price for the product offer is specified, a default price from the concrete product is used.
Price types (e.g. gross price, net price) are assigned to each price, and for each price type, there can be from one to n product prices. Price type entities are used to differentiate between use cases: for example, we have DEFAULT and ORIGINAL prices which are used for sale pricing. You can add your own price types and use them in your app.
A new price type can be added by importing price data. The price type in the CSV file will be added or updated.
To learn more details about prices import file, see: File details: product_price.csv
Depending on the price mode selected by a customer in Storefront, the price can have gross or net value. You can run your shop in both modes as well as select net mode for business customers, for example.
A price is also associated with a currency and a store.
To support product offer prices, a PriceProductOffer database table has been added to connect PriceProductStore and ProductOffer tables. In order to store the information about product offer prices that will be synchronized to Storage, the ProductConcreteProductOfferPriceStorage database table has been added. On the Storefront, this data is used to display correct prices for product offers.
In addition, product offers support volume prices. Merchants can now enter volume prices for product offers, and customers will see the corresponding price on their Storefront based on the quantity they have chosen. The volume prices for product offers work the same as the volume prices for products.
To learn more about the feature and to find out how end users use it, see Product offer price overview for business users.
Module dependency graph
The following diagram illustrates the dependencies between the modules for the Marketplace Product Offer Prices feature.
|PriceProductOffer||Provides product offer price-related functionality, price persistence, current price resolvers per currency/price mode.|
|PriceProductOfferDataImport||Imports data for product offer prices.|
|PriceProductOfferGui||Backoffice UI Interface for managing prices for product offers.|
|PriceProductOfferStorage||Provides functionality to store data about product offer prices in the storage.|
|PriceProductOfferVolume||Provides functionality to handle volume prices for product offers.|
|PriceProductOfferVolumeGui||Backoffice UI Interface for managing volume prices for product offers.|
|PriceProductOfferExtension||Provides plugin interfaces for extending
|PriceProductOfferStorageExtension||Provides plugin interfaces used by Price Product Offer Storage bundle.|
|PriceProductOfferVolumesRestApi||Provides plugin(s) to add product-offer-volume-prices to the product-offer-prices.|
|ProductOfferPricesRestApi||Provides Rest API endpoints to manage product offer prices.|
|ProductOfferPricesRestApiExtension||Provides plugin interfaces for extending the
|Price||Handles product pricing and provides plugins for products to populate prices.|
|PriceProduct||Provides product price-related functionality, price persistence, current price resolvers per currency/price mode.|
|PriceProductStorage||Provides functionality to store data about product prices in the storage.|
|PriceProductVolume||Provides functionality to handle volume prices for products.|
|ProductOffer||Provides the core functionality for product offer features.|
The following schema illustrates the Marketplace Product Offer Prices domain model:
Related Developer articles
|INTEGRATION GUIDES||GLUE API GUIDES||DATA IMPORT|
|Marketplace Product Offer Prices feature integration||Retrieving product offer prices||File details: price-product-offer.csv|
|Glue API: Marketplace Product Offer Prices integration|
For submitting the form