Extending Shopware 6 and Magento 2 functionalities differences. Developer point of view

O

f course, it is a little bit unfair to compare functionalities of a brand-new platform that just came out of early access to a fully developed e-commerce platform that was released almost five years ago. So what we want to write about is the differences in developing these platforms.

shopware

When we want to create a plugin to either Shopware or Magento, we usually start by designing the database architecture and entities first. In the case of the recently released Magento version 2.3.X, we can finally use XML schema files. During the execution of the database upgrade command, Magento will interpret and convert the XML to database queries for creating and altering tables. Thus, developers don't need to write SQL queries themselves. However, it is worth mentioning that previous versions below 2.3.X required developers to write database queries on their own in the install method in a PHP file.Shopware uses standard Symfony migration files, which are also PHP files containing MySQL queries. Still, you can generate these files via a console command, which makes this a lot easier. It also lowers the chance of typos in the queries. Furthermore, what we like very much about creating entities in Shopware is how developer-friendly the DAL (Data Abstraction Layer) is, compared to Magento in this area. It is way more comfortable and faster to create entity associations in Shopware than it is in Magento. Of course, the whole process could be even quicker if there was a command for Shopware's Data Abstraction Layer similar to Doctrine ORM's "entity:make".

But we are sure sooner or later that command will be created either by the Shopware Team or the Shopware community. In this area, Magento 2 is more complicated, and many more classes have to be written by developers. This increases the chance of making mistakes. However, it is a well-known fact that Magento 2 developers usually generate their modules by using online tools or implementing custom solutions to save some time.

shopware vs magento

Another thing worth mentioning is the way Shopware 6 and Magento handle their entity IDs in the Database. Magento uses an old-fashioned autoincrement with integer IDs. Shopware, on the other hand, recommends using UUIDs, which provide a lot of advantages such as protecting data growth rate or allowing importing and export data from other systems without the risk of overlapped IDs.

Creating simple modules (or plugins, in the context of Shopware) is easily doable in Magento and Shopware. But what happens if one wants to create a complex module with a lot of functionality, using multiple classes and with code that is reusable in the future? The most straightforward idea is to divide the module into smaller, separate modules with fewer responsibilities and customize only some parts, leaving others unchanged. In this way, we have to take care of smaller modules being dependent on each other. Magento 2 handles this pretty well with sequencing module installations. That means that our new module will be installed after all modules it requires, by creating something like a queue. Unfortunately, in Shopware, it is not possible to do dependent plugin installations, or we could not figure it out yet. Plugins composer-requirable, but if we try to install plugins that use classes from another plugin that has not yet been installed as well, then the installation fails.

It is hard and time-consuming to extend any existing code without documentation and StackOverflow-like communities. In this area, Magento 2 is unarguably better. It is hard to think of something that has not been already mentioned somewhere on the first google result page, and it doesn't matter if it is a problem or customization. The Shopware 6 documentation is easy to understand, contains examples, and covers basics for writing simple plugins, but advanced platform changes require digging deep in the vendor code. We also had some difficulties finding suggestions or solutions using a search engine; however, it is understandable for such a new platform to lack a broad community.

Summary

For a person who used to develop Magento 2 functionalities for a couple of years and recently started to create Shopware 6 plugins, I find Shopware 6 to be easier to learn, and it is more fun developing for it. Magento 2, on the other hand, is more complex and requires quite a lot of experience and patience to master. Surprisingly, creating modules that expand vendor functionality or debugging existing code of  Magento 2 is more satisfying, in my opinion. For other developers, not necessarily. It all depends on your preferences.

Author

Piotr Kozioł - Magento & Shopware Certified Developer at Strix with a wide range of experience in software development. As a leading architect and programmer, he has been working for many years on large e-commerce projects, particularly interested in the subject of performance.

Similar posts

see all
E-commerce
31.3.2025

Boosting Shopware 6 performance with Zstd Compression and Hypernode

When it comes to eCommerce, every millisecond counts. Faster page loads mean better user experience, improved SEO rankings, and ultimately, more conversions. That’s why we teamed up with Hypernode to enable and test Zstandard (zstd) compression on Shopware 6 webshops — and the performance gains are remarkable.
News
13.3.2025

E-commerce agency Sition joins Strix Group

Strix Group, a European digital commerce agency, acquired the Dutch e-commerce agency Sition. Sition is a well known specialized e-commerce agency in the Netherlands working with brands like Fleurop, Intersport, Ten Cate and Janssen Fritsen. Sition is a Shopware Gold partner and Shopify Plus partner.
News
4.3.2025

Voordeelgordijnen chooses Strix for a future-proof e-commerce solution on Shopify Plus

Voordeelgordijnen, the Dutch specialist in curtains, pleated curtains, foldable curtains, wooden blinds, and roller blinds for over 40 years, is taking a significant step in its digital growth strategy. The company has selected Strix as its digital partner to migrate its current custom-built platform to Shopify Plus.
News
20.2.2025

Chocolatemakers chooses Strix for the development of their new Shopify platform

Chocolatemakers, the sustainable chocolatier known for its delicious organic and emission-free chocolate, has selected Strix as its partner for the development of a new Shopify platform.
News
13.2.2025

Strix attracts DELTA Equity Partners to accelerate its mission to build the leading European digital commerce agency

Strix Group, a European digital commerce agency, announces a strategic partnership with DELTA Equity Partners. DELTA Equity Partners, a Dutch private equity firm specializing in buy & build strategies, will support Strix in its ambition to become the leading European digital commerce agency.