Hi alle zusammen,
vielleicht hat hier ja jemand eine gute Idee.
Wir nutzen WooCommerce und ich habe in einem Sekundärshop ein Plugin (YITH Multi Vendor) für Subshops installiert, um bspw. Schulbekleidung in Kooperation mit den jeweiligen Fördervereinen zu verkaufen. Dabei bekommt der Verein eine Kommission auf die Verkäufe.
Dazu ist es notwendig, dass das Plugin eine Sub-Order ohne Versandkosten anlegt, da die Kommission ja nur auf den reinen Bestellwert bezahlt wird. Diese Sub-Order, die auch mittels einer Parent_ID in REST als Sub-Order zu erkennen ist, wird leider durch Plenty ebenso importiert, ich habe also am Ende immer zwei Bestellungen im System, 1x bspw. externe Auftrags-ID 27960 und eine 27961 ohne Versandkosten (die Sub-Order).
Nun habe ich heute den Tag damit verbracht, in der functions.php über unzählige Filter zu versuchen, die Sub-Order zu unterdrücken. Das ging erst gar nicht, da das Plugin offenbar so programmiert ist, normale Filter zu ignorieren, mit einer Injection hat es dann aber doch geklappt.
Und hier kommt das Merkwürdige, wenn ich über den Get-Call die Bestellungen aufrufe, ist die Sub-Order nicht zu sehen. Wenn ich die offene/geschlossene Klammer im Export überprüfe, um zu schauen, ob dort mehrere Orders auftauchen, gibt es nur eine Order, entsprechend meines Filters hat die auch die parent_id 0 und auch nur die externe Auftrags-ID 27960.
Aber was passiert, die Sub-Order taucht weiterhin in Plenty wie von Geisterhand auf und sie hat sogar die Woo-Nummer 27961. Wenn ich aber im REST-Export nach 27961 suche, ist KEIN Eintrag der Nummer vorhanden, woher Plenty die 27961 nimmt ist mir daher ein völliges Rätsel. Damit scheidet selbst aus, dass irgendwie die Sub-Order in der normalen Order versteckt ist, denn irgendwo müsste dann ja wenigstens die Sub-ID zu sehen sein.
Ich habe dann gedacht, vielleicht ruft er irgendwie die Sub-Order direkt ab über eine interne ID (da es einen Key „has_sub_order“ gibt), also habe ich eine weitere Routine eingebaut, dass die Sub-Order selbst bei einem direkten Abrufen der Sub-Order über REST nur ein 403 auswirft. Und selbst das stoppt Plenty nicht davon, die Sub-Order anzulegen.
Was ich morgen noch machen werde, ist, die Logs auf eine höhere Stufe zu stellen und dann zu schauen, ob ich erkennen kann, woher Plenty die Daten bezieht. Aber vielleicht hat ja jemand mal ein ähnliches Problem gehabt und kennt eine weitere Route, über die sich Plenty (bei Woo) die Orders holt, abseits vom gängigen abruf wie bspw. https://www.shirtnation.de/wp-json/wc/v3/orders/
Danke und Grüße
Alex