Release notes 202108.0Edit on GitHub
The Spryker Commerce OS is an end-to-end solution for digital commerce. This document contains a business level description of new features and enhancements.
For information about installing the Spryker Commerce OS, see Developer getting started guide.
A Merchant is a third-party seller who is invited by a marketplace operator to join the Marketplace, so they can offer their products to end customers. The Marketplace supports multiple merchants. The merchant has its own merchant users, products, offers, and profile on the Storefront.
Merchant Portal is the management interface where merchants do all administrative tasks:
- Create and manage products and product offers
- Manage orders and returns
- Register and edit merchant profile
- Review their shop’s performance
Merchant Profile is a Storefront page with a unique URL where a merchant showcases all the relevant information about their shop. Managed within the merchant portal, a merchant can add the following information to the merchant profile:
- Shop description
- Contact information
- Opening hours
- Terms & conditions
- Imprint details.
They can also set up the store relations, determine their own unique merchant profile URL, and publish their shop online.
Every reference to a merchant on the Storefront is linked to their merchant profile, so that it is transparent who the seller of a product is.
Documentation: Marketplace Merchant feature overview
Merchant Products and Merchant Product Offers
In the Marketplace, merchants can sell products by creating new products or creating offers for the products that were created by other merchants. Customers can filter products and offers by merchants in the catalog and search results.
A Merchant Product is a product created by a merchant. The merchant that creates a product owns the product data like product description, images, attributes, prices, or stock.
Documentation: Marketplace Products feature overview
Merchant Product Offers
Multiple merchants can sell the same product. When a merchant wants to sell a product that had been created by another merchant, instead of creating a duplicate product, they create a Product Offer. The merchant that originally created the product owns the product information. The merchant who created the product offer, owns the information that’s unique for the offer, like price, stock, and validity dates. A merchant can create multiple offers for the same product.
The _Product Details _page contains a section where a customer can view and select the product or its offers. In this section, the merchant who created the product is displayed on top, while the product offers are sorted in an ascending order by price.
Documentation: Marketplace Product Offer feature overview
Merchant Product Options
Merchants can create and connect product options to their or other merchants’ products.
Documentation: Marketplace Product Options feature overview
Marketplace and Merchant Orders
When a customer places an order on the Marketplace, a Marketplace Order is created. The Marketplace Order can contain offers and products from different merchants. The part of the order that belongs to a certain merchant is referred to as a Merchant Order and it can have a custom order management process mapped with the Spryker State Machine.
Customers can add products from different merchants to a single cart and order them as a single order. An order with items from multiple merchants is split into merchant orders. The key features of split orders are as follows:
- Each merchant order has a dedicated state machine.
- Merchants or a marketplace operator can fulfill the orders from different warehouses and at different times
- Each merchant order is a separate shipment that a customer can track and get updates about.
- Merchants independently process their returns.
- Merchants have different OMS processes that are ruled by the State Machine.
Documentation: Marketplace Order Management feature overview
Back Office for Marketplace Operator
A Marketplace Operator ensures compliance with Marketplace guidelines by managing merchants, their products, and offers and reviewing marketplace performance in the Back Office.
The operator can create, edit, and approve merchants and merchant users. They also manage the access of merchant users to the Merchant Portal.
Merchant product management
The operator can edit and activate merchant products and product options.
Documentation: Marketplace Products feature overview
Merchant product offer management
The operator can view and approve merchant product offers.
Documentation: Managing merchant product offers
Marketplace and merchant order management
The operator can view and cancel marketplace and merchant orders.
Documentation: Managing marketplace orders
Marketplace and merchant return management
The operator can view and create marketplace and merchant returns.
Operator as a merchant
The operator can act as a Main Merchant and sell products. In Back Office, they manage their own orders and returns separately from the other merchants’ orders and returns.
Documentation: Managing main merchant orders
All the significant features of Spryker Marketplace are covered with Glue APIs.
- Retrieving merchants
- Retrieving merchant abstract products
- Retrieving merchant concrete products
- Retrieving product offers
- Retrieving product offers of concrete products
- Managing items in carts of registered users
- Retrieving marketplace orders
- Managing the returns
- Managing wishlist items
- Search the product catalog
- Retrieving autocomplete and search suggestions
To ensure a smooth merchant onboarding process and overall marketplace setup, we’ve implemented marketplace-specific data importers to exchange the most relevant information between merchants and the operator.
These are the new data importers available in our data import framework:
- Product offers: The operator can provide a template to the merchants, so that they can add all offer-related information in one file that can be imported afterwards. Documentation: File details: combined_merchant_product_offer.csv.
- Merchant Order items status. Documentation: File details: merchant-order-status.csv.
The new merchant order exporter allows to export information like orders, order Items, and expenses.
Documentation: Data export Merchant Orders .csv files format
In this release, we implemented the following technical enhancements.
Added the ability to grant access to the data of SQL database tables:
- Extended the existing ACL (Access Control List) roles with new rules.
- Added CRUD based rules for database entities.
- Added the ability to grant access to flexible segments of data in tables.
- Merchant Portal is covered by ACL by default.
Introduced a new component for rendering tables:
- The front-end library is based on WebComponent.
- Integrated into the back end by default.
- By default, it is used for all the tables in the Merchant Portal, but it also can be used in the Back Office or Storefront.
- Based on a provided configuration, the library can consume data from any source.
Security system upgrade
We migrated to
symfony/security as a default authentication system for Zed-based applications: Gateway, BackOffice, MerchantPortal. As Yves and Zed based applications now use the same infrastructure under the hood, you can reuse community supported implementations of the most popular authorization frameworks like