Bedienungsanleitung Bestell-Status-Import

Bestell-Status-Import

Da pixi* das bestandsführende System ist, werden Bestellungen in Pixi* verarbeitet. Die Bestellungen werden über den Bestell-Export an Pixi* übermittelt. Nach Verarbeitung/Bearbeitung der Bestellungen werden diverse Status-Updates von Pixi* an Magento gesendet. Die Aktualisierungen findet statt, sobald es Änderungen in Pixi* gibt statt.

Bitte wenden Sie sich bei Fragen dazu an Descartes/Pixi* oder prüfen Sie die Dokumentation

Anwendungsfall: Bestellstatus-Update

In dieser kurzen Beschreibung wird erklärt, wie eine Aktualisierung des Bestellstatus funktioniert.

Order-Pending
  1. Bitte prüfen Sie zunächst, ob die Statuskonfiguration für Bestellungen korrekt gesetzt ist.

  2. Lösen Sie den Bestandsimport-Request aus.

    • Dies passiert wie beschrieben durch eine Bestandsänderung in pixi*.

    • Alternativ können Sie den Request testen.

      • dazu das Attribut Environment auf Development stellen.

      • und folgenden Request-Text in eine Browser-Adresszeile eingeben:

        https://magento242commerce.test/pixi/api/importOrderStatus?sid=test&data=<ORDER_ITEM>
        <LINE_ITEM_ID>1</LINE_ITEM_ID>
            <QUANTITY>1</QUANTITY>
            <FULL_PRICE>0.0000</FULL_PRICE>
            <DISCOUNT_PERC>0.00</DISCOUNT_PERC>
            <DISCOUNT_VALUE>0.0000</DISCOUNT_VALUE>
            <PRICE_AMOUNT>0.0000</PRICE_AMOUNT>
            <STATUS>ANG</STATUS>
            <ORDER_NR_EXT>1</ORDER_NR_EXT>
            <ORDER_STATUS>CLOSED</ORDER_STATUS>
            <INVOICE_NR>INV00001</INVOICE_NR>
            <SHIPPING_VENDOR>FLAT</SHIPPING_VENDOR>
        </ORDER_ITEM>
    • Der Status der Bestellung wird auf processing gesetzt.

      Order-Processing
      Order-Notes
    • Bei erweitertem Logging wird folgender Log-Auszug protokolliert:

      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: ========================================== [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: => TechDivision pixi* Request [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: ========================================== [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: Time: 2021-06-11T10:12:18+00:00 [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: Action: pixi_api_importOrderStatus [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: Parameters: [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: array (
        'sid' => 'tes*****',
        'data' => '<ORDER_ITEM><LINE_ITEM_ID>1</LINE_ITEM_ID><QUANTITY>1</QUANTITY><FULL_PRICE>0.0000</FULL_PRICE><DISCOUNT_PERC>0.00</DISCOUNT_PERC><DISCOUNT_VALUE>0.0000</DISCOUNT_VALUE><PRICE_AMOUNT>0.0000</PRICE_AMOUNT><ITEM_NOTE>{"ampromo_rule_id":"12","discount":"0,"}</ITEM_NOTE><STATUS>ANG</STATUS><TRACKINGID>0815</TRACKINGID><RET_TRACKINGID>4711</RET_TRACKINGID><ORDER_NR_EXT>1</ORDER_NR_EXT><ORDER_STATUS>CLOSED</ORDER_STATUS><INVOICE_NR>INV00001</INVOICE_NR><SHIPPING_VENDOR>FLAT</SHIPPING_VENDOR></ORDER_ITEM>',
      ) [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO:  [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: Session does not exist [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: Session is expired [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: Updating order status of 1 from pending to processing [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: Answer: [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: <?xml version="1.0"?>
      <ANSWER>
        <code>OK</code>
      </ANSWER>
      
       [] []
      [2021-06-11 10:12:18] TechDivisionPixiLogger.INFO: End of request.
       [] []

Anwendungsfall: Bestellstatus-Update / Auslieferung

In dieser kurzen Beschreibung wird erklärt, wie eine Aktualisierung des Bestellstatus mit Auslieferung (inkl. Tracking-Infos) funktioniert.

Ausgangslage ist die in Bearbeitung befindende Bestellung

  1. Bitte prüfen Sie zunächst, ob die Statuskonfiguration für Bestellungen korrekt gesetzt ist.

  2. Optional können Sie die Versanddienstleisterinformationen ebenfalls von Pixi* beziehen. Dazu müsste das Mapping gepflegt werden

    Order-Notes
  3. Lösen Sie den Bestandsimport-Request aus.

    • Dies passiert wie beschrieben durch eine Bestandsänderung in pixi*.

    • Alternativ können Sie den Request testen.

      • dazu das Attribut Environment auf Development stellen.

      • und folgenden Request-Text in eine Browser-Adresszeile eingeben:

        https://magento242commerce.test/pixi/api/importOrderStatus?sid=test&data=<ORDER_ITEM>
        <LINE_ITEM_ID>1</LINE_ITEM_ID>
            <QUANTITY>1</QUANTITY>
            <FULL_PRICE>0.0000</FULL_PRICE>
            <DISCOUNT_PERC>0.00</DISCOUNT_PERC>
            <DISCOUNT_VALUE>0.0000</DISCOUNT_VALUE>
            <PRICE_AMOUNT>0.0000</PRICE_AMOUNT>
            <STATUS>AUS</STATUS>
            <TRACKINGID>0815</TRACKINGID>
            <RET_TRACKINGID>4711</RET_TRACKINGID>
            <ORDER_NR_EXT>1</ORDER_NR_EXT>
            <ORDER_STATUS>CLOSED</ORDER_STATUS>
            <INVOICE_NR>INV00001</INVOICE_NR>
            <SHIPPING_VENDOR>FLAT</SHIPPING_VENDOR>
        </ORDER_ITEM>

        Um eine Lieferung in Magento zu erzeugen, muss der Status AUS übermittelt werden

    • Der Status der Bestellung wird auf complete gesetzt.

      Order-Complete

      Ein Lieferschein wir in Magento erzeugt und

      die Trackingformation wird beim Lieferschein gespeichert

      Order-Complete

      Diese Bestellungsinformation werden bei den Daten (Comments) ebenfalls gespeichert

      Order-Complete
    • Bei erweitertem Logging wird folgender Log-Auszug protokolliert:

      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: ========================================== [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: => TechDivision pixi* Request [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: ========================================== [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Time: 2021-06-11T10:19:30+00:00 [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Action: pixi_api_importOrderStatus [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Parameters: [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: array (
        'sid' => 'tes*****',
        'data' => '<ORDER_ITEM><LINE_ITEM_ID>1</LINE_ITEM_ID><QUANTITY>1</QUANTITY><FULL_PRICE>0.0000</FULL_PRICE><DISCOUNT_PERC>0.00</DISCOUNT_PERC><DISCOUNT_VALUE>0.0000</DISCOUNT_VALUE><PRICE_AMOUNT>0.0000</PRICE_AMOUNT><ITEM_NOTE>{"ampromo_rule_id":"12","discount":"0,"}</ITEM_NOTE><STATUS>AUS</STATUS><TRACKINGID>0815</TRACKINGID><RET_TRACKINGID>4711</RET_TRACKINGID><ORDER_NR_EXT>1</ORDER_NR_EXT><ORDER_STATUS>CLOSED</ORDER_STATUS><INVOICE_NR>INV00001</INVOICE_NR><SHIPPING_VENDOR>FLAT</SHIPPING_VENDOR></ORDER_ITEM>',
      ) [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO:  [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Session does not exist [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Session is expired [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Set item as shipped (ID 1 of Order 1) [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Set shipment source to default [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Updating order status of 1 from processing to complete [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: Answer: [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: <?xml version="1.0"?>
      <ANSWER>
        <code>OK</code>
      </ANSWER>
      
       [] []
      [2021-06-11 10:19:30] TechDivisionPixiLogger.INFO: End of request.
       [] []

      Da Pixi* als "Single-Source-of-Truth" angesehen wird, werden reservierte Bestände mit der Auslieferung wieder aufgelöst.

      Die Bestände werden aus Pixi* über den Bestandsimport abgeglichen.

      Werden Versandinformationen (Tracking-IDs) nachträglich verändert, so wird ein erneuter Update-Request gesendet. Dieser wird bei Komplettlieferungen ignoriert, da es zu "Überversendungen" kommen kann.

Funktionsbeschreibung: Teillieferungen

Neben dem Komplettversand von Bestellungen können auch Teillieferungen verwaltet werden. Diese Funktion muss im Pixi* Control Center wie auch im Magento Pixi* Connector Modul aktiviert werden.

Order-Complete

Hierbei sind folgende Themen zu beachten:

  • Der Status wird nicht mehr anhand des übergebenen STATUS gesetzt.

  • Es wird der Wert aus ORDER_STATUS verwendet.

  • Dafür gibt es eine separate Statuszuweisung in der Konfiguration (siehe obiges Bild).

  • Für jede Teillieferung wird ein Lieferschein in Magento erzeugt. Sind Tracking-Informationen enthalten, so werden diese beim jeweiligen Lieferschein verzeichnet.

Ab Version 3.1.5 werden die genannten Optionen und Konfigurationen auch für Teilstornierungen genutzt.

Anwendungsfall: Setzen des Bestellzustandes beim Bestellstatus-Update

ab Version 3.1.0

Standardmäßig wird beim Bestellstatus-Import bzw. Update nur der Bestellstatus (Order Status) gesetzt. Nun kann über die Konfiguration eingestellt werden, ob auch der Bestellzustand (Order State) gesetzt werden. Dies ist vor allem sinnvoll, wenn die Faktura durch ein Drittanbieter-System Set Order State oder direkt durch Pixi* vorgenommen wird und gewährleistet werden soll, dass alle Bestelldaten systemübergreifend konsistent gehalten werden.

Order-History-State

Ist das Setzen des Bestellzustandes aktiv, so wird dieser gesetzt und in den Bestellhistorie kommentiert.

Sonderfälle Bestellstatus-Update

Um die Daten zwischen Magento und Pixi* konsistent zu halten gibt es Sonderfälle in der Verarbeitung bei einem Bestellstatus-Update.

Bei den Werten AUS, STO und NLB werden neben der Aktualisierung des Bestellstatus in Magento noch weitere Daten verarbeitet.

Wie bereits im Punkt Auslieferung erläutert werden über den Status AUS Lieferscheine und Trackinginformationen angelegt und verarbeitet.

Mit den Status NLB oder STO werden Stornierungen auf Positionsebene verbucht.

Da sich das Pixi-Magento-Connector Modul sich bereits beim Bestätigen der Bestellung seitens Pixi um die Bestandsreservierungsauflösung in Magento kümmert, werden bei Stornierungen oder Lieferscheinerstellungen keine Bestandskorrekturen mehr vorgenommen.