System migration, back office & scanner app · 2026
Kulmine
Kulmine has made washable cloth pads and menstrual products in Osnabrück since 1993. Their Shopware 5 shop, its Pickware warehouse and a fleet of sixty-six plugins had reached the end of the line, while the design was already up to date. So this was a system migration and development project, not a redesign: we moved the whole operation to Shopware 6 with a headless storefront, designed the back office and the scanner together with Amitab Sood, who is responsible for systems at Kulmine, and tuned the front end for modern conversion, search engines and local search.
- Client
- Kulmine e.K., Osnabrück
- Our role
- System architecture, migration, backend and scanner development, front-end optimisation
- Year
- 2026
- Live
- kulmine.de ↗


How it was realised
The project came to us through our label colleague Ankur Sood, whose mother Petra Sood runs Kulmine together with his brother Amitab. The brief was continuity: the same shop the customers know, on technology that will carry it for the next decade. The business case wrote itself: what Kulmine saved on plugin licences financed the migration.
The storefront is Nuxt on Shopware Frontends: shop, magazine with its Menszyklopädie, store finder and the long-form product guides, all on one codebase, server-rendered and fast on a phone. We kept the existing design and improved what sits underneath it: structured data, product feeds, a store finder with real geo data, faster pages and clearer paths to the cart.
Behind it, Shopware 6.7 carries the business logic in a plugin of its own: set articles that are picked as their parts, the Kulmine family address, DHL labels through Pickware, PayPal, and a bank reconciliation over FinTS that marks invoices paid as the money arrives. The DATEV export goes to the accountant without a second system.
The old warehouse scanner was a vendor app that would not survive the migration. We read its protocol out of the old shop's request log, designed the replacement with Amitab Sood at the packing table and built Kulmine Scanner, a native app for the iPhone: picking, packing, labels, goods receipt and stock counts, synced through the Admin API and tolerant of a warehouse Wi-Fi that comes and goes.
The migration itself was rehearsed, not improvised: a full import a week ahead, three dress rehearsals, then the switch-over while the old shop kept selling until the last hour. Orders and customers from that week were caught up by a delta import; the plan, the decisions and the hours were written down and shared with Kulmine throughout.
What it solved
- Sixty-six legacy plugins mapped one by one to Shopware 6 core features or to our own code, none of them silently dropped; the licence fees they no longer cost paid for the migration.
- Pick, pack and ship without the vendor scanner: a replacement specified from the old shop's request log and built as a native app.
- Bookkeeping inside the shop: numbered documents, bank reconciliation and the DATEV export, so nothing is typed twice.
- A front end that keeps its design and gains conversion, search-engine and geo optimisation on the way.
- Consent done properly: nothing loads before a decision, the decision is logged, and the shop works with everything declined.
The warehouse app
Kulmine Scanner: picking, packing and stock, on an iPhone.
Not a page of the shop but a native iOS app of its own, built for the packing table. It runs on an iPhone 14 in the warehouse, scans the barcodes, talks to the shop over the Admin API and keeps working when the Wi-Fi does not. Every name and address in these screens is made up.






Design
Up close.
Typefaces, palette and three details.



Typefaces
Romie
Headlines, a warm serif
Stratos
Text, navigation and prices
Palette
- #281e4b
- #534b6f
- #ec6623
- #bebbc9
- #fdf9f5
Screens
In use.








Built with
Shopware 6.7 · Nuxt · Vue 3 · Shopware Frontends · TypeScript · UnoCSS · PHP 8 / Symfony plugin · MySQL · Swift & SwiftUI · Pickware DHL · PayPal · FinTS · DATEV