50+ Entwickler

Shopware Silver & Erweiterung Partner

80+ Shopware Advanced-Zertifikate

200+ E-commerce projecte

Wie Sie Ihre historischen Bestelldaten vorbereiten



1. Einführung

Im heutigen schnelllebigen E-Commerce-Umfeld sind Daten mehr als bloße Informationen – sie bilden die Grundlage für Business Intelligence, personalisierte Nutzererlebnisse, Kundenservice, Steuerkonformität und operative Kontinuität. Wenn ein Unternehmen von einer E-Commerce-Plattform auf eine andere wechselt – sei es von Shopware 5 zu Shopware 6, Magento zu Shopware, WooCommerce zu einer individuellen Lösung oder von einem alten ERP-System – wird die Vorbereitung der historischen Bestelldaten zu einem entscheidenden Schritt.

Historische Bestellungen enthalten eine Fülle an transaktionalen Einblicken: Wer hat was wann gekauft, zu welchem Preis, aus welcher Region, unter welcher Steuerkategorie und mit welchen Rabatten oder Aktionen. Diese Daten sind eng verknüpft mit Kundenstammdaten, Lagerverwaltung, Steuerberichten, Rückerstattungen, Versanddokumentationen und Leistungsanalysen. Der Verlust oder die falsche Darstellung dieser Informationen während der Migration kann rechtliche Probleme, unzufriedene Kunden, fehlerhafte Reportings oder sogar Buchhaltungsfehler verursachen.

Einfach gesagt: Bestellhistorie ist nicht nur „alte Daten“ – sie ist ein essenzieller Teil der DNA Ihres Unternehmens.

Leider sind historische Daten oft unordentlich, inkonsistent und verteilt auf verschiedene Quellen wie alte Datenbanken, CSV-Exporte oder ERP-Schnittstellen. Die Vorbereitung dieser Daten für die Migration erfordert sorgfältige Planung, strukturierte Bereinigung, Zuordnung zum neuen Plattform-Schema und Validierung – ganz zu schweigen von Datenschutzkonformität und möglicher Umstrukturierung, um das Shopware-6-Bestellmodell mit mehreren Entitäten abzubilden.

Dieser Leitfaden führt Sie strukturiert und praxisnah durch diesen Prozess. Egal, ob Sie die Migration intern durchführen oder mit einer externen Agentur arbeiten – diese Schritte sorgen dafür, dass Sie nicht nur Daten verschieben, sondern nutzbare, vertrauenswürdige und regelkonforme Datensätze migrieren.

Am Ende dieses Leitfadens wissen Sie:

  • Wie Sie definieren, welche historischen Bestellungen einbezogen werden sollen
  • Wie Sie Daten für Genauigkeit und Geschäftswert bereinigen und anreichern
  • Wie Sie Felder zwischen den Systemen korrekt zuordnen
  • Wie Sie Bestellungen für das multi-entity Modell von Shopware 6 strukturieren
  • Wie Sie sicher testen und importieren, ohne Integrität oder Compliance zu gefährden

Außerdem behandeln wir häufige Fehler, Tipps zum Umgang mit Kundenbeziehungen, Rückerstattungen oder Gastbestellungen sowie Tools und Skripte, die Teile des Workflows automatisieren können.

Diese Dokumentation geht davon aus, dass technische Ressourcen vorhanden sind – Entwickler, Datenbankadministratoren oder Migrationspartner – enthält aber auch kontextuelle Hinweise für Projektmanager, E-Commerce-Verantwortliche und Daten-Governance-Rollen, um den Prozess nachvollziehen zu können.

Beginnen wir damit zu verstehen, warum historische Bestellungen sowohl operativ als auch strategisch wichtig sind.

2. Warum historische Bestellungen wichtig sind

Bei der Planung einer Migration oder eines Plattformwechsels denken viele Unternehmen darüber nach, alte Bestellungen aus Zeit- oder Vereinfachungsgründen nicht zu übernehmen. Das kann jedoch erhebliche Lücken in Betrieb, Kundenservice und langfristiger Geschäftskontinuität verursachen. Historische Bestellungen sind nicht nur ein Protokoll vergangener Aktivitäten – sie bilden die Grundlage für finanzielle, rechtliche, analytische und kundenorientierte Prozesse.

Hier sind die wichtigsten Gründe, warum historische Bestellungen erhalten und korrekt importiert werden müssen:

1. Steuer-, Rechts- und Prüfungscompliance

Regierungen und Steuerbehörden verlangen in den meisten Regionen, dass Transaktionsdaten mehrere Jahre aufbewahrt werden (typischerweise 5–10 Jahre, je nach Rechtsprechung). Diese Daten können geprüft werden bei:

  • Umsatzsteuer-/Mehrwertsteuerprüfungen
  • Einkommensteuerprüfungen
  • Regulatorischen Compliance-Inspektionen

Das Fehlen ordnungsgemäßer und zeitnaher Aufzeichnungen kann zu Strafen oder rechtlichen Problemen führen. PDFs oder Tabellenexporte allein genügen oft nicht; integrierte, abfragbare Daten sind für automatisierte Prüfungen erforderlich.

2. Kontinuität im Kundenservice

Support- und Verkaufsteams benötigen schnellen Zugriff auf Kundenhistorien bei:

  • Rückerstattungsanfragen
  • Garantieansprüchen
  • Fehlenden oder beschädigten Artikeln
  • Abonnements oder Nachbestellungen

Ohne historische Bestellungen im neuen System müssen Mitarbeiter zwischen Systemen wechseln oder IT um Zugriff auf Altdaten bitten – das erschwert den Service für Mitarbeiter und Kunden.
Stellen Sie sich vor, Sie müssten einem treuen Kunden sagen: „Leider haben wir keinen Zugriff mehr auf Ihre früheren Bestellungen.“ Das schadet dem Markenvertrauen vermeidbar.

3. Kundeneinblicke und Personalisierung

Historische Bestellungen sind die Basis moderner Analysen, insbesondere um zu verstehen:

  • Wie häufig Kunden wiederkehren
  • Durchschnittlicher Bestellwert (AOV)
  • Customer Lifetime Value (CLTV)
  • Produktpräferenzen nach demografischen Merkmalen

Fehlen historische Bestellungen, entstehen Lücken bei Segmentierung und Personalisierung in Tools wie Google Analytics, Metabase oder BI-Dashboards. Das beeinträchtigt Programme für Kundenbindung, smarte Empfehlungen und Marketing-Automation.

4. Verfolgung von Treueprogrammen

Bieten Sie Treuepunkte, Rabatte oder exklusive Stufen basierend auf früheren Bestellungen an, ist die Übernahme historischer Käufe unerlässlich. Sie müssen:

  • Kundenstufen neu berechnen (z. B. Silber, Gold, VIP)
  • Punkte und Anspruch auf Vorteile wiederherstellen
  • Sicherstellen, dass Bonus-Schwellenwerte weiterhin gelten

Fehlende Daten können verärgerte Stammkunden zur Folge haben und den Wert Ihres Programms mindern.

5. Verkaufsanalysen auf Produktebene

Um zu verstehen, welche Produkte über die Zeit gut laufen, benötigen Sie historische Verkaufsdaten. Diese unterstützen:

  • Lagerbestandsprognosen
  • Trendanalyse
  • Retouren- und Garantieanalysen
  • Erfolgsmessung von Marketingkampagnen

Außerdem sind Verkaufsdaten oft an SKU-Leistungsbewertungen oder Lieferantenverträge gekoppelt – der Verlust dieser Historie kann zukünftige Verhandlungen und Nachbestellungen erschweren.

6. ERP-, CRM- und Drittanbieter-Integrationen

Historische Bestelldaten fließen häufig in folgende Systeme:

  • ERP-Systeme für Fulfillment, Logistik und Finanzen
  • CRM-Tools wie Salesforce oder HubSpot für Kundenbindung
  • Buchhaltungssysteme für Abgleich und Audit

Ohne Übernahme der Historie können diese Systeme ausfallen, inkonsistent werden oder unvollständige Daten zeigen – mit zeitaufwendigen Korrekturen oder Teilsynchronisationen als Folge.

Was passiert, wenn Sie historische Bestellungen nicht migrieren?

  • Kein vollständiger Überblick über Kundenverhalten
  • Schlechterer Kundensupport
  • Compliance-Risiken (Steuern, Prüfungen)
  • Fehlerhafte Berichte und Buchhaltungsabgleiche
  • Unfähigkeit, Treueprogramme korrekt fortzuführen
  • Datenfragmentierung zwischen Altsystemen und neuem System

3. Definition des Datenumfangs

Bevor technische Arbeiten beginnen – wie Datenexport, Skripterstellung oder Dateiformatierung – müssen Sie den Umfang der historischen Bestellungen, die Sie migrieren möchten, klar definieren. Diese Phase ist entscheidend, um die Datenqualität zu erhalten, Fehler zu minimieren und unnötigen Aufwand durch den Import irrelevanter oder inkonsistenter Datensätze zu vermeiden.

Nicht alle historischen Daten sind gleich wertvoll. Jede einzelne Transaktion der letzten 10 Jahre zu migrieren klingt zwar gründlich, führt aber oft zu aufgeblähten Datenbanken, längeren Importzeiten und komplexeren Folgeprozessen. Andererseits kann eine zu geringe Migration zum Verlust von Geschäftskontext, defekten Analysen oder Compliance-Lücken führen.

Wichtige Dimensionen zur Definition des Umfangs

Folgende Filter sollten Sie beim Vorbereiten des Datensatzes beachten:

Zeitraum

Wie weit soll die Historie zurückreichen?

  • Letzte 6 Monate?
  • 1 Jahr?
  • 3 Jahre?
  • Alle verfügbaren Daten?

Best Practice: Mindestens die letzten 2–3 Jahre importieren, um aktive Kundenbeziehungen und grundlegende Analysen abzudecken. Ältere Daten können archiviert oder im Nur-Lese-Modus behalten werden.

Zu beachten:

  • Gesetzliche Aufbewahrungsfristen (insbesondere in der EU)
  • Datenmenge versus Systemleistung
  • Relevanz und Aktualität der Kunden

Bestellarten

Welche Bestellungen sollen einbezogen werden?

  • Nur abgeschlossene Bestellungen?
  • Stornierte oder fehlgeschlagene Transaktionen?
  • Rückerstattete Bestellungen?
  • Verlassene Warenkörbe oder Vorbestellungen?

Tipp: Konzentrieren Sie sich auf Bestellungen mit gültigen Zahlungs- und Lieferdaten. Stornierte oder fehlgeschlagene Bestellungen sollten archiviert werden, sofern sie nicht für Analysen oder Betrugserkennung relevant sind.

Kundentypen

  • Sollen auch Gastbestellungen übernommen werden?
  • Sind nur registrierte Kunden relevant?
  • Würden anonyme Bestellungen Berichte verfälschen?

Shopware 6 verlangt für jede Bestellung einen gültigen order_customer -Eintrag. Wenn Ihr altes System Gast- und registrierte Kunden mischt, müssen Sie diese Datenstruktur vor dem Import vereinheitlichen.

Empfehlung: Beide Typen migrieren, aber in Kundengruppen oder mit Metadaten unterscheiden.

Geografische Filter

  • Nur inländische Bestellungen oder auch internationale?
  • Nur B2B oder auch B2C?
  • Müssen mehrsprachige oder Mehrwährungs-Bestellungen berücksichtigt werden?

Regionale Unterschiede bei Steuern, Versand und Zahlungsmethoden erfordern oft Segmentierung, um die Transformationsskripte zu vereinfachen.

Beispiel: Wenn Sie Ihren Shopware 6-Shop zunächst nur in Deutschland starten, können Sie ältere Bestellungen aus den USA oder Großbritannien ausklammern.

Strategische Segmentierungstipps

  • Große Datensätze nach Jahr oder Vertriebskanal aufteilen, um Importfehler zu reduzieren.
  • Migrierte Bestellungen mit Metadaten wie source_system , imported_at oder import_batch_id kennzeichnen für spätere Nachverfolgung.
  • Dokumentieren Sie alle Entscheidungen zum Umfang, angewandte Filter und getroffene Annahmen.

Diese strukturierte Herangehensweise erleichtert Rücksetzungen, Fehlersuche und die Isolierung problematischer Datensätze bei Tests.

3. Definition des Datenumfangs

Bevor technische Arbeiten beginnen – wie Datenexport, Skripterstellung oder Dateiformatierung – müssen Sie den Umfang der historischen Bestellungen, die Sie migrieren möchten, klar definieren. Diese Phase ist entscheidend, um die Datenqualität zu erhalten, Fehler zu minimieren und unnötigen Aufwand durch den Import irrelevanter oder inkonsistenter Datensätze zu vermeiden.

Nicht alle historischen Daten sind gleich wertvoll. Jede einzelne Transaktion der letzten 10 Jahre zu migrieren klingt zwar gründlich, führt aber oft zu aufgeblähten Datenbanken, längeren Importzeiten und komplexeren Folgeprozessen. Andererseits kann eine zu geringe Migration zum Verlust von Geschäftskontext, defekten Analysen oder Compliance-Lücken führen.

Wichtige Dimensionen zur Definition des Umfangs

Folgende Filter sollten Sie beim Vorbereiten des Datensatzes beachten:

Dimension Fragen / Optionen Anmerkungen / Tipps
Zeitraum Letzte 6 Monate
1 Jahr
3 Jahre
Alle verfügbaren Daten
Mindestens 2–3 Jahre empfohlen.
Ältere Daten archivieren oder als Nur-Lese behalten.
Beachten Sie gesetzliche Aufbewahrungsfristen.
Abwägung zwischen Datenmenge und Systemleistung.
Bestellarten Abgeschlossene Bestellungen
Stornierte oder fehlgeschlagene Transaktionen
Rückerstattete Bestellungen
Verlassene Warenkörbe oder Vorbestellungen
Fokus auf gültige Zahlungs- und Lieferdaten.
Archivierung stornierter Bestellungen, außer für Analyse relevant.
Kundentypen Gastbestellungen
Registrierte Kunden
Mögliche Verfälschung durch anonyme Bestellungen
Shopware 6 benötigt gültigen order_customer -Eintrag.
Einheitliche Datenstruktur vor Import erforderlich.
Empfehlung: Beide Typen migrieren, aber unterscheiden.
Geografische Filter Inländische Bestellungen
Internationale Bestellungen
B2B oder B2C
Mehrsprachige / Mehrwährungs-Bestellungen
Steuer-, Versand- und Zahlungsunterschiede beachten.
Segmentierung vereinfacht Skripte.
Beispiel: Fokus auf Deutschland zu Beginn.

Strategische Segmentierungstipps

  • Große Datensätze nach Jahr oder Vertriebskanal aufteilen, um Importfehler zu reduzieren.
  • Migrierte Bestellungen mit Metadaten wie source_system , imported_at oder import_batch_id kennzeichnen für spätere Nachverfolgung.
  • Dokumentieren Sie alle Entscheidungen zum Umfang, angewandte Filter und getroffene Annahmen.

Diese strukturierte Herangehensweise erleichtert Rücksetzungen, Fehlersuche und die Isolierung problematischer Datensätze bei Tests.

4. Export historischer Bestelldaten

  • Nachdem Sie den Umfang Ihrer Migration definiert haben, ist der nächste entscheidende Schritt, die historischen Bestelldaten aus Ihrem aktuellen System zu exportieren. Die Qualität und Vollständigkeit dieses Exports beeinflusst direkt, wie gut Sie die Daten transformieren und in Ihre neue Shopware-6-Umgebung importieren können.
  • Der Exportprozess – sowie die verfügbaren Tools – variieren je nach Quellplattform. Dieser Abschnitt beschreibt, wie Sie Bestelldaten korrekt extrahieren, welche Felder und Tabellen essentiell sind und wie Sie häufige Fehler in dieser Phase vermeiden.

Plattform-spezifische Exportstrategien

Shopware 5

  • Option 1: Backend-Export (Advanced Exports Plugin)
    Gehen Sie ins Admin-Panel und exportieren Sie Bestellungen mit vordefinierten Vorlagen (CSV/XML). Achten Sie darauf, auch verwandte Daten zu exportieren (Bestelldetails, Kunde, Lieferung).
  • Option 2: Direkte MySQL-Abfragen
    Für mehr Kontrolle führen Sie SQL-Abfragen direkt auf den Tabellen s_order , s_order_details , s_user und s_order_documents aus.
    Beispiel-Abfrage:
    SELECT o.id, o.ordernumber, o.invoice_amount, u.email, d.articleID, d.quantity 
    FROM s_order o 
    JOIN s_order_details d ON o.id = d.orderID 
    JOIN s_user u ON o.userID = u.id;
    

Magento (1.x / 2.x)

  • Nutzen Sie Admin-Reports oder Drittanbieter-Erweiterungen (z. B. Improved Import/Export).
  • Sie können auch direkt die Tabellen sales_order , sales_order_item , customer_entity und weitere abfragen.
  • Bei Verwendung der REST-APIs beachten Sie Paginierung und Rate Limits.

WooCommerce

  • Verwenden Sie die eingebauten Export-Tools unter WooCommerce → Berichte → Bestellungen.
  • Für erweiterte Exporte nutzen Sie Plugins wie „Order Export & Order Import for WooCommerce“ oder schreiben eigene SQL-Abfragen auf wp_posts , wp_postmeta und wp_woocommerce_order_items .

Eigene oder Altsysteme

  • Falls Ihr System keine saubere Exportfunktion bietet:
    • Bitten Sie Ihre Entwickler, ein Skript zu erstellen, das saubere CSV- oder JSON-Dateien ausgibt.
    • Beziehen Sie folgende Referenzen mit ein:
      • Kundendaten
      • Bestellpositionen
      • Lieferadressen
      • Metadaten zu Zahlungsmethoden
    • Achten Sie stets auf UTF-8-Encoding, konsistente Zeilenenden und Trennzeichen.

Wesentliche Daten zum Exportieren

Typ Beschreibung
Bestellüberschriften Bestell-ID, Status, Summen, Währung, Datum, Verkaufskanal
Positionen Produkt-IDs/SKUs, Menge, Einzelpreis, Steuersatz, Rabatt
Kunden Name, E-Mail, Kundengruppe, Rechnungs-/Lieferadresse
Versand Methode, Sendungsverfolgungsnummer, Dienstleister, Lieferdatum
Transaktionen Zahlungsmethode, Transaktions-ID, Status, erstatteter Betrag
Rechnungen Rechnungsnummer, Rechnungsdatum, PDF-Referenz (falls vorhanden)

Optional, aber nützlich:

  • Verwendete Gutscheine
  • Steueraufschlüsselung
  • Notizen oder interne Tags
  • Geräte- oder Verkaufskanal-IDs
  • Treueprogramm- oder Geschenkkarten-Metadaten

Häufige Fehler vermeiden

  • Export mit abgeschnittenen Daten (z. B. fehlende oder abgeschnittene Produkt-SKUs)
  • Ignorieren von Mehrsprachigkeit oder Mehrwährungswerten
  • Fehlende Versand- oder Rückerstattungsdetails, wenn erforderlich
  • Nicht übereinstimmende Kunden-IDs (z. B. Gast-IDs aus Altsystemen mehrfach verwendet)
  • Falsche Zeichencodierung, die Probleme mit Sonderzeichen (ü, ñ, č usw.) verursacht

Praktische Tipps

  • Nutzen Sie Batch-Exporte, wenn Ihr Quellsystem große Datenmengen nicht auf einmal verarbeiten kann.
  • Validieren Sie exportierte Dateien immer manuell: Öffnen Sie die Datei und prüfen Sie Werte und Spalten.
  • Führen Sie eine Prüfsumme oder Hash auf Dateien, um Korruption oder Duplikate zu erkennen.
  • Bewahren Sie eine Sicherung des Rohexports und eine versionierte Version Ihrer bereinigten Exporte auf.

Nach dem Export der Rohdaten folgt als nächster Schritt die Bereinigung und Validierung, bevor Sie die Daten auf das Shopware-6-Schema abbilden. Darum geht es im nächsten Abschnitt.

5. Bereinigung und Validierung der exportierten Daten

Der Export Ihrer historischen Bestelldaten ist nur der Anfang – was Sie jetzt haben, ist oft unordentlich, unvollständig oder inkonsistent strukturiert. Die Bereinigung und Validierung dieser Daten ist entscheidend, um Importfehler zu vermeiden, Datenverluste zu verhindern und langfristige Genauigkeit in Ihren Berichten im neuen Shopware-6-System sicherzustellen.

Wenn Ihre Daten nicht richtig bereinigt sind, drohen:

  • Fehlgeschlagene API-Importe
  • Unvollständige oder fehlerhafte Bestellungen
  • Falsch zugeordnete Kundendaten
  • Unbrauchbare Analysen und Finanzübersichten

Systematisches Vorgehen bei Bereinigung und Validierung

Häufige Datenprobleme, auf die Sie achten sollten

Die meisten Exporte – besonders aus älteren oder individuellen Systemen – enthalten Probleme wie:

Doppelte Bestellungen

  • Gleiche Bestellnummer mehrfach gelistet
  • Wiederholte Transaktionen fälschlicherweise als neue Bestellungen gespeichert
  • Ursache: Fehlgeschlagene Importe oder Plugin-Fehler
  • Lösung: Verwenden Sie Deduplizierungs-Logik basierend auf eindeutigen Feldern wie order_id + datum + email .

Fehlende Bestellpositionen

  • Manche Bestellungen enthalten nur Kopfzeilen ohne Positionen
  • Produktverknüpfungen fehlen oder sind kaputt
  • Lösung: Überprüfen Sie mit Kreuzreferenzen zwischen order_items und orders die 1:n-Integrität. Alle „verwaisten“ Bestellungen müssen markiert werden.

Beschädigte oder unvollständige Kundendaten

  • Fehlende E-Mail-Adressen oder Namen
  • Abgeschnittene Zeichen durch Codierungsprobleme
  • Inkonsistente Schreibweisen (z. B. JOHN DOE, john doe)
  • Lösung: Normalisieren Sie die Groß-/Kleinschreibung, validieren Sie Pflichtfelder und setzen Sie Ausweichwerte (z. B. anonymous@example.com für Gäste).

Fehlerhafte Fremdschlüssel

  • Produkt-IDs oder SKUs, die nicht mehr existieren
  • Kundenreferenzen ohne passende Nutzer in der Datenbank
  • Gelöschte Versandmethoden
  • Lösung: Erstellen Sie eine Referenzliste gültiger IDs und nutzen Sie Lookup-Logik oder Platzhalter-Mappings, um Lücken zu füllen.

Leere oder Null-Felder

  • Leere Zahlungsarten, fehlender Versandstatus oder Null-Währungen
  • Von Shopware geforderte Felder führen sonst zu fatalen Fehlern
  • Lösung: Setzen Sie geeignete Standardwerte oder markieren Sie Datensätze zur manuellen Prüfung.

Empfohlene Werkzeuge zur Bereinigung

Tool Anwendungsfall
Excel / LibreOffice Visuelle Erkennung von Duplikaten, Nullwerten, Formatierung
Python (Pandas) Automatisierung von Transformationen, Validierungen
PHP- oder Node.js-Skripte Verarbeitung großer JSON-/CSV-Datensätze
Shopware API-Testtools Prüfung der Importakzeptanz (Postman, cURL)
OpenRefine Tiefgehende Datenbereinigung und Text-Clustering

Tipps zur Daten-Normalisierung

  • Datumsfelder: Stellen Sie sicher, dass das Format ISO 8601 entspricht (YYYY-MM-DD HH:MM:SS)
  • Währung: Nutzen Sie stets konsistente ISO-Codes (z. B. EUR, USD)
  • E-Mails: Entfernen Sie Leerzeichen, setzen Sie alles in Kleinbuchstaben, validieren Sie das Format
  • Boolesche Werte: Verwenden Sie 0/1 oder true/false, vermeiden Sie freie Texte wie „ja“
  • Adressen: Entfernen Sie Zeilenumbrüche, fassen Sie Felder strukturiert zusammen

Tipp: Versionen aufbewahren

Bewahren Sie stets auf:

  • Die original exportierten Rohdaten
  • Die bereinigte Version
  • Die validierte, importbereite Version
  • Logs oder Skripte, die bei der Bereinigung verwendet wurden

Das ermöglicht Nachvollziehbarkeit, Rücksetzung und Fehlerbehebung, falls nach dem Deployment Probleme auftreten.

6. Strukturierung der Daten für den Import

Nachdem Ihre historischen Bestelldaten bereinigt und validiert sind, müssen sie so strukturiert werden, dass sie dem Schema der Zielplattform entsprechen – in diesem Fall Shopware 6. Im Gegensatz zu Altsystemen, die oft auf monolithischen Tabellen basieren, verwendet Shopware 6 eine modulare, entitätenbasierte Architektur für Bestellungen. Diese Modularität bietet große Flexibilität und Skalierbarkeit – bedeutet aber auch, dass Ihre Importdateien strenge relationale Regeln und Entitätstrennung einhalten müssen.

Shopware 6 Bestell-Entitäten

Entität Zweck
order Hauptbestellung mit Summen, Status und Metadaten
order_line_item Einzelne Produkte oder benutzerdefinierte Positionen
order_customer Kunden-Snapshot zum Bestellzeitpunkt
order_transaction Zahlungsinformationen (Methode, Status, Transaktions-ID)
order_delivery Versanddetails, Tracking und Versandmethode
order_address Rechnungs- und Lieferadressen zur Bestellung

Beziehungszuordnung

  • Referentielle Integrität muss gewahrt bleiben durch konsistente order_id oder order_number .
  • Jede zugehörige Datei (z. B. Positionen, Lieferungen) muss zur korrekten Bestellung verknüpft sein.
  • Bei verschachtelten Imports über die API muss jede Datensatzstruktur strikt dem Shopware-Schema entsprechen.

Beispiel

order_line_item.csv könnte enthalten:

order_id product_id label quantity total_price
abc123 prod567 Blue T-Shirt 2 39,98

order_customer.csv könnte enthalten:

order_id email first_name last_name customer_number
abc123 john@example.com John Doe CUST-001

Tipps zur Strukturierung Ihrer Daten

  • Verwenden Sie wenn möglich UUIDs – Shopware 6 bevorzugt UUIDs gegenüber Auto-Increment-IDs.
  • Laden Sie Produktdaten vor – Positionsdaten müssen auf existierende Produkt-IDs verweisen oder vollständige Produktmetadaten enthalten.
  • Vereinfachen Sie verschachtelte Daten – vor allem bei CSVs sollten Adressfelder in separaten Spalten stehen (Straße, PLZ etc.).
  • Geben Sie Währungen und Sprachen explizit an, falls Ihr System mehrere Verkaufskanäle verwendet.

Bei Verwendung von APIs

Wenn Sie die Sync API oder Admin API nutzen, sollte die Payload für jede Bestellung ungefähr so aufgebaut sein (vereinfacht):

{
"order": {
"orderNumber": "10001",
"salesChannelId": "...",
"currencyId": "...",
"orderCustomer": { ... },
"transactions": [ ... ],
"deliveries": [ ... ],
"lineItems": [ ... ],
"addresses": [ ... ]
}
}

Validierung vor dem Import

  • Vergewissern Sie sich, dass jede Bestellung mindestens eine Position enthält.
  • Validieren Sie alle Fremdschlüssel (Kunden-ID, Produkt-ID etc.).
  • Testen Sie eine kleine Stichprobe mit Postman oder dem Import/Export-Plugin.
  • Achten Sie auf Probleme mit Feldnamen (snake_case vs. camelCase).

Durch die korrekte Strukturierung Ihrer Daten in einzelne, relationale Entitäten schaffen Sie die Grundlage für einen nahtlosen Import in Shopware 6. So bleiben alle Beziehungen erhalten und Reporting sowie Kundenserviceprozesse funktionieren wie erwartet.

7. Zuordnung der Bestellfelder zur neuen Plattform

Feldnamen und Datentypen können zwischen Systemen variieren. Erstellen Sie eine Zuordnungstabelle wie diese:

Altes Feld (Magento) Neues Feld (Shopware) Transformationshinweise
customer_email order_customer.email In Kleinbuchstaben konvertieren
status order.state_id Shopware-State-UUIDs verwenden
shipping_address order_address Struktur glätten, falls verschachtelt

8. Anreicherung der Bestellungen mit Kontextdaten

Das bloße Migrieren von Rohbestelldaten reicht oft nicht aus, um den operativen Wert, den Ihr Unternehmen über die Zeit aufgebaut hat, vollständig zu erhalten. Bestellungen existieren nicht isoliert – sie sind eingebettet in größere Geschäftsprozesse, Marketingstrategien und Customer Journeys. Um den Nutzen Ihrer historischen Bestelldaten zu maximieren, sollten Sie diese mit kontextuellen Informationen anreichern, die intelligentere Entscheidungen und eine reibungslose Geschäftskontinuität nach der Migration unterstützen.

Warum sollten Sie Ihre Bestelldaten anreichern?

  • Kritische Geschäftslogik bewahren, z. B. Kundengruppen oder Preisklassen, die bei der Bestellung galten.
  • Analysen verbessern, um zu verstehen, wie Marketingkampagnen den Verkauf beeinflussten.
  • Loyalität und Personalisierung erhalten, etwa durch Kenntnis des Customer Lifetime Value (CLTV) oder Segment-Tags für zukünftiges Engagement.
  • Betrugserkennung oder Risikomanagement ermöglichen, indem verdächtige Bestellungen oder Kunden markiert werden.

Gängige Arten kontextueller Daten

  • Customer Lifetime Value (LTV):
    Berechnen Sie den Gesamtumsatz eines Kunden über seine gesamte Historie. LTV kann als Metadatenfeld an Kunde oder Bestellung importiert werden, um VIP-Programme oder zielgerichtetes Marketing zu segmentieren. Beispiel: Wenn John Doe über 10 Bestellungen 5.000 € ausgegeben hat, ermöglicht diese Info Shopware-Marketingtools, personalisierte Aktionen anzubieten.
  • UTM-Kampagnenparameter:
    Wenn Ihr Altsystem Kampagnenattribution verfolgte, übernehmen Sie UTM-Parameter ( utm_source , utm_medium , utm_campaign ). So können Sie historische Marketingeffektivität auch nach der Migration analysieren.
  • Verkaufskanal-Identifikation:
    Shopware 6 unterstützt mehrere Verkaufskanäle (Webshop, Mobile App, Marktplatz). Kennzeichnen Sie jede Bestellung mit der passenden Kanal-ID, um korrekte Kanalberichte und Lagerzuordnungen zu gewährleisten.
  • Kundengruppe oder Preisregeln:
    Importieren Sie Kundengruppenzuordnungen (z. B. Großhandel, Einzelhandel, VIP), die zum Bestellzeitpunkt gültig waren. So bleiben korrekte Preis- und Rabatt-Historien für Buchhaltung und Kundenservice erhalten.
  • Interne Tags und Flags:
    Interne Notizen wie „Betrugsverdacht“, „manuelle Prüfung“ oder „hohe Priorität“ können als Metadaten mitgeführt werden. Diese unterstützen Supportteams bei nahtlosen Arbeitsabläufen.

Wie fügt man Kontextdaten hinzu?

  • Datenquellen: Ermitteln Sie, wo diese Daten liegen – Marketingtools, ERP-Systeme, CRM oder Shopware-Altsystem-Plugins.
  • Anreicherungsskripte: Verwenden Sie ETL-Skripte (Python, SQL), um Rohbestelldaten mit diesen zusätzlichen Attributen zu verknüpfen.
  • Metadatenfelder: Shopware unterstützt benutzerdefinierte Felder und Erweiterungen – nutzen Sie diese, um angereicherte Daten zu speichern.
  • Validierung: Stellen Sie sicher, dass hinzugefügte Felder den Datentypen und Import-API-Schemas von Shopware entsprechen.

Vorteile der Anreicherung

  • Bessere Analysen und Berichte durch feinere Segmentierung und Erkenntnisse.
  • Verbesserte Kundenerfahrung dank personalisierter Angebote und Treuebelohnungen.
  • Höhere operative Effizienz durch Risiko-Flags, die Betrugsverluste und manuelle Prüfungen reduzieren.
  • Optimierte Marketingauswertung durch Nachverfolgung historischer Kampagnen.

Durch die Einbindung dieser kontextuellen Ebenen in Ihre Migration historischer Bestelldaten stellen Sie sicher, dass Shopware 6 nicht nur Ihre Daten speichert, sondern auch die nötige Business Intelligence und operative Einsichten für nachhaltigen Erfolg nach der Migration bereitstellt.

9. Umgang mit Kundenkonten und Gastbestellungen

Die Migration historischer Bestelldaten betrifft nicht nur die Bestellungen selbst – es ist ebenso wichtig, die Kundendaten korrekt zu verarbeiten. Shopware 6 erzwingt eine strikte Beziehung zwischen Bestellungen und Kunden: Jede Bestellung muss mit einer gültigen order_customer -Entität verknüpft sein. Dies stellt besondere Herausforderungen dar, wenn sowohl registrierte Kundenkonten als auch Gastbestellungen berücksichtigt werden müssen.

10. Umgang mit Rechnungen, Versand und Rückerstattungen

Entscheiden Sie, ob Sie:

  • Rechnungsdatensätze importieren (für rechtliche/steuerliche Kontinuität)
  • Versand-Trackingnummern anhängen
  • Rückerstattungen (teilweise oder vollständig) kennzeichnen oder importieren

Dies kann separate API-Endpunkte oder Datenschichten erfordern. Manche Shops importieren Bestellungen ohne diese Daten zur Vereinfachung; andere betrachten sie als kritisch.

Registrierte Kundenkonten

  1. Kunden vor Bestellungen importieren
    Importieren Sie immer zuerst die Kundendatensätze, damit die Bestellungen anhand der Kunden-ID zugeordnet werden können. Ein Import in falscher Reihenfolge führt zu Validierungsfehlern, da Shopware den referenzierten Kunden sonst nicht findet.
  2. Zuordnung per E-Mail oder Kunden-ID
    Der verlässlichste Schlüssel zur Zuordnung ist oft die E-Mail, da Kunden-IDs zwischen Systemen wechseln können. Verwenden Sie die E-Mail, um Bestellungen während des Imports mit Kunden zu verknüpfen, besonders wenn Sie von unterschiedlichen Plattformen migrieren. Wenn Sie die ursprünglichen Kunden-IDs erhalten und Konflikte vermeiden können, funktioniert das ebenfalls.
  3. Passwort-Handling
    Wenn Sie Login-Daten zu Shopware 6 migrieren wollen, müssen Sie die Passwortverschlüsselung korrekt handhaben. Shopware verwendet bcrypt-Hashing mit Salt, daher ist das Migrieren von Klartext-Passwörtern unmöglich. Optionen:
    • Passwort-Reset-E-Mails beim ersten Login erzwingen.
    • Nur gehashte Passwörter exportieren, wenn kompatibel (selten).
    • Konten neu anlegen und Kunden benachrichtigen.

Gastbestellungen (Anonyme Kunden)

  1. Shopware-Anforderung: Synthetische Kunden
    Shopware 6 verlangt, dass jede Bestellung mit einer order_customer -Entität verknüpft ist, auch bei Gastbestellungen. Das bedeutet, dass Sie für Gastbestellungen während des Imports synthetische oder anonyme Kundenkonten erstellen müssen.
  2. Erstellung anonymer Kunden-Entitäten
    Generieren Sie Platzhalterkunden mit minimalen Daten:
    • E-Mail (falls vorhanden)
    • Name als „Gast“ oder aus den Bestelldaten extrahiert
    • Kundengruppe auf „Gast“ gesetzt
    • Keine Login-Daten
    Diese Kunden dienen nur als Referenz für die Bestellung.
  3. Umgang mit doppelten Gast-E-Mails
    Manche Gäste könnten dieselbe E-Mail für mehrere Bestellungen verwendet haben. Stellen Sie sicher, dass diese Gastkunden entweder zusammengeführt oder eindeutig erzeugt werden, um relationale Integrität zu gewährleisten.

Wichtige Vorgaben und Tipps

  • Sie können keine Bestellungen ohne gültige order_customer -Referenzen importieren. Fehlende oder fehlerhafte Kundenverknüpfungen führen zum Importfehler.
  • Konsistente Kunden-IDs helfen, die Bestellhistorie beizubehalten, aber die E-Mail ist die sicherste Rückfalloption.
  • Stellen Sie für DSGVO- und Datenschutzkonformität sicher, dass Gastdaten korrekt verarbeitet werden, inklusive Anonymisierung, falls erforderlich.
  • Ziehen Sie in Betracht, Kunden in Batches vor den Bestellungen zu importieren, um schrittweise Validierung zu ermöglichen.

Eine sorgfältige Handhabung von Kundenkonten und Gastbestellungen garantiert, dass Ihre historischen Bestellungen in Shopware 6 durchsuchbar, verknüpft und nutzbar bleiben – sowohl im Backend als auch im Storefront. So bleiben sowohl operative Abläufe als auch Kundenerfahrungen erhalten.

11. Testimporte und Validierung

Der Import historischer Bestelldaten ist ein komplexer Vorgang mit vielen Abhängigkeiten und Beziehungen. Den gesamten Datensatz auf einmal zu importieren ist riskant und kann zu schwer diagnostizierbaren Fehlern, Datenkorruption oder Systeminstabilität führen.

Um diese Risiken zu minimieren, ist eine rigorose Test- und Validierungsphase unerlässlich. Dieser Abschnitt führt Sie durch bewährte Vorgehensweisen für inkrementelle Tests und die Überprüfung der importierten Bestelldaten in Shopware 6.

Warum Testimporte durchführen?

  • Fehler frühzeitig erkennen: Fehlende oder fehlerhafte Felder vor dem großflächigen Import aufspüren
  • Datenintegrität sicherstellen: Beziehungen (Bestellungen, Kunden, Transaktionen) müssen erhalten bleiben
  • Geschäftsregeln validieren: Summen, Steuern und Rabatte müssen erwartungsgemäß übereinstimmen
  • Live-Systeme schützen: Ausfallzeiten und Datenverluste vermeiden

Schritt-für-Schritt-Testimport-Workflow

  1. Kleine Stichprobe auswählen
    Starten Sie mit einem überschaubaren Satz von 10 bis 50 Bestellungen, die Ihr gesamtes Datenvolumen repräsentieren. Inkludieren Sie eine Mischung aus:
    • Bestellungen registrierter Kunden
    • Gastbestellungen
    • Verschiedenen Zahlungs- und Versandmethoden
    • Bestellungen mit Rabatten, Rückerstattungen oder komplexen Steuerregeln
  2. Geeignete Importwerkzeuge verwenden
    • Shopware Admin API: Ideal für individuelle Importe und direkte Tests
    • Sync API: Für strukturierte Massen-Datensynchronisation
    • Migrations-Plugins: Offizielle oder Drittanbieter-Tools zur Vereinfachung der Validierung
  3. Importierte Daten im Shopware-Backend überprüfen
    Prüfen Sie nach dem Import:
    • Stimmen die Bestellsummen mit dem Quellsystem überein?
    • Sind die Positionen korrekt verknüpft und Mengen/Preise korrekt?
    • Sind Versandarten und Trackinginformationen richtig zugeordnet?
    • Erscheinen Zahlungstransaktionen mit korrekten Status und Beträgen?
  4. Logs und API-Antworten für Debugging nutzen
    Überwachen Sie Import-Logs oder API-Antworten auf:
    • Fehlende Pflichtfelder (z. B. Kunden-E-Mail, Bestell-ID)
    • Fehlerhafte Fremdschlüssel (z. B. nicht gefundene Produkt- oder Kunden-IDs)
    • Datenformatfehler (falsches Datums-/Zeitformat, ungültige Währungscodes)
    Bearbeiten Sie Fehler einzeln und korrigieren Sie Daten oder Importlogik.

Profi-Tipps

  • Führen Sie Importe in einer Staging-Umgebung durch, die der Produktion entspricht.
  • Automatisieren Sie Tests mit API-Aufrufen und Validierungsskripten.
  • Bewahren Sie Backups vor und nach Testimporten auf.
  • Nutzen Sie progressive Batch-Größen – starten Sie klein und erhöhen Sie die Menge schrittweise.
  • Dokumentieren Sie Testfälle und Ergebnisse für Auditierbarkeit und Wiederholbarkeit.

Wann mit der kompletten Migration fortfahren?

Starten Sie den vollständigen Import erst, wenn Testimporte fehlerfrei sind und die Datenqualität bestätigt wurde. So stellen Sie einen reibungslosen Endimport mit minimalen Störungen sicher.

12. Datenschutz und Compliance

Historische Bestelldaten enthalten sensible Informationen wie:

  • E-Mails, Adressen und Telefonnummern
  • Zahlungsmetadaten
  • Steuer-IDs oder Rechnungsnummern

Stellen Sie sicher:

  • DSGVO-Konformität (nur rechtlich erforderliche Daten importieren)
  • Anonymisierung von Daten, die älter sind als die gesetzliche Aufbewahrungsfrist
  • Einsatz von Verschlüsselung und sicheren Übertragungsmethoden bei CSV- oder API-Importen

13. Tools und Skripte, die Sie verwenden können

Empfohlene Tools:

  • Python + Pandas: Für Datenaufbereitung
  • Shopware Migration Assistant Plugin
  • Postman oder Insomnia: API-Tests
  • MySQL Workbench: Für Datenbankexporte
  • Google Sheets/Excel: Für Zuordnung und Bereinigung

Beispiel: Ein Python-Skript zur Umwandlung von WooCommerce-Bestellungen ins Shopware-Format.

14. FAQ und Fehlerbehebung

Frage: Was passiert, wenn ich Bestellungen nicht importiere?
Antwort: Sie verlieren Kundenhistorie, Tiefe in Berichten und riskieren rechtliche Probleme bei der Steuerdokumentation.

Frage: Kann ich Bestellungen ohne Produkte importieren?
Antwort: Nein. Shopware verlangt gültige Produktreferenzen (SKUs, IDs oder UUIDs).

Frage: Was, wenn einige Felder fehlen oder unbekannt sind?
Antwort: Verwenden Sie Platzhalterwerte oder Standarddaten – aber brechen Sie dabei nicht die referenzielle Integrität.

15. Fazit

Die Vorbereitung Ihrer historischen Bestelldaten ist keine einfache Copy-&-Paste-Aufgabe. Es erfordert:

  • Strategie
  • Bereinigung
  • Zuordnung
  • Testing
  • Sicherheitsbewusstsein

Aber es lohnt sich – Ihre Bestellhistorie ist ein wertvolles Asset für Business Intelligence, Kundenbetreuung und rechtliche Compliance.
Nehmen Sie sich die Zeit zur sorgfältigen Vorbereitung, damit Sie Ihre neue Plattformmigration mit Zuversicht und Klarheit starten können.