@Jtl - für den Fall, dass das hier nicht erwünscht ist, bitte löschen
Moin zusammen,
ich habe mal ein kleines Skript zusammengezimmert, welches über einen
Workflow getriggert die Sendungsdaten an PayPal übertragen kann. Evtl. fndet das ja jemand nützlich, bis es da was natives von JTL gibt.
Was macht das Skript
Es implementiert in Teilen die Tackers batch resource group von PayPal, welche hier beschrieben ist:
https://developer.paypal.com/api/tracking/v1/#trackers-batch_post
Limitationen
- Das Skirpt unterstützt das Setzen der Sendungsdaten von genau einer Transkation. Sollen Sendungsdaten für meherere Transaktionen gesetzt werden, muss das Skript entsprechend oft aufgerufen werden.
- Es wird nur der Shipping Status ```SHIPPED``` unterstützt
- wenn keine Sendungsnummer angegeben wird, setzt Paypal den Carrier automatisch auf ```MANUAL```
Wie startet man das Skript
Am Besten über einen Workflow. Hier bietet sich zB "Versand - Versendet" an.
Bedingung auf Zahlungsart == Paypal
- Aktionen
- Programm/Skript: pp_tracking_id.exe
- Parameter:
Code:
-p transaction_id={{ Vorgang.Auftrag.Zahlungen.ErstesObjekt.ExterneTransaktionsID }} tracking_number={{ Vorgang.Pakete.ErstesObjekt.TrackingID }} carrier_name_other="{{ Vorgang.Pakete.ErstesObjekt.Versandart.Name }}"
Parameter, die Leerzeichen enthalten (können) zB Carrier Name bitte in Hochkommas einschließen
- Auf Prozess warten: Ja
- Kommandozeile benutze: ja
- Pfad: Da wo das Skript liegt
Den Anhang 79153 betrachten
Testweise kann es auch über die Kommandozeile ausgeführt werden:
Code:
pp_tracking_id.exe -p transaction_id=6U919960K01334848 tracking_number= carrier_other_name=Deutsche_Post
Skipt und README.md liegen hier:
https://www.dropbox.com/sh/ni1ekzsff5z0dqo/AAA406x-YbKbJW6L1RZ4e9ZBa?dl=0
Bitte unbedingt auch die README.md lesen!
Zu guter Letzt noch ein paar Hinweise:
- Ich übernehme keinerlei Haftung
- Das Skript "works as designed"
- ich habe es nur mit einzelen Aktionen gegen PayPals Test-API getestet, daher kann ich nicht sagen, wie weit es skaliert. Ob es mit dutzenden/hunderten oder gar tausenden gleichzeitigen Aktionen funktionier dürfte insbesondere auch von der Leistungsfähig der Maschien abhängen auf der es läuft, da für jede einzelne PayPal Transktions ID eine Instanz des Skripts gestarted und nach Erledigung aber auch gleich wieder beendet wird.
- das Skript ist in Python geschrieben. Der Source-Code steht auch zur Verfügung and kann gerne verwendet/verbessert werden
- Support auf best-effort Basis