# Bedienung ## Einstellungen öffnen Öffnen Sie die Konfiguration der Extension **Afterbuy** (Plugin-Einstellungen). Einstellungen können **pro Verkaufskanal** überschrieben werden — prüfen Sie den richtigen Kanal. ## API-Einstellungen | Option | Bedeutung | |--------|-----------| | **Schnittstelle aktivieren** | Master-Schalter für Export und Versandstatus-Abgleich | | **User Token** / **Partner Token** | Zugangsdaten der Afterbuy-Shop-Schnittstelle | | **Zugangsdaten testen** | Prüft die Tokens gegen Afterbuy | Zugangsdaten: [Afterbuy-Konto → Zugangsdaten anzeigen](https://farm01.afterbuy.de/afterbuy/konto.aspx). ## Übertragungseinstellungen Typische Optionen: - **Kundenerkennung** / **Produkterkennung** — wie Afterbuy Kunde und Artikel zuordnet - **Feedbackdatum** — steuert Feedback-/E-Mail-Verhalten in Afterbuy - **Versandkostenübertragung** — wenn deaktiviert, berechnet Afterbuy die Versandkosten - **Lieferadresse immer übertragen** — sendet die Lieferadresse (`Lieferanschrift` / `KL*`) auch dann, wenn sie mit der Rechnungsadresse identisch ist - **Artikelnummer für Rabatte** — SKU für Rabattpositionen (Standard: `10000`) - **Produktattribute** für Artikelnr / AlternArtikelNr1 / ArtikelStammID - **Afterbuy Markierungs-ID** (optional) — Afterbuy-interne ID einer eigenen Farbmarkierung (`MarkierungID`); die Markierung muss in Afterbuy existieren Der **Shopware-Kundenkommentar** der Bestellung wird automatisch als Afterbuy-Feld **`Kommentar`** übertragen. Dafür gibt es keine separate Einstellung. ## Bestellstatus | Option | Bedeutung | |--------|-----------| | **Bestellstatus für Export** | Nur Bestellungen mit diesem Status werden übertragen. Ist kein Status gewählt, gilt standardmäßig **`open`** (Offen). | | **Bestellstatus nach Export** | Optional: Status nach erfolgreicher Übertragung | | **Versandstatus für versandte Bestellungen** | Optional: Lieferstatus, den der Versandstatus-Abgleich setzt | ## Wie der Bestellexport arbeitet Es gibt **keinen** Sofort-Export beim Checkout. Der Ablauf: 1. Scheduled Task `netzkollektiv.afterbuy_processor_task` (alle **5 Minuten**) oder CLI 2. Geeignete Bestellungen werden in die Message Queue gelegt 3. Der Worker überträgt jede Bestellung an Afterbuy ### Welche Bestellungen werden exportiert? - Schnittstelle aktiv, Tokens gesetzt und gültig - Verkaufskanal = Storefront-Kanal der Verarbeitung - **Kein** Tag `afterbuy-processed` - Bestellstatus entspricht der Einstellung (sonst `open`) Nach dem Versuch (Erfolg **oder** Fehler) erhält die Bestellung den Tag `afterbuy-processed` und einen Hinweis im **internen Kommentar** (Shopware ≥ 6.7) bzw. im Kundenkommentar (älter). Fehlgeschlagene Exports werden **nicht** automatisch erneut versucht — Tag entfernen, um erneut zu exportieren. ### Manueller Export (CLI) ```bash bin/console netzkollektiv-extensions:afterbuy:process [bestellnummer] ``` Anschließend muss die Queue konsumiert werden, z. B.: ```bash bin/console messenger:consume async -vv ``` ## Versandstatus-Abgleich Der Abgleich läuft über die Afterbuy-**XML-API** (`GetSoldItems`): 1. Scheduled Task `netzkollektiv.afterbuy_shipping_status_task` (**stündlich**) oder CLI 2. Vorgänge mit Versanddatum der letzten **2 Tage** (max. 250) 3. Zuordnung über Afterbuy-`OrderIDAlt` = Shopware-**Bestellnummer** 4. Tracking-Codes → Lieferungs-Tracking; optional konfigurierter Versandstatus ### Manuell (CLI) ```bash bin/console netzkollektiv-extensions:afterbuy:check-shipping ``` ## Protokolle und Fehleranalyse Logdatei: `var/log/netzkollektiv_afterbuy*.log` Typische Meldungen: | Meldung | Bedeutung | |---------|-----------| | `not active or credentials not set` | Schnittstelle aus oder Tokens leer | | `credentials incorrect` | Token-Prüfung fehlgeschlagen | | `Processing 0 orders` | Keine passende Bestellung (Status/Kanal/Tag) | | `Adding order … to queue` | Zur Queue gelegt — Worker muss laufen | | `Could not import order` | Afterbuy hat abgelehnt (Details im Bestellkommentar) | ## Infrastruktur-Hinweise - Ohne laufenden **Message Consumer** / Admin Worker bleiben Tasks und Export-Messages liegen. - Nach Plugin-Update den dauerhaften Consumer **neu starten**. - Export und Versandstatus-Abgleich nutzen denselben Aktiv-Schalter und dieselben Tokens (pro Sales Channel).