Kunden synchronisieren und Bestellungen abwickeln
Plugin-Konfiguration
In der Plugin-Konfiguration finden Sie Einstellungen für die Kundensynchronisation und die Bestellungsabwicklung.
- Die Kundensynchronisation kann aktiviert oder deaktiviert werden
- Der Synchronisierungstyp kann auf "Shoppers" oder "Customers" eingestellt werden
- "Shoppers" synchronisiert nur Abacus-Shopper als Shopware-Kunden (empfohlen)
- "Customers" synchronisiert alle Abacus-Shopper und -Debitoren als Shopware-Kunden
- Mit der Einstellung "Shopper UUID" können Sie zwischen "Account" oder "E-Mail" wählen, um den Shopper eindeutig zu identifizieren.
- "Account" ist die empfohlene Einstellung, da nur der Account in Abacus eindeutig ist
- "E-Mail" verwendet die E-Mail-Adresse zur Identifizierung des Shoppers (bitte beachten Sie, dass es möglich ist, dass mehrere Shopper dieselbe E-Mail-Adresse haben. Wir fangen diesen Fall momentan nicht ab.)
- Aktivieren Sie diese Option nur, wenn Sie eine E-Mail an den Kunden senden möchten, sobald er in Shopware angelegt wird. (Vorsicht: Dies sendet eine E-Mail an alle Kunden, die synchronisiert sind)
Abacus-Konfiguration
In den Einstellungen der Abacus-Anwendung (621) können Sie einen Sammeldebitor für alle Gastbestellungen definieren. Dieser Debitor wird für alle Gastbestellungen, die in Shopware angelegt werden, verwendet.
Kundensynchronisations-Prozess "Shopper"
Alle 24 Stunden werden alle Shopper von Abacus mit Shopware synchronisiert. Die Synchronisation erfolgt im Hintergrund und kann manuell über die Konsole ausgelöst werden.
bin/console scheduled-task:run-single webwirkung.abacus.shopper.synchronization
bin/console scheduled-task:run-single webwirkung.abacus.shopper.synchronization
Zusätzlich zur geplanten Vollsynchonisation registriert das Plugin auch Änderungen in Abacus und verarbeitet diese alle 15 Minuten. Dies bedeutet, dass Änderungen in Abacus schnell in Shopware widergespiegelt werden.
So sieht ein korrekt synchronisierter Shopper in Shopware aus: Neben den Standard-Kundendaten von Shopware speichern wir auch die Abacus Customer Subject Id, die Abacus Shopper Id sowie die Abacus Debtor Number in den Zusatzfeldern des Kunden.
Gastbestellungen
Gastbestellungen werden in Shopware erstellt, wenn ein Kunde bestellt, ohne ein Konto anzulegen.
Diese wird dann an Abacus geschickt und kann dort direkt verarbeitet werden.
Bestellung eines neuen Kunden
Wenn ein neuer Kunde in Shopware angelegt wird und der Kunde eine Bestellung aufgibt, wird die Bestellung an Abacus gesendet und kann dort verarbeitet werden.
Also, zunächst die Anmeldung eines neuen Kunden: und dann die Bestellung des neuen Kunden: welche dann an Abacus geschickt wird und dort direkt verarbeitet werden kann. Da es sich um einen neuen Kunden handelt, kann die Adresse nicht gefunden werden und muss in Abacus manuell verarbeitet werden. Wenn die Adresse bereits existiert oder Abacus eine ähnliche Adresse erkennt, kann die Adresse ausgewählt werden, um Duplikate zu vermeiden. Nach erfolgreicher Verarbeitung erhält die Bestellung ein grünes Häkchen und kann in eine Bestellung umgewandelt werden.
Der Bestellung ist in den "Abgeschlossenen" Bestellungen in Abacus zu finden. Und die Bestellung wird mit dem Abacus Bestellungen Tool (111) erstellt.
Sync zurück zu Shopware
Während der Bestellungsabwicklung in Abacus wird ein Shopper für den neuen Kunden in Abacus angelegt. Dieser Shopper wird dann (nach 15 Minuten) wieder mit Shopware synchronisiert.
Vor der Synchronisierung sieht der neue Kunde in Shopware wie folgt aus: Und sobald die Synchronisierung abgeschlossen ist, wird der bestehende Kunde mit den Shopper Daten aktualisiert: Beachten Sie, dass die Shopper Daten in den Zusatzfeldern des Kunden gespeichert werden.
💡 Wie wir den richtigen Shopware-Kunden identifizieren
Zunächst versuchen wir, den richtigen Shopware-Kunden anhand der Shopper-ID zu finden. Neu registrierte Shopware-Kunden haben jedoch noch keine Shopper-ID.
In Shopware ist die E-Mail-Adresse eines Kundenkontos im Gegensatz zu Abacus eindeutig. Basierend auf der Konfiguration im Shopware-Plugin verwenden wir den Wert des Feldes „Account“ oder das Feld „Email“ des Shopper-API-Bodys, um den richtigen Shopware-Kunden zu identifizieren.
Bestellung eines bestehenden Kunden
Wenn ein bestehender Kunde eine Bestellung aufgibt, wird der Auftrag an Abacus gesendet und kann dort direkt verarbeitet werden. Da Bestandskunden bereits einen Shopper in Abacus und eine Shopper-ID haben, kann die Bestellung ohne manuelle Adressbearbeitung verarbeitet werden, soweit sich die Adresse nicht geändert hat.