

Shopware 5 to Shopware 6
Migrating from Shopware 5 to Shopware 6 is a strategic upgrade within the Shopware ecosystem—from Symfony 2-based architecture to modern Symfony 5+, Store API, and headless capabilities. In 2025, with Shopware 5 approaching end-of-life and Shopware 6 offering native Store API, flexible product variants, and modern Administration, the case for upgrade has never been stronger.
This comprehensive technical blueprint is designed for store owners, developers, and decision-makers. We will bypass the marketing fluff and dissect the database structures, the exact field mappings, the cost analysis, and the step-by-step execution required to move your data from Shopware 5 to Shopware 6 without losing a single byte.
1. The Strategic Pivot: Why Upgrade to Shopware 6?
Shopware 5 is a solid platform, but Shopware 6 offers modern architecture, native headless capabilities, and future-proof features. Upgrading opens specific opportunities:
💰 Native Store API
The Shopware 5 Pain: REST API requires plugins. No native headless support. Custom development for modern frontends.
The Shopware 6 Gain: Native Store API. Built-in headless capabilities. PWA-ready. Vue Storefront integration.
🚀 Modern Symfony Architecture
The Shopware 5 Pain: Symfony 2-based. Legacy structure. Limited plugin ecosystem for modern needs.
The Shopware 6 Gain: Symfony 5+. Clean architecture. Composer-based plugins. Rule Builder. Flow Builder.
🛠 Flexible Product Variants
The Shopware 5 Pain: Configurator structure can be rigid. Limited variant flexibility.
The Shopware 6 Gain: Flexible product variants with option groups. Streamlined product management. Better variant handling.
⚡ Administration & UX
The Shopware 5 Pain: Dated admin interface. Vue.js backend but limited compared to SW6.
The Shopware 6 Gain: Modern Administration. Rule Builder. Flow Builder. Intuitive product and order management.
2. The Pre-Migration Architecture Audit
Before touching any data, you must map the terrain. Shopware 5 and Shopware 6 use different data structures.
A. Understanding the Platform Disconnect
Shopware 5 uses MySQL with s_ prefix tables and Symfony 2 entities. Shopware 6 uses Symfony entity structure with Store API.
- Shopware 5 Version: Are you on Shopware 5.6 or 5.7? Check your database schema.
- Database Access: Shopware 5 stores data in MySQL with s_ prefix. Shopware 6 uses different entity structure.
- Shopware 6 Setup: Ensure Shopware 6 is installed on PHP hosting (PHP 8.1+, MySQL 8+). Use Migration Assistant or automated tools.
- Product Structure: Shopware 5 s_articles with s_article_configurator maps to Shopware 6 products with option groups.
- Images: Shopware 5 media in s_media. Need to be migrated to Shopware 6 media system.
3. Exact Data Mapping: The Blueprint
This is the most critical section for developers. This is how Shopware 5 entities translate to Shopware 6.
🛍 Product Data Mapping
| Shopware 5 Field (Source) | Shopware 6 Field (Target) | Notes & Logic |
|---|---|---|
s_articles.id |
product.id |
Shopware 6 generates new IDs. Use article number for mapping. |
s_articles_detail.name |
product_translation.name |
Direct string transfer. |
s_articles_detail.ordernumber |
product.number |
Direct mapping. |
s_articles_prices.price |
product_price.price |
Direct price transfer. |
s_articles.description_long |
product_translation.description |
HTML content. Images need re-uploading to Shopware 6 media system. |
s_articles_categories |
product_category |
Shopware 5 categories map to Shopware 6 categories. |
s_article_configurator |
property_group_option, product_configurator_setting |
Shopware 5 configurator maps to Shopware 6 product variants. |
👥 Customer Data Mapping
| Shopware 5 Field | Shopware 6 Field | Critical Logic |
|---|---|---|
s_user.email |
customer.email |
Unique identifier. |
s_user.password |
customer.password (hashed) |
Password migration supported. Both use bcrypt. Migration tool handles conversion. |
s_user_addresses |
customer_address |
Shopware 5 addresses map to Shopware 6 customer addresses. |
📦 Order Data Mapping
| Shopware 5 Field | Shopware 6 Field | Mapping Logic |
|---|---|---|
s_order.id |
order.order_number |
Preserve Shopware 5 order number in Shopware 6 order_number field. |
s_order.status |
order_state_machine_state |
Map Shopware 5 order statuses to Shopware 6 order states. |
s_order.invoice_amount |
order.price.totalPrice |
Direct mapping with currency conversion if needed. |
4. The Toolkit: Selecting Your Vehicle
You have three vectors of attack for this upgrade. Choose based on budget and technical capability.
Option A: Shopware Migration Assistant (Recommended)
Tools: Official Shopware Migration Assistant, Shopware Migration Hub, LitExtension
Official or specialized tools that connect Shopware 5 database to Shopware 6.
- ✅ Pros: Handles structure difference, preserves relationships, formats data for Shopware 6 automatically.
- ❌ Cons: Cost may scale with data. Requires Shopware 6 installation.
Option B: CSV Import
Tools: Shopware 5 Export + Shopware 6 Admin Import
Export from Shopware 5, format for Shopware 6, and import manually.
- ✅ Pros: Lower cost, direct control.
- ❌ Cons: Manual work required, may lose some data relationships. Limited to products and categories.
Option C: Custom Development
Tools: Shopware 5 DB + Shopware 6 Store API
Build a custom migration script using Shopware 5 database and Shopware 6 API.
- ✅ Pros: Complete control, reusable.
- ❌ Cons: Expensive ($2,500+), time-consuming. Must handle both platform structures.
5. Execution Protocol: Step-by-Step
We will proceed using the Shopware Migration Assistant or automated tool as it is the industry standard for minimizing downtime.
Phase 1: Environment Preparation
1.1. Prepare Target (Shopware 6):
Install Shopware 6 on PHP hosting (PHP 8.1+, MySQL 8+). Complete Shopware 6 installation. Do not point your domain there yet. Use subdomain for testing.
Tip: Use maintenance mode to prevent public access during setup.
1.2. Prepare Source (Shopware 5):
Ensure database access. Keep your Shopware 5 store live during migration.
Phase 2: The Connection Setup
2.1. Shopware 6 Access:
Migration tool connects to fresh Shopware 6 installation.
2.2. Shopware 5 Access:
Provide database credentials. Migration tool connects to Shopware 5 data source.
Phase 3: Migration Execution
Select what to move. Be careful with these specific settings:
- Create 301 Redirects: Check this box if using custom domain. It creates redirects from Shopware 5 URLs to Shopware 6 URLs. Without this, your SEO dies.
- Migrate Product Configurator: Shopware 6 supports flexible variants. Shopware 5 configurator maps to Shopware 6 product variants automatically.
- Migrate Images: Images are downloaded from Shopware 5 media and uploaded to Shopware 6's media system automatically.
- Password Migration: Supported. Both use bcrypt. Customer passwords migrate directly.
Phase 4: The Full Migration
Launch the process. The migration tool handles Shopware 5 data extraction and Shopware 6 import automatically.
Time Estimation: 5,000 products + 10,000 orders usually takes 2-4 hours. Same platform family can make migration relatively smooth.
Phase 5: Post-Migration Cleanup
5.1. Customer Communication:
Notify customers about the upgrade. With password migration support, customers can log in immediately.
5.2. Verify Products:
Check all products migrated correctly. Verify images, prices, and product configurator.
5.3. Theme & Plugins:
Shopware 5 themes and plugins cannot be migrated. Choose Shopware 6 theme and install equivalent plugins.
6. Financial Breakdown: Cost of Upgrade (2025)
What does it actually cost? Here is a realistic breakdown for a medium-sized store (2,000 Products, 10,000 Orders, 5,000 Customers).
Custom Script
Developer Time
Automated Tool
Average Cost
Agency Service
Starting Cost
7. Troubleshooting & SEO Preservation
Common Challenges
- Configurator Mapping: Shopware 6 supports flexible product variants. Shopware 5 configurator maps to Shopware 6 product variants automatically.
- Database Structure: Shopware 5 s_ prefix tables differ from Shopware 6 entity structure. Migration tools handle translation.
- Image Migration: Shopware 5 media needs to be re-uploaded to Shopware 6's media system.
- Password Migration: Supported. Both use bcrypt—passwords migrate directly.
- Plugins: Shopware 5 plugins are incompatible. Find Shopware 6 equivalents in the Shopware Store.
The 301 Redirect Strategy
Shopware 5 URLs differ from Shopware 6 URLs. Automated migration tools create redirects, but verify in Shopware 6 Administration or use SEO plugins if using custom domain.
Ready for Shopware 6 & Modern Architecture?
Migrating from Shopware 5 to Shopware 6 provides native Store API, headless capabilities, flexible product variants, and modern Administration. Same platform family makes migration feasible, and you'll gain a future-proof platform with Symfony 5+ architecture.