What can we expect from the release ofMagento Commerce 2.3.1? More than 200 functional fixes, over 500 pull requests, and over 30 security enhancements. It is worth mentioning the rising role of community contributions which range from minor code clean-ups to the substantial features including Inventory Management and GraphQL. You can find a similar article about Magento 2 Open Source here: Magento Open Source 2.3.1 Release Notes.
Before going any further, we strongly recommend you to apply PRODSECBUG-2198 – a patch that addresses critical SQL injection vulnerability, which has been identified in Magento 2.3. You can find more information about PRODSECBUG-2198 in the Magento Security Center.
If you want to download and apply the patch, follow these steps below:
First of all, you need to access your account here: My Account.
Then, go to the Downloads tab to select the needed Magento edition and version.
After that, you have to choose Support Patches and Security Patches and then – PRODSECBUG-2198.
Start the download process. Note that the patch should be upload to a specific directory in your Magento installation. For instance, it can be ‘m2-hotfixes,’ which should not be accessible publicly.
To apply the patch, go to your project root and enter the following command git apply ./m2-hotfixes/<patch-file-name>.
Now, you can refresh the cache under Admin -> System -> Cache Management to enable the improvement.
Below, we explore merchant tool enhancements introduced in the Magento Commerce 2.3.1 release. They include the renewed Page Builder, improved order creation workflow, support for PDP images, as well as Inventory Management created by the community. Let’s describe each feature in more detail.
Everyone was waiting for anything similar to Page Builder for ages, and now we can leverage the desired functionality with Magento Commerce 2.3.1. Being a drag-and-drop visual content editing tool, Page Builder provides the ability to customize content page layout without dealing with HTML or CSS. Thus, everyone can create shopping experiences that blend content and commerce without any technical skills.
As a Magento 2 merchant, you get a powerful set of content types that can be streamlined in composing various types of pages. Furthermore, the new tool lets you apply drag-and-drop positioning of all content elements. The Magento page editing has never been so intuitive.
There is also good news regarding the order creation workflow. You might have already faced the delays when editing billing and shipping addresses. Due to the refactoring of the Admin order creation workflow, they are eliminated in Magento Commerce 2.3.1. It is necessary to mention that the processing of these fields happens after they are populated.
The ability to provide customers with better content is based not only on Page Builder but also the support for PDP images. The old limits no longer prevent you from uploading PDP images larger than 1920 x 1200. The pictures are no longer need to be compressed and downsized.
Note that before Magento Commerce 2.3.1, the system resized and compressed high-quality images larger than 1920 x 1200 automatically. At least, you didn’t have to do that automatically. Now, you no longer need to sacrifice the image quality at all. Furthermore, as a Magento merchant, you can set requirements for resizing and compression starting from Magento 2.3.1.
As for the inventory management workflow, it was also enhanced with the Multi-Source Inventory community project. Developers have added a lot of new features. You can find all the improvements here: Inventory Management Release Notes. We’d like to focus on some key features introduced in Magento Commerce 2.3.1:
Elasticsearch. You can now use Elasticsearch to get correct products and quantities when Elasticsearch is used as the search engine. Furthermore, searches return results from stock assigned to the website from 2.3.1. And to make your life even easier, the system supports filtering! Thus, it is possible to find the required information faster and with less effort.
Distance Priority Source Selection algorithm. Forever forget about unexpected expenditures caused by inappropriately selected fulfillment location. Magento Community 2.3.1 lets you use an algorithm instead, which automatically chooses the closest inventory locations. This SSA feature is based on Google Maps API. You can find out how it calculates the shortest distance for deliveries here: Manage source selection algorithms.
Mass inventory transfers. Bulk inventory transfers have been improved as well. Now, they are optimized with higher processing speed and reduced locking during transfers.
In-store pickup. Inventory Management now enables in-store pickup for selected sources. The feature is quite popular among customers, but before 2.3.1, it was available in third-party extensions only. Now, you can reduce shipping costs and increase customer satisfaction with the in-store pickup functionality out-of-the-box. And due to the higher priority of store pickup orders, the system prevents insufficient inventory available in sources to fulfill shipped orders. For further information, follow this link: Inventory Management Release Notes.
Improved developer routine
Now, when you know what improvements of Magento 2.3.1 are oriented towards merchants, we should explore the enhanced developer experience of the recent platform version.
Upgrade process dependency assessment
There is a new composer plugin – magento/composer-root-update-plugin – represented in Magento Commerce 2.3.1, which automatically updates all dependencies in composer.json during the upgrade. Before the new platform version, you have to do apply changes manually.
PWA Studio introduces another vital enhancement to the existing developer routine. If you decide to go ‘headless,’ there is no need to do everything with your own tools. Now, the platform offers a set of developer instruments that allows developing, deploying, and maintaining a PWA storefront on top of Magento 2.x. You can find answers to your questions here: Magento PWA Documentation.
The new API standard has been improved in Magento 2.3.1 as well. As a developer, you can now leverage cart and customer actions with higher efficiency: create a cart, populate a cart, set a shipping address, create a customer account, etc.
We’ve already informed you about the major security fixe introduced with a new patch. And there are 30+ security enhancements that help prevent various problems, such as cross-site scripting, sensitive data disclosure vulnerabilities, arbitrary code execution, etc. Despite no attacks have occurred, certain vulnerabilities can be exploited to access various precise data stored on your website. For further information, follow this link: Magento Security Center. It is also worth mentioning that all exploitable security issues are now a part of 2.2.8, 2.1.17, 126.96.36.199, and 188.8.131.52 Magento Commerce versions.
Of course, the performance of the Magento Commerce platform has been improved with 2.3.1. Now, our favorite e-commerce tool lets you use customer accounts with over 3k addresses without any delays. The feature is oriented at B2B merchants, so if you are one of them, pay attention to the following changes:
Customer address handling has new UI components designed to increase platform performance. As a result, 3000 and more addresses can be utilized.
The same is about the Admin order creation page, which can cope with customer accounts with 3k addresses without performance issues.
Furthermore, the usability in this direction has been also improved sine Magento now displays the list of additional customer addresses as a grid in the storefront customer address book. You can find more about the new feature here: Magento 2.3.1 Address Book.
The shipping and billing data entered during checkout is no longer deleted after a cart update.
Now, let’s take a look at the improvements of Magento Commerce 2.3 that affect both merchants and developers.
Authorize.Net extension. A new extension now replaces the Authorize.Net Direct Post module in Magento 2.3.1 since it will be no longer used since the end of June. You can find more information regarding the deprecation here.
Accept.js library. The library is now used for Authorize.NET payments.
Elasticsearch 6.0. This search engine version can be utilized in Magento Commerce 2.3.1.
PayPal Express Checkout. PayPal Express Checkout has been updated to checkout.js v4. Thus, you get a modernized checkout flow which performs faster, introduces new payment options (Venmo and PayPal Credit), and lets you use new payment options in a single integration that does not have to be updated as new payment methods are available.
Redis 5.0. It is finally supported by Magento starting from 2.3.1.
PHP. Magento 2.3.1 is compatible with PHP 7.2.x and certified on PHP 7.2.11.
MySQL Views. There is also a noticeable improvement related to MySQL. Magento 2.3.1 lets you isolate and extract MySQL Views from regular database tables. No negative effects on database backup and restoration are observed.
DHL. The users of DHL shipping methods also get a vital improvement: Magento Commerce 2.3.1 utilizes the DHL XML Services schema 6.0!
MFTF. Magento Functional Test Framework has been upgraded to 2.3.13.
Bundled extension enhancements
As for the third-party extensions included in Magento Commerce 2.3.1, they include the following features:
Amazon Pay. This module provides multi-currency support for EU and U.K. merchants. You can find more information regarding the extension and its updated functionality here: Use multi-currency.
dotdigital Engagement Cloud. This module was initially known as dotmailer. Now, it has been rebranded. Furthermore, the customer account dashboard area now includes support for Marketing Preferences. Thus, the customer consent text in the customer’s account dashboard area can be displayed as the general subscription text. The abandoned cart and automation process also introduce something new. Both features benefit from a retry function in a case when contacts are pending in dotdigital Engagement Cloud.
Magento Shipping. This module has been dramatically improved as well. First of all, let’s take a look at its brand new features introduced with Magento Commerce 2.3.1. It is shipment cancellation that lets you cancel a shipment that has not yet been dispatched. Besides, you can leverage Portal Access via Magento. This improvement provides the ability to reach the Magento Shipping portal right from your Magento store using the Magento Shipping credentials.
Also, note that multiple enhancements to the existing features have been introduced in Magento Commerce 2.3.1:
The batch processing workflow now includes error messaging and field validation.
Collection Points have been expanded as well. Now, they cater for both FedEx Hold at Locations and UPS Access Points.
Interface changes to the list of locations displayed on checkout are also a part of the Magento Commerce 2.3.1 update. A customer can view open and close hours when provided by the carrier.
Click & Collect is another intriguing option introduced in Magento Commerce 2.3.1. The list of available locations has been brought in line with the new Collection Points list on the checkout page.
Carrier Specific Packaging. In the case of FedEx, customers can choose a carrier-specific packaging. The available packages can be selected during shipping.
Qualification Experience. Now include Ship to Address, Click & Collect, and Collection Points. The initial functionality of the module has been restructured so that the three available options are now available as outcomes in a single Qualification experience.
Security has been enhanced in terms of ship[ping as well. Now third-party code execution is now possible.
Cart Price Rules. The native cart price rules of Magento can be applied to Magento Shipping starting from Magento Commerce 2.3.1.
Dispatch. Additional workflow capabilities are a part of the dispatch process. Now, they can cater for future carriers.
Vertex. When it comes to the Vertex module, there are only two improvements introduced in Magento Commerce 2.3.1. It supports B2C VAT as well as configurable logging.