Release notes 202108.0

Edit 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.

Merchants

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

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 portal dashboard

Documentation:

Merchant Profile

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
  • Banner
  • Logo
  • 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.

Merchant profile

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.

Merchant Products

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.

Merchant product on the Product Details page

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.

Merchant offers on the Product Details page

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.

Split orders

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.

Marketplace order

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.

Merchant management

The operator can create, edit, and approve merchants and merchant users. They also manage the access of merchant users to the Merchant Portal.

Merchants in the Back Office

Documentation:

Merchant product management

The operator can edit and activate merchant products and product options.

Merchnat products in the Back Office

Documentation: Marketplace Products feature overview

Merchant product offer management

The operator can view and approve merchant product offers.

Merchant offer in the Back Office

Documentation: Managing merchant product offers

Marketplace and merchant order management

The operator can view and cancel marketplace and merchant orders.

Marketplace orders in the Back Office

Documentation: Managing marketplace orders

Marketplace and merchant return management

The operator can view and create marketplace and merchant returns.

Marketplace returns in the Back Office

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

Glue APIs

All the significant features of Spryker Marketplace are covered with Glue APIs.

Documentation:

Data exchange

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.

Data import

These are the new data importers available in our data import framework:

Data export

The new merchant order exporter allows to export information like orders, order Items, and expenses.

Documentation: Data export Merchant Orders .csv files format

Technical enhancements

In this release, we implemented the following technical enhancements.

Persistence ACL

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.

GuiTable

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 oauth2.