Release Notes 201903.0Edit on GitHub
The Spryker Commerce OS is an end-to-end solution for digital commerce. This document contains a business level description of major new features and enhancements released in March of 2019.
For information about installing the Spryker Commerce OS, see Getting Started Guide.
Check out our release notes video for the quick illustration of the new features and improvements:
Product Is Available Again Notifications
When customers visit an online store and see that the product they want is not in stock, there is still a way to bring them back and complete the purchase once you restock.
From this release on, customers would be able to subscribe to “back in stock” notifications. Shops can define a specific template for the notification email.
Documentation: Product is Available Again.
Apply Discount on Group of Products
Previously, a discount could be applied only to an entire cart or a specific product.
Starting from this release, you can also apply a discount to a group of products if the quantity of those products in the customer’s cart fulfills predefined rules.
- 20% off on juice products if the customer puts at least 6 bottles to the cart
- 20€ off if the customer puts at least 3 products of brand XYZ to the cart
Back Office Translated to Multiple Language
With this release, we have added a new opportunity for you to go global and build a multi-cultural team within your organization. Now, Spryker Back Office supports multiple languages and is shipped with UI in both English (en_US) and German (de_DE) languages.
Documentation: Back Office Translations.
Supporting Unlimited Number of Categories
Previously, the Back Office “Category” page could not display a large number of categories (more than 10 000 for example). With this release, we have refactored the page so that it can handle as many categories as your shop has.
Multi-store Support for CMS Pages
If you have multiple stores configured, you can define in which store a CMS page will be visible. A Back Office user can configure that in the back office.
Documentation: Multi-store CMS Pages.
CMS Pages in Search Results
Spryker improved search capabilities by including CMS pages in search results. Now, customers are redirected to the search result page containing two tabs: one for product pages and the other for CMS pages. The new tab lists CMS pages either as a list or as a grid.
Documentation: CMS Pages in Search Results.
New Template for Category Page
The new template for the category page provides another navigation option for shops with a complex category structure. Having clicked a top-level category, a webshop visitor will be redirected to a subcategory page that shows a grid consisting of subcategory images. The shop owner can assign an image to each category in Back Office that will be shown on the page.
Documentation: Assigning a Template for a Category Page
CMS Block Widget
With the CMS Block widget, a content manager can create and manage content displayed on one or several CMS pages. This allows reusing existing content or adding promotional elements such as banners that will be shown on the website during the defined time configured per CMS Block.
Documentation: CMS Block widget
Session Management Improvement
In this release, we have improved the way the session works in Spryker. Out of the box, your customers and users will be able to interact with the web sites for as long as they are active.
If a user does not interact with the site for a specific period of time, the session will expire, and the user will be redirected to the login page for their next action.
Documentation: Session Management.
Code Sniffer, Architecture Sniffer, PHPStan Improvements
In this release, we have extended the Code Sniffer with the new concepts of levels: You can apply a different level when extra checks are required. We have also updated the Architecture Sniffer with new architectural rules and added a possibility to define a priority by a module.
PHPStan has been updated with config file inheritance. From now on, only new or changed settings need to be defined for a module. General settings are defined and loaded automatically for all modules.
Spryk: Code Generation Tool
With this release, Spryker introduces a new code generator called Spryk. It helps with the generation of required boilerplate code. Spryk works for new and existing code and supports multiple scenarios or definitions. Some scenarios are complex and implemented as independent Spryk definitions linked together, allowing a developer to run code generation for the whole scenario or only for a part of it.
Spryker Glue REST API
The Spryker Glue REST API now includes endpoints for retrieving lists of related products. Endpoints are available for every type of relation working with the corresponding business logic.
Documentation: Retrieving Related Products.
Every navigation node and its structure are retrievable via the navigation API endpoint.
Documentation: Retrieve navigation trees.
Product alternatives for concrete and abstract products are available via the respective endpoints. This allows you to offer alternatives for discontinued and unavailable products when needed.
Documentation: Retrieving Alternative Products.
Optional Resource Relationships
From now on, resource relationships are not included in the response by default. This will minimize the load for all endpoints in the default mode. You can specify required relationships using the include parameter of GET requests.
Documentation: Configuring Visibility of the Included Section.
Quick Order Improvements
With this release, we have implemented significant improvements to the Quick Order feature. First, Quick Order now supports uploading of big packs of data with the help of CSV files, which allows the shop customers to order multiple products at once. Also, we have integrated a Search Widget for concrete products into Quick Order to enable full-text search for concrete products with the support of Measuring Units, Packaging Units and all kinds of Product restrictions (minimum and maximum quantity, Customer specific products, etc). Out of the box, the Spryker Search Widget can be used not only in Quick Order but as a separate widget for the Cart page and Shopping list.
Documentation: Quick Order.
We are introducing one of the core B2B features which enables managers to control purchases requested by their employees. A customer can choose to have an order approved by a responsible person before allowing the checkout. The company administrator can limit some roles with flexible permissions and define a threshold on the Cart Total value so a buyer would need to ask for approval when the Cat Total limit is exceeded.
Documentation: Approval Process.
- Create New Address During Checkout: Allows creating a new address during checkout or select between Company Business Unit and Customer Address Book addresses.
- Business on Behalf: Back Office interface for creating Business on Behalf users has been implemented. Now, the feature supports both ways to create Business on Behalf users – via Import and through the Admin UI.
- Reclamation: Allows creating a reclamation from an order on the item level.
Heidelpay Marketplace Payments
With the market showing an increasing number of marketplaces, Spryker has integrated its first marketplace-specific payment support by extending the existing Heidelpay integration.
Customer payments can now be split in the background and assigned to the corresponding vendors when a client buys a product delivered by different vendors. This feature ensures customers can buy several units of the same product sold by different vendors while still going through the checkout with one single order and one single payment.
Our recently finished Adyen integration covers a wide range of payment methods used both in the DACH region as well as outside of it, thus making sure customers can select the most appropriate payment method.
Out-of-the-box the following payment methods are included:
- Credit cards (VISA, Amex, Mastercard, Cartes Bancaires)
- Direct Debit
- Vorkasse (Prepayment)
- Klarna invoice
- PayPal, iDeal
- QR code payment methods (Alipay, WeChat)
- further ones can be added to the project
In addition to the existing Arvato RSS integration, Spryker has added the AfterPay payment method of Arvato, further extending the overall payment integrations of the Spryker Ecosystem. This invoice payment method includes a risk check of the potential uncertainty behind specific purchases and lowers the overall risk of fraud; used by default for the companies.
For submitting the form