Today we are excited to announce the availability of WooCommerce 4.0. The latest release of WooCommerce has been in development since January 2020, but a lot of improvements has been in the works since 2018. WooCommerce core has had 743 commits from 21 contributors, but we should also mention a huge amount of effort from the WC Admin team and the code that now becomes a part of the core with a history of 3500 commits from 45 contributors.

4.0 is a “major” release. This means that the version is not fully backwards compatible with sites running various versions of WooCommerce 3.x. Therefore, we recommend testing the upgrade on a staging site copy before upgrading your live store and creating a backup of your code and database. Please see this guide for more details.

What’s new in 4.0?

4.0 is the first major release of 2020 and we’re excited to include the new version of WooCommerce Admin in this release. WooCommerce Admin is the first step towards a more modern JavaScript-driven experience of WooCommerce core.

WooCommerce Admin

For readers of the WooCommerce Development blog, you have probably seen the initial announcement and later regular releases of the feature plugin. With the plugin being actively used on more than 1 million stores, we now believe the WooCommerce Admin is ready to be included in the WooCommerce core to bring a set of improvements to all store owners:

  1. New dashboard
  2. New and improved reports
  3. Improved notification experience
  4. New store management tools

WooCommerce admin provides much better reporting capabilities than previous generations of reports and allows for filtering, comparisons and overview how the store is doing in terms of sales, revenue, which products are the most popular/highest-grossing, adds capabilities for improved customer management and analytics.

Please note that we’re not removing the old reports at this point. We will deprecate those at a later point and decommission them with enough notice to users and developers.

We’ve also made it very easy to export the data from the reports as csv to enable smooth interoperation with other systems.

Together with the WooCommerce admin, we’re bringing a new Activity panel with improved order management workflow and consistency between the desktop and mobile experience to all the customers.

Due to the JavaScript requirements, this experience will be available to all stores running WordPress 5.3+. Store running older versions of WordPress will have WooCommerce Admin automatically disabled.

Stay tuned for additional blog posts here that will detail how developers can extend the new WooCommerce Admin experience.

Action Scheduler 3.1

One of the underlying technologies that enabled WooCommerce Admin is Action Scheduler—the background job runner already used in WooCommerce core. The 3.1 version that we’re including in WooCommerce 4.0 is a new, more performant version of Action Scheduler which utilizes custom tables to provide a great experience even on stores with large volumes of orders and posts in the database.

Ensuring a stable Action Scheduler in WooCommerce is crucial, and we’re happy to see that more than 10,000 sites are already using it together with the WooCommerce Subscriptions 3 plugin.

If you previously experienced any problems with Action Scheduler, the migration guide for WC Subscriptions 3 might be a useful resource.

New Onboarding Experience

Starting a shop can be a complex and confusing experience, and we believe we can help our new customers get their shop up and running faster and with greater ease. Therefore, 50% of our new customers would be able to try out a new onboarding experience.

Additional Updates

In addition to the new WooCommerce admin, you will find the following enhancements in 4.0:

  • Enhancement to the Order edit screen
  • Latest fixes of WooCommerce Blocks package
  • Updates related to Brexit and VAT
  • Improvements to email handling
  • Optimizations for saving variations and Cash on delivery payment gateway

Beyond these enhancements, the release also contains some tweaks, new hooks, and fixes – all of which you can find out about in the readme.

Upgrading to 4.0

WooCommerce 4.0 is a new major version which means it’s not fully backward compatible with previous WooCommerce versions. However, the breaking change we’re introducing is only on the database level of Action Scheduler and thus the upgrade should work well for most customers. We recommend testing and backing up prior to upgrading and following our upgrade guide.

If you want to learn more about the Action Scheduler upgrade process, we recommend having a look at the upgrade guide for WC Subscriptions plugin (which also includes the new version of the same library).

There are a few post-update database upgrade routines that need to run after updating. On very large databases we recommend running the upgrade routine with the WP CLI command wp wc update instead of through the admin interface.

If you’re a developer and missed the beta and release candidate (RC), the following information may be useful:

Deprecated Functions and Methods

  • countries_using_vat got replaced by WC_Countries::get_vat_countries

Template File Changes in 4.0

The following template files have been updated in this release

FileChanges
cart/shipping-calculator.phpWording of Country updated to Country / Region in shipping calculator
global/quantity-input.phpAdded placeholder attribute for the quantity input
emails/customer-reset-password.phpAdded missing tag for the end of paragraph
emails/email-styles.phpUpdated img CSS
emails/email-header.phpSet table width to 100%
single-product/add-to-cart/grouped.phpAdded placeholder attribute for the quantity input

How 4.0 was tested

We released 4.0 beta.1 on February 10th, 2020, which was followed by the release candidate 1 on February 26th and later by release candidate 2 on March 6th. During this time we:

  • Tested upgrade from WC 3.4, 3.5, 3.6, 3.7, 3.8 and 3.9 to 4.0 as well as clean installations.
  • Tested our own extensions and themes.
  • Analyzed compatibility of all marketplace extensions with WC 4.0.
  • Tested on the most popular hosting providers.
  • Tested using the most popular premium themes.
  • Performed managed upgrades for actual customers on staging sites to pick up on any conflicts or bugs before the public release.
  • Tested and updated WooCommerce.com itself.

Much 💜 to all the contributors

Finally a big thanks to everyone in the community who has contributed via issue reports, fixestranslation, testing, supporting other users or simply spreading the word.

peterfabian claudiosanches rodrigoprimo ObliviousHarmony vedanshujain
peterfabian claudiosanches rodrigoprimo ObliviousHarmony vedanshujain
juliaamosova rrennick jeffstieler denho TimBHowe
juliaamosova rrennick jeffstieler denho TimBHowe
psealock jacoswan rohanvakharia joshuatf mgibbs189
psealock jacoswan rohanvakharia joshuatf mgibbs189
gerdneuman LevinMedia timmyc mikejolley picocodes
gerdneuman LevinMedia timmyc mikejolley picocodes
sultann smachi Lin-Buo-Ren
sultann smachi Lin-Buo-Ren