Hallo zusammen,
ich bin aktuell dabei, Shopify-Anbindung an Xentral zu optimieren und stoße auf folgendes Problem im Importprozess. Shopify hat in letzter Zeit angefangen, zusätzliche Infos über Orders in die Order zu schreiben.
Ausgangslage:
-
Xentral importiert die Aufträge über die Shopify-API.
-
Shopify schreibt regelmäßig Zusatzinfos wie rc_sequence_details, rc_order_type oder from new-customer-accounts als note_attributes in die Aufträge.
-
Diese Felder werden in Xentral als Notiz übernommen und führen dazu, dass Aufträge „angehalten“ werden, bis wir die Notiz prüfen – obwohl wir die Infos gar nicht brauchen.
-
Echte Kundennachrichten landen immer im <note>-Feld und nicht in note_attributes. Die sollen natürlich erhalten bleiben.
Ziel:
Ich möchte, dass alle note_attributes im importierten XML-Auftrag entfernt werden, damit unsere Aufträge in Xentral nicht mehr unnötig angehalten werden.
Was ich bisher versucht habe:
-
Xentral Smarty-Regeln:
-
{remove tag="note_attributes"}
-
{RemoveTagNodeAttributes}
-
{RemoveTag tag="note_attributes"}
Leider werden diese Tags/Funktionen von unserem Xentral-Importprozess nicht erkannt (Fehlermeldung: „unknown tag“).
-
-
Versuch, den Inhalt zu leeren:
-
Ich habe versucht, über eine Smarty-Variable wie {assign var="note_attributes" value=""} den Block leer zu machen. Auch das hat keine Auswirkung – die Felder bleiben weiterhin im XML.
-
-
Shopify-Seite:
-
Anpassungen am Shopify-Workflow sind mit Standard-Shopify (kein Plus) nicht möglich, da die Anlage der note_attributes systemseitig erfolgt.
-
Der aktuelle Stand:
-
Im importierten XML taucht die komplette <note_attributes>-Node weiterhin mit ihren Einträgen auf, z. B.:
-
<note_attributes>
<item0>
<name>rc_sequence_details</name>
<value>211296919-1</value>
</item0>
<item1>
<name>rc_order_type</name>
<value>recurring</value>
</item1>
</note_attributes> -
Ich habe (ohne Erfolg) versucht, die Nodes entweder komplett zu entfernen oder zumindest zu leeren.
-
Ein externes Preprocessing (z. B. per Python-Skript) wäre zwar möglich, ist aber im Workflow aktuell nicht vorgesehen. Ich würde das gern direkt im Xentral-Importprozess lösen.
Meine Frage an die Community:
-
Hat jemand eine funktionierende Lösung gefunden, um im Xentral-Importprozess gezielt die Node <note_attributes> oder bestimmte Einträge daraus zu entfernen?
-
Gibt es ein Template, eine Funktion oder einen Trick, den ich evtl. übersehen habe?
-
Gibt es vielleicht eine neuere Möglichkeit in aktuellen Xentral-Versionen, dies ohne externes Script direkt zu regeln?
Über einen Hinweis oder ein funktionierendes Beispiel würde ich mich riesig freuen!
Danke vorab
Merlin