Sendungen anlegen
Wird ein Paket in der JTL Wawi versendet wird der Inhalt dieses Paketes bei exporto angemeldet. Dabei werden die folgenden Daten übertragen:
Verwendete Datenfelder
- shipmentId
- Nummer des Lieferscheines zu dem die Sendung gehört
- domesticTrackingId
- Trackingnummer des Paketes, welches Verwendet wurde, um das Paket innerhalb Deutschlands an exporto zu senden.
Üblicherweist ist diesed Feld nicht gefüllt, da der in der Wawi hinterlegte Trackincode üblicherweise als
Last-Mile-Trackingcode verwendet wird. Dieses Verhalten kann
umgestellt werden, indem der Parameter
trackingCodeMode
aufdomestic
gesetzt wird. - foreignOutboundTrackingId
-
Trackingnummer des Paketes, welches für die Hinsendung verwendet wurde. Ist kein Trackingcode vorhanden und der Hinweis des Pakets enthält
#RTC:
wird alles nach dem Doppelpunkt als Trackingnummer verwendet.Note
Dieser Trackingcode wird nur übertragen, wenn der Parameter
trackingCodeMode
aufforeign
gesetzt ist. Wird der Parameter geändert, wird kein Outbound-Trackingcode mehr übertragen. - foreignInboundTrackingId
- Trackingnummer des Paketes, welches für die Rücksendung verwendet werden soll (Retourentrackingcode).
- weight
-
Gewicht des Paketes. Dies ist entweder das von JTL berechnete Gewicht, das manuel in JTL eingetragene Gewicht oder das Gewicht, welches während des Versandes gewogen wurde. Die in JTL gespeicherten Gewichte werden als Kilogram gelesen und in Gramm übertragen.
Falls im Lieferschein ein Gewicht von 0g hinterlegt sein sollte. Wird versucht das Sendungsgewicht anhand des ín den Artikeldaten hinterlegten Versandgewichtes zu berechnen. Handelt es sich bei einem Artikel um eine Stückliste, so wird das Gewicht der Stückliste verwendet, sofern es geplegt ist. Andernfalls wird das Gewicht der Komponenten verwendet. Das Stücklistengwicht wird anteilig nach Anzahl auf die Komponenten verteilt.
Kann nach der oben beschriebenen Methode kein Gewicht ermittelt werden, wird das als letzte Rückfallebene ein statis konfigurierbares Standardgewicht verwendet. Dies können Sie wie folgt in der Datei
config.json
konfigurieren:{ // ... "QueryParameters": { // ... "GetShipment": { // ... "fallbackWeight" : 1000 } } }
Es werden alle Lieferscheinpositionen übertragen, die eine Artikelposition referenzieren. Dabei werden folgende Datenquellen verwendet:
- articleId
- Die Artikelnummer des Artikels. Hierbei wird die Artikelnummer verwendet, wie sie in JTL in der Artikelübersicht angezeigt wird. Falls im Auftrag eine abweichende Artikelnummer verwendet wurde, wird diese nicht übertragen.
- name
- Die Bezeichnung der Position im Auftrag.
- quantity
- Die Anzahl der Artikel, die im Paket enthalten sind.
- priceNet
- Der Netto Einzelpreis der Position. Falls die Postion eine Stücklistenkomponente ist lesen Sie bitte Verarbeitung von Stücklisten.
- priceGross
- Der Brutto Einzelpreis der Position. Falls die Postion eine Stücklistenkomponente ist lesen Sie bitte Verarbeitung von Stücklisten.
- barcode
- Der Barcode des Artikels, so wie er in der Artilkelübersicht angezeigt wird.
Important
Für die Verzollung ist es notwendig, den Inhalt jedes Paketes einzeln anzumelden. Falls ein Lieferschein aus mehr als einem Paket besteht, ist der Inhalt eines Paketes in JTL nicht zu rekonstruieren. Aus diesem Grund sollten bei Sendungen, die an exporto übergeben werden keine Mehrpaketsendungen verwendet werden. Stattdessen sollten die Aufträge mit jeweils einem Paket teilgeliefert werden.
Verarbeitung von Stücklisten
Stücklistenkomponenten werden in JTL immer mit einem Verkauftpreis von 0€ angelegt. Da jedoch die Komponenten die Artikel sind, die zur Verzollung angemeldet werden müssen, musss für die Komponenten ein Preis berechnet werden. Um den Preis einer Stückliste auf die Komponenten zu verteilen, sind drei Verfahren möglich:
- Verteilung nach Komponenten EK
- Verteilung nach Gewicht
- Verteilung nach Anzahl
Die Berechnung des Preises erfolgt in allen Fällen nach der selben Formel:
\(p_{i} = \frac{p}{\tilde{n}} \cdot \frac{n_{i} \cdot \omega_{i}}{\sum_{j=1}^{n} n_{i} \cdot \omega_{i}}\)
Die Bedeutung der Variablen ist wie folgt:
\(p_{i}\) ist der Preis der Komponente \(i\)
\(p\) ist der Preis der Stückliste
\(n_{i}\) ist die Anzahl der Komponente \(i\)
\(\omega_{i}\) ist das mathematische Gewicht der Komponente \(i\). Dies bedeutet, je nach Method ist dies
- der EK der Komponente
- das Gewicht der Komponente
- Der konstante Wert
1
.
\(n\) ist die Anzahl der Komponenten
\(\tilde{n}\) ist die Bestellmenge der Stückliste
Nach welchem Verfahren der Preis verteilt wird, wird durch den @componentWeight Parameter gesteuert. Dabei sind folgende Werte möglich:
purchasePrice
: Verteilung nach Komponenten EKweight
: Verteilung nach Gewichtquantity
: Verteilung nach Anzahl
Sie können den Parameter mit folgenden Einstellungen in der Datei config.json
setzen:
{
// ...
"QueryParameters": {
// ...
"GetShipment": {
// ...
"componentWeight" : "quantity"
}
}
}
Anpassen der Datenquelle
Die übertragenen Stammdaten können über eine überschriebene Version der Datei GetProduct.sql
angepasst werden.
Lesen Sie hierzu Überschreiben von Abfragen.