---
title: "Shopware 6 to J2Commerce 6 Migration Adapter"
description: "The Shopware 6 adapter adds Shopware 6.4 as a source in the J2Commerce Migrator. It migrates products, categories, tags, customers, orders and media into Joomla 6 and J2Commerce 6. Use it when you…"
url: "https://docs.j2commerce.com/v6/apps-and-extensions/plugins/shopware6"
markdown_url: "https://docs.j2commerce.com/v6/apps-and-extensions/plugins/shopware6.md"
last_updated: "2026-11-14T11:57:22+00:00"
version: "J2Commerce 6"
breadcrumbs:
  - title: "Home"
    url: "https://docs.j2commerce.com/"
  - title: "J2Commerce 6"
    url: "https://docs.j2commerce.com/v6"
  - title: "Apps and Extensions"
    url: "https://docs.j2commerce.com/v6/apps-and-extensions"
  - title: "Plugins"
    url: "https://docs.j2commerce.com/v6/apps-and-extensions/plugins"
  - title: "Shopware 6 to J2Commerce 6 Migration Adapter"
    url: "https://docs.j2commerce.com/v6/apps-and-extensions/plugins/shopware6"
---

# Shopware 6 to J2Commerce 6 Migration Adapter

The Shopware 6 adapter adds Shopware 6.4 as a source in the J2Commerce Migrator. It migrates products, categories, tags, customers, orders and media into Joomla 6 and J2Commerce 6.

Use it when you move a Shopware 6 store to J2Commerce.

## Requirements

- Joomla 6.0 or later and PHP 8.3 or later.
- J2Commerce 6 (`com_j2commerce`).
- The J2Commerce Migrator component (`com_j2commercemigrator`), installed and enabled. Version 6.1.10 or later is needed.
- The PHP `pdo_mysql` extension.
- `com_content` installed and enabled.
- The System - Language Filter plugin enabled, with Item Associations on.
- A writable `files/com_j2commerce` directory.
- A published Joomla content language for each Shopware source language.

---

## Installation

1. Install and enable the J2Commerce Migrator component.
2. In Joomla, go to **System** -> **Install** -> **Extensions**.
3. Upload the Shopware 6 plugin package.

The plugin is enabled automatically on a new install. A **Shopware 6** card with a **Start Migration** button then appears on the Migrator dashboard.

> **Warning:** Do not uninstall or disable this plugin while the dashboard card shows customers on a legacy password hash. Those customers cannot log in without it.

---

## Settings

Open the plugin from **System** -> **Plugins** and search for Shopware 6.

| Setting | What It Does | Default | Options |
| --- | --- | --- | --- |
| Shop Base URL | Public URL of the Shopware store, for example https://www.example.com, without a trailing slash. Used to build product and category media URLs. It is prefilled from the sales channel domain on the first connection. | Empty | A URL |
| Tier Price Policy | Sets what happens to a tier price whose rule cannot be reduced to one customer group. | Skip | Skip: import only rule-free tiers and report the rest. Import Ignoring Scope: apply every tier broadly. |

> **Info:** Skip is the safe choice for B2B stores. Import Ignoring Scope can show a wholesale price to retail visitors, so use it only with the store owner's approval.

---

## Running the Migration

Open the Migrator, choose **Shopware 6**, and use **Configure Connection** to connect to the Shopware database. Then run the tiles in each lane in order.

### Lookups

- **Probe Source** confirms the connection works.
- **Language Setup Check** and **Install Source Languages** check, download and publish Joomla content languages for each Shopware language.
- **Languages** maps each Shopware language to a Joomla content language.
- **Countries, States & Currency** matches the pre-seeded J2Commerce rows and adds no duplicates.
- **Tax Profiles & Rates**, **Custom Fields** and **Customer Groups** create the tax setup, field definitions and Joomla user groups under Registered.
- **Options & Option Values**, **Manufacturers**, **Shipping Methods**, **Payment Methods**, **Promotions** and **Order Statuses** migrate the remaining lookup data. Payment Methods only validates the mapping and inserts no rows.

### Mapping Screens

Four mapping dialogs list only the values found in your data: **Order Status Mapping**, **Shipping Method Mapping**, **Payment Method Mapping** and **Tier Price Rule Mapping**. Choose a J2Commerce equivalent for each row and click **Save Mapping**.

- Order Status Mapping matches each order, payment and delivery state combination to one J2Commerce status.
- Shipping Method Mapping attaches an existing method or creates one from the Shopware source.
- Tier Price Rule Mapping assigns each rule to a customer group, All Customers or Do Not Import. Run Customer Groups first.

Tiles that depend on a mapping do not run until every row is resolved.

### Catalogue

- **Categories** and **Tag Mirror** migrate the category tree and mirror categories that have products as tags.
- **Products & Variants** migrates products for each language. Variants of a configurator product without child products are generated from its configurator options, and each carries the parent's full stock figure, so a sum across variants reads high.
- **Product Categories & Tags**, **Language Associations**, **Tier Prices**, **Cross-Sells** and **Third-Party Product Content** finish the product data.
- **Fetch Media** downloads images and PDFs, and **Link Product Images** attaches them to products in gallery order.
- **SEO URLs** sets aliases from the live Shopware SEO URLs. **Export Redirect Map** opens a wizard that builds the shop menu, shows old URLs that changed, and adds them to Joomla Redirects.

### Customers and Orders

- **Census Duplicate Emails** checks for duplicate emails before customers are migrated, because Joomla usernames must be unique.
- **Customers** and **Customer Addresses** migrate users and their addresses. Passwords are kept: bcrypt hashes copy directly, and legacy hashes are verified and rehashed at first login.
- **Orders** and its child tiles (billing and shipping info, line items, discounts, taxes, shipping, transactions, history) migrate order data. Historical statuses are written without emailing customers, and transactions never trigger a new capture.

### Reports and Tools

- **Reconciliation Report** runs count and sum checks and produces a data-loss report.
- **Export Newsletter List** downloads recipients as a CSV file. The file holds personal data, so store and delete it securely.
- **Repair Shipping & Default Variant** marks migrated variants as shippable, sets a default variant, and generates missing variants. Run it once after upgrading.
- **Clear ID Map** deletes the Shopware ID mappings. Migrated rows are inserted again as duplicates on the next run.
- **Reset Migrated Items** permanently deletes everything the migration created. Pre-seeded lookup data and the admin user are kept.

---

## Troubleshooting

| Message | What to Do |
| --- | --- |
| This plugin requires the J2Commerce Migrator component. | Install and enable the Migrator component, then install the plugin again. |
| This plugin needs J2Commerce Migrator 6.1.10 or later. | Update the component, then install the plugin again. |
| The Shopware source default language has no published Joomla content language on this site. | Run Language Setup Check and Install Source Languages. |
| The order status mapping is not complete. | Open the mapping dialog and resolve every unresolved row. The shipping, payment and tier price rule mappings work the same way. |
| The Shopware source database connection is not active. | Reopen the Connection screen, verify the source connection, and run the tile again. |
| No currency could be resolved in the Shopware source. | Check that the source currency table is readable and has the store currency. |
| Redirects will be saved, but will not take effect until the plugin is enabled. | Enable the Joomla redirect plugin. |

---

## Uninstalling

Uninstall the plugin from **System** -> **Manage** -> **Extensions** only after the dashboard card shows no customers on a legacy hash.
