Skip to content

Release notes Shopware


Release notes Shopware


Besides new features which will be announced later this week, this minor release contains a lot of improvements and changes for developers as well as 69 bug fixes. We could merge pull requests from 18 community developers, thanks for that!

System requirements

  • tested on PHP 8.1 and 8.2
  • tested on MySQL 8.0.33, MariaDB 10.4. 10.5, 10.11 & 11.0


Deprecated SEO URLs for Headless Sales Channels

With this release, we deprecated the SEO URLs for headless sales channels. This will be removed in 6.6. If you need SEO URLs in a headless environment, please use the Storefront Sales Channel type or a custom sales channel type using a custom plugin.


Disabled Doctrine Database Profiler in CLI

When the Symfony Profiler was installed, it collected database queries in the CLI, even in production mode. We disabled it now completely in CLI regardless of the current environment Shopware is running.

Support for Maintenance mode in Store-API

The maintenance configuration of Sales Channels is now respected in headless store-api requests. When the maintenance mode is active, you will get a 503 http error as response.


Media Path refactoring

We refactored the media path handling to persist the media paths instead of recalculating in any request. This allows the media entity to be queried only with the path. Previously, the complete media entity needed to be loaded to generate the path.

POST /api/search/product

    "fields": [

Improvements to logging

As in the previous releases, we continued to improve the logging of Shopware. Hence, we added more logging or down-ranked non-relevant errors to noises to keep the logs clean for important messages.

Deprecated LoggerFactory

We deprecated the LoggerFactory for plugins for 6.6 as this does not consider the project configuration of logging. Our suggested replacement is to use Monolog Channels, which works in any Shopware 6 version. Please also see the PayPal plugin as an example of our implementation:

New low_priority queue

We introduced a new queue, low_priority, in addition to the already existing async queue. This queue can be used by plugins, to queue up messages which are not important in a short manner.

The existing messenger:consume or admin watcher will consume the new queue without configuration changes. With Shopware 6.6, it becomes required to setup an additional messenger:consume or just append the queue additionally to the existing one messenger:consume async,low_priority

Improved plugin:create

The plugin:create command now can generate:

  • console command
  • scheduled task
  • event subscriber
  • storefront controller
  • store-api route

We are working right now also on a dal:migration:create to generate migration files automatically by comparing your entity definition with the current database schema. So stay tuned!

Soft delete of custom entities on App uninstall

Custom Entities created by Apps will now be soft deleted, so that you can preserve the app data on uninstallation.

System update now uses the regular kernel

The commands system:update:prepare and system:update:finish now use the regular kernel while updating Shopware. This fixes a lot of issues when plugins extend root components like Symfony Configuration or created themes.

MySQL 8.2 support

We fixed some internal queries of DAL to be able to support MySQL 8.2.

And many more things

  • Paginated pages in listing are now HTTP cached
  • Improved performance order_line_item migration
  • Removed ManyToManyIdFieldUpdater in LandingPageIndexer
  • Optimized SEO lookup queries

Fixed bugs

  • NEXT-29188 | Wrong error message in Flow Builder (64 votes)
  • NEXT-29496 | Dynamic product groups with properties - Filters not shown (36 votes)
  • NEXT-30650 | Cannot create Rule for customer custom fields (29 votes)
  • NEXT-30866 | SwagCommercial 5.6.0 can't be installed if B2B Suite was installed before (25 votes)
  • NEXT-23795 | Sendmail insert a dot into a url (22 votes)
  • NEXT-31145 | Inheritance issues with new languages wich inherit from another language (19 votes)
  • NEXT-31296 | Rule builder does not take effect when changing payment type (16 votes)
  • NEXT-26311 | import/export of advanced prices with rule names (16 votes)
  • NEXT-28809 | HTML Filter removes important parameters from text snippets in Shopware (14 votes)
  • NEXT-29142 | Order delivery address foreign key missing / wrongly defined (13 votes)
  • NEXT-30680 | Can't select an item picking mode (11 votes)
  • NEXT-30652 | TagEntity does not contain Name or the ID in store-api (6 votes)
  • NEXT-31256 | No order confirmation is sent in combination with an invoice document (5 votes)
  • NEXT-25425 | Sorting of payment methods does not work (5 votes)
  • NEXT-30879 | Sorting of product cross sellings with dynamic product group by price with Elasticsearch (3 votes)
  • NEXT-31486 | SaaS: Dashboard not loading when time zone is not UTC (3 votes)
  • NEXT-30895 | Shopware Commercial 5.6.0 don't work with (2 votes)
  • NEXT-30315 | Properties disappear after the search (1 votes)
  • NEXT-30810 | Backend JS-Error on batch-update product - price (1 votes)
  • NEXT-30878 | issue (1 votes)
  • NEXT-30974 | View guest order in frontend (1 votes)
  • NEXT-31427 | Installation deadlock after trying to create a not valid admin password (1 votes)
  • NEXT-31519 | Cart-Rules do not use very recent product attributes (1 votes)
  • NEXT-31087 | Apparent wrong naming of twig block component_line_item_type_product_order_number (1 votes)
  • NEXT-31275 | Cross Selling Criteria Id's change will be ignored (1 votes)
  • NEXT-31466 | Wishlist Double-Optin route frontend.wishlist.add.after.login misses productId parameter (1 votes)
  • NEXT-29060 | Generating documents very slow once a reasonable number of documents exists (1 votes)
  • NEXT-31086 | [Github] - Skip creation of category links in SeoUrlGenerator (Revert NEXT-10719) (1 votes)
  • NEXT-30394 | Re-installuing commercial plugins results in a bug with returns and number ranges (0 votes)
  • NEXT-30987 | Custom Fields of type "price" can't be edited in Admin (0 votes)
  • NEXT-31303 | remove from cart event (0 votes)
  • NEXT-25584 | [GitHub] feat: change behaviour of getting path name to not generate it on every request (0 votes)
  • NEXT-29751 | Document - at shipping address for countries is not taken the translated name (0 votes)
  • NEXT-30455 | [GitHub] fix: add missing closing div (0 votes)
  • NEXT-30468 | [Github] #3025 - Support active flag and maintenace mode in store api routes.. (0 votes)
  • NEXT-30604 | Avoid creating SEO URLs for headless sales channels (0 votes)
  • NEXT-30765 | [GitHub] Fix: Using designer in Category sends us back to the wrong page (0 votes)
  • NEXT-30809 | Rules with App conditions can't be saved (0 votes)
  • NEXT-30824 | [Github] fix: change argument type to UrlGeneratorInterface in BCStrategy to allow decorations (0 votes)
  • NEXT-30825 | [GitHub] Fix accept all cookies button styling (0 votes)
  • NEXT-30828 | [GitHub] Return error on preview with invalid SEO URL template (0 votes)
  • NEXT-30829 | [GitHub] Use displayed SEO URL template value for validation hints (0 votes)
  • NEXT-30834 | [Github] Pagination http cache (0 votes)
  • NEXT-30838 | [Github] refactor: Remove AFTER statement for order_line_item table (0 votes)
  • NEXT-30848 | [GitHub] feat: change title for wishlist toggle (0 votes)
  • NEXT-30850 | [GitHub] refactor: Deprecate CartEvents (0 votes)
  • NEXT-30852 | [GitHub] Transition state machine exception fix (0 votes)
  • NEXT-30854 | [GitHub] fix(administration): promotion v2 date-picker prop usage so time-pickers are displayed again (0 votes)
  • NEXT-30929 | [Github] Nested query version_id field check (0 votes)
  • NEXT-30930 | [Github] feat: correct class AbstractMediaUrlGenerator to namespace Shopware\Core\Content\Media\Core\Application\ (0 votes)
  • NEXT-30963 | [Github] Fixed typo from "langugage" to "language" (0 votes)
  • NEXT-30984 | [Github] feat: Add local apps folder (0 votes)
  • NEXT-31036 | [Github] NEXT-29904 - Fix Change sorting of availability for best variant calculation (0 votes)
  • NEXT-31046 | Admin dashboard currency factor fix (0 votes)
  • NEXT-31064 | [Github] Fix typo error (0 votes)
  • NEXT-31262 | [Github] NEXT-00000 - Remove internal hint from PartialEntity to communicate the use of public API (0 votes)
  • NEXT-31263 | [Github] NEXT-00000 - Allow elasticsearch to be better drop in for normal search (0 votes)
  • NEXT-31264 | [Github] NEXT-00000 - Add retry loop and deletion limit to scheduled task handler (0 votes)
  • NEXT-31265 | [Github] NEXT-00000 - Trigger console events when running console commands as sub commands (0 votes)
  • NEXT-31266 | [Github] NEXT-00000 - Add post update message to system:update:finish output (0 votes)
  • NEXT-31272 | [Github] Use non arbitrary product search index info (0 votes)
  • NEXT-31347 | [GitHub] BugFix: Issue 3390 - Update data type for AfterLineItemQuantityChangedEvent::getItems() (0 votes)
  • NEXT-31361 | [Github] update content to be more informative (0 votes)
  • NEXT-31368 | [Github] Add administration watch socks config (0 votes)
  • NEXT-31403 | Login in Shopware Account is impossible with SwagCommercial (0 votes)
  • NEXT-31458 | [Github] Fix silencing flow errors inside a transaction (0 votes)
  • NEXT-31475 | [Github] NEXT-00000 - Added new block to account order history (0 votes)
  • NEXT-31496 | [Github] Fix custom icon in templates with restricted variables (0 votes)
  • NEXT-31637 | [Github] Update VariantListingUpdater.php (0 votes)


Thanks to all diligent friends for helping us make Shopware better and better with each pull request!

More resources

Get in touch

Discuss about decisions, bugs you might stumble upon, etc in our community slack. See you there 😉