A safe Shopware e-store migration
The Hagi store migration shows how well-thought-out technology can cut costs and simplify a team’s day-to-day work. The e-Commerce we took over from the previous agency was running on a headless architecture, where every basic function had to be built from scratch. Our job was to simplify the tech stack, move the store to a native Shopware template, clean up neglected SEO, and launch a B2B channel. The result? A stable, easy-to-maintain store that Hagi manages on its own.
-
clientHagi Sp. z o.o.
-
addreshagi.com.pl
-
projecte-Commerce migration
-
industryBeauty
-
technologyShopware
tasks in Jira
people on the Satisfly team
implementation areas
Client
Hagi is a Polish natural cosmetics brand that’s been around since 2015. It creates vegan face and body care products, and its portfolio spans several sub-brands (including Dermosophy, Ahoj Kapitanie, and Hagi Mama) and dedicated lines – for men, mums, and kids.
Hagi manufactures in Poland, has its own R&D facilities, and is a member of the Polish Association of the Cosmetics Industry. Its products have won numerous industry awards (among them the EKOCUDA Beauty Awards and the Vogue Beauty Awards).
Project goal
We took over the Hagi store from another agency, which had migrated it from WooCommerce to Shopware, but built on a headless architecture (Next.js). And that architecture turned out to be the source of most of the problems: instead of using the solutions Shopware offers natively, every front-end feature had to be built from scratch. The whole thing was expensive to maintain, and on top of that, there was a backlog of SEO problems and a messy admin panel.
All of this added up to a clear job for our team: simplify the architecture, move the store to a native Shopware template, and, while we were at it, implement a layout consistent with the brand’s visual identity, stabilize the integrations, and launch a wholesale channel.
What we did
Features that matter:
The existing Hagi store stood on a headless architecture in which every feature had to be built from scratch. There was no way to reach for ready-made plugins or Shopware’s proven mechanisms – everything had to be coded line by line. That’s why the customer account ended at logging in and editing user details, with no address management or order history. A store like that was expensive to maintain and blocked every subsequent change.
So we advised Hagi to move to a native Shopware template, and we picked the one that best fit the brand’s needs. We prepared the look and feel, a style guide, and the store’s graphic designs, then fine-tuned its appearance so that it worked consistently and clearly on both desktop and phone. We also tidied up how subpages are built, so the Hagi team could assemble content themselves from ready-made building blocks, without having to code anything. Finally, we handed the client a test site with a full set of ready sections and documentation, so they’d know how to use them from day one.
The result? Hagi got a consistent layout in line with its brand identity and can manage content on its own, without calling in a developer for every little change. Native Shopware gave the brand a flexible foundation on which new features get built faster and cheaper than in the previous headless architecture – the store stopped being a brake and became a starting point for further growth.
A store isn’t a lonely island. To run smoothly, it has to talk to the warehouse, the accounting system, the newsletter tool, the review-collection system (and that’s the bare minimum). At Hagi, some of these connections were unstable or passing along the wrong data – which meant mistakes in prices, stock levels, and customer communication.
So we tidied up this entire web of connections. The most important part was the heart of the system: the sync between the warehouse-and-sales platform (BASE) and Shopware. We fixed it so that prices, stock levels, orders, and shipment tracking links flowed through without errors, and on top of that, we sorted out the correct handover of units of measure from the Optima accounting system.
We also took care of customer communication: we hooked up the newsletter (Brevo) and restored the transactional emails that previously weren’t reaching recipients. We connected the store to a review system (TrustMate) and Google Merchant Center as well, and finally we removed a small but annoying bug – an element that was blocking order completion when customers chose an InPost parcel locker.
The result? All of Hagi’s systems now work as a single organism – data flows between them automatically, with no manual re-keying and no risk that a customer gets the wrong price or doesn’t receive an order confirmation.
Hagi was already serving small wholesale customers, but in the old-fashioned way – by email and phone. Every order meant manual work: agreeing on prices, issuing an invoice, keeping an eye on the commercial terms. The more of these customers there were, the more of the team’s time vanished into correspondence instead of growing sales. What was needed was a channel where wholesalers could buy on their own terms.
So we built a dedicated B2B path. Wholesale customers land in a separate group with their own discount policy and a view of net prices instead of gross. We also added a new payment method for them – an invoice with a 14-day term, available once the cart passes the 500 PLN net threshold. And we made sure wholesale orders are handled separately in the system – with correct net-price accounting and in line with KSeF requirements.
The result? Wholesale sales, which previously ran on emails and phone calls, moved into the store. Small business customers place orders on their own, on terms tailored to them, and the Hagi team got back the time that manual handling of every single order used to eat up.
We took over the Hagi store with serious SEO debt: test versions of the store were being indexed in Google, redirects that should have channeled traffic to the new address were missing after the domain change, and the files that control how Google’s bots work were misconfigured.
So we started with an SEO audit, and on that basis we drew up a list of things to fix. We implemented structured data so that Google understands the store’s content better, fixed the automatic generation of page titles that had previously been duplicating, improved the heading structure, and checked the store’s loading speed.
The result? The migration went through without a drop in rankings – Hagi held on to its search visibility, and the store no longer loses traffic to technical errors.
Midway through the project, the Hagi store was victim to a mass bot attack that was creating fake accounts in bulk. This didn’t just clutter up the customer database – it also put unnecessary strain on the store and undermined the reliability of the data that marketing depends on.
We reacted fast, adding several layers of protection: a mechanism that tells humans from bots (reCAPTCHA), a limit on the number of registration attempts in a short window, email confirmation when setting up an account, and detection of suspicious activity.
The result? The wave of fake accounts was stopped, and the customer database stays clean – no junk records to skew the data and weigh the store down.
A good store isn’t just stable technology – it’s also the small conveniences that make customers buy more comfortably and come back more willingly. After the migration, we expanded Hagi with a whole range of such features.
We placed the newsletter sign-up in several spots – the footer, the checkout, and a handy pop-up – to make it easier to collect user data. We added a configurable contact-and-competition form, and swapped the product quantity selector from a drop-down list to simpler plus/minus buttons.
For products currently not in stock, a “Out of stock” message now appears, and adding to the cart is blocked. We also translated the promotional tags (e.g. “Buy 3, pay for 2”) and labels like sale, bestseller, and new.
On top of that, we launched a free-gift module, automatic product recommendations (cross-sell and up-sell), and rotating sections on the homepage.
The result? Shopping at Hagi has become simpler and more enjoyable, the brand gained tools to collect contacts and raise cart value, and it manages all of it directly from within the store.
In the old version of the Hagi store, analytics could show order values that diverged from reality – especially with promotions and free gifts.
So we put the measurements in order. We fixed the Google Tag Manager configuration, so that the data being passed along matches what the customer actually pays. We also removed redundant Google Ads code that was distorting the readings.
The result? Analytics in the Hagi store now show consistent numbers – even when promotions and free gifts are in play.
Tangible outcomes
The Hagi project shows that well-chosen technology can, all at once, cut costs, simplify everyday work, and open up new sales opportunities.
-
Migration without losing rankings in Google
The hardest part of any migration is the risk of losing visibility in search. At Hagi, the migration went through without a drop in rankings – the brand held on to the visibility it had built up over the years, and the store shed the technical errors that had been chipping away at it.
-
A self-service wholesale channel
Small wholesale customers, previously handled by email and phone, now buy on their own in the online store – with their own net prices and a deferred-term invoice. The team got its time back, and the brand gained a B2B channel that’s ready to scale.
-
A store that’s simpler and cheaper to maintain
Moving from a headless architecture to native Shopware took away Hagi’s need to build every feature from scratch. The store is now easier to maintain, and each subsequent change and new feature comes together faster – without having to rebuild the entire front end.
-
A stable foundation for the future
Tidied-up integrations, clean analytics data, protection against bots, and KSeF readiness mean the store runs predictably and is set up for further growth – with no backlog left to catch up on.
It was a good choice! I especially appreciate how quickly we got up to speed – that kind of start, without a long run-up, is rare. You took on a project in a tricky state and set it straight – no drama, you just did what needed to be done. I also particularly appreciate the effective communication and the way you stuck to what we’d agreed and to the framework of our collaboration.
Krystian Gogoś, Vice President of Growth @ Hagi