Gebinde-Management über REST

Anlegen/bearbeiten von Gebinden: http://connect-api.wemalo.com/#api-Product-addUnit
Laden der verfügbaren Gebinde-Einheiten: http://connect-api.wemalo.com/#api-Product-getUnits

Außerdem: beim Anlegen eines WE-Auftrages kann in der Position die ID der Gebinde-Einheit eingetragen werden: http://connect-api.wemalo.com/#api-GoodsReceipt-addGoodsReceipt
Dort gibt es jetzt den Parameter „productUnitId“.

Beispiel:

Für ein Produkt wird eine Gebinde-Einheit „Vorteilspack 5 Stück“ angelegt. Diese Gebindeeinheit beinhaltet 5 Stück des besagten Produktes.
Bei der Übermittlung des Wareneinganges kann diese Gebinde-Einheit mit einer Stückzahl angegeben werden, z.B. 2 Stück.
In dem Fall erwartet wemalo 10 Stück des Produktes (2 mal das Gebinde mit 5 Stück => 2*5=10).




Versandkostenmatrix

Mit Hilfe der Versandkostenmatrix werden die Versandkosten je Paket nach Empfängerland, Gewicht und Versanddienstleister im Mandantenstamm hinterlegt, um bei der Abrechnungsgenerierung exakte Versandpreise ermitteln zu können.

Vorlage je Mandant

Im Mandantenstamm kann unter Abrechnung->Versandkostenmatrix eine Vorlage je Versanddienstleister heruntergeladen werden. Dem Benutzer werden dabei alle Versanddienstleister angezeigt, die für den Mandanten eingerichtet worden sind.

Vorlage auf Lagerebene

Auf Lagerebene kann eine Vorlage hinterlegt werden, die für Versendungen eingesetzt wird, die nicht über den Mandanten definiert worden sind.

Spezifikation

MatchingID;Dispatcher;Product;Comments;Country;Country DE;Country Code;ZIP;BasePrice;KiloPrice;Weight;Price
  • Die Werte werden mit einem Semikolon voneinander getrennt.
  • Es ist auf die richtige Reihenfolge zu achten und die Datei muss als UTF-8 kodiert werden.
  • Es gibt eine Datei pro Versanddienstleister.
  • Damit wemalo bei der Preisermittlung ein Profil einem Eintrag in der CSV-Datei zuordnen kann, wird die Matching-ID benötigt. Diese beinhaltet eine Kombination aus Dienstleister, Produkt und optionale Zusatzleistungen (wie z.B. Nachname).
  • Die Spalte Dispatcher beinhaltet den Versanddienstleister (sollte für eine komplette Datei immer identisch sein). In der Spalte Product wird das Versandprodukt eingetragen.
  • In der Spalte Comments kann ein aussagekräftige Name für die Preislistenposition hinterlegt werden. In der Abrechnung wird die Eintragung in dieser Spalte mit in die Preisberechnung aufgenommen.
  • Die Spalten Country, Country DE und Country Code beschreiben das Empfängerland (englische und deutsche Bezeichnung, sowie der internationale Matching-Code).
  • ZIP beinhaltet die Postleitzahl (in der ersten Version der Matrix nicht verwendet).
  • Über BasePrice kann ein Basis-Preis eingetragen werden, der anhand KiloPrice je Kilo erweitert wird. In der ersten Umsetzungsversion der Matrix wird das nicht angewendet.
  • Die beiden für die Preisermittlung relevanten Spalten sind Weight und Price. Weight gibt dabei die Gewichtsgrenze an, bis zu der die jeweilige Zeile relevant ist. Die Vorlage ist so aufgebaut, dass jede Kombination aus Versandprodukt und Land mit den Gewichten 1KG bis 40KG aufgelistet wird. Wiegt ein Paket 39,5 KG, so wird der Preis für 40KG verwendet. Wiegt es 38,9KG, ist der Preis bei 39KG ausschlaggebend usw. In der Spalte Price wird der Versandpreis in Euro angegeben, wobei die Eingabe von . als Trennzeichen für Nachkommastellen zu bevorzugen ist (aber nicht zwingend erforderlich).

Matrix erstellen

Um eine Matrix für einen Mandanten zu erstellen, kann auf eine Vorlage aufgebaut werden. Dazu können pro Lager Vorlagen je Versanddienstleister hinterlegt werden. Über den Mandanten kann zusätzlich eine auf die für den Mandanten eingerichteten Versandprofilen zugeschnittene Vorlagendatei heruntergeladen werden.

Übersicht der bisher hinterlegten Versandmatrizen

Anzeige einer hinterlegten Matrix als HTML-Ansicht

 

Download als CSV


Ansicht nach CSV-Export

Versandprofil

  • Im Versandprofil kann eingestellt werden, ob das Profil in der Generierung der Preise berücksichtigt werden soll.

Matrix anwenden

  • Im Bereich Versand in der Preisliste muss dazu die Option „Versandkosten“ aktiviert werden.



Trackingnummer-Upload

wemalo bietet für manche Versanddienstleister (z.B. GLS) einen manuellen Upload von Trackingnummern an. Dazu wird ein Upload-Button im DockManagement eingeblendet, über den eine CSV-Datei für den jeweiligen Versanddienstleister hochgeladen werden kann.

Spezifikation

NICHT VERWENDET;Mandantenauftragsnummer;Trackingnummer;NICHT VERWENDET(Optional);NICHT VERWENDET(Optional)

Bitte beachten: die erste Spalte wird zwar nicht verwendet, muss aber dennoch gefüllt werden (der Import geht nur nach Spalte 2 und 3).

Beispiel

21.09.2017;test 2;123456789;wemalo Kunde;1030
21.09.2017;7531;987654321;Max Mustermann;1170

Wobei nur die zweite und dritte Spalte verwendet werden!

 




Rollende Inventur

Die rollende Inventur ist eine stichprobenartige Inventur, die je nach eingestelltem Intervall während der Kommissionierung stattfindet. Dabei wird die rollende Inventur zunächst auf Lagerebene aktiviert. Für die einzelnen Mandanten kann anschließend eingestellt werden, ob die rollende Inventur durchgeführt und welches Intervall verwendet werden soll.

Einstellung auf Lagereben

Durch markieren der Option „Rollende Inventur aktivieren“ kann auf Lagerebene die rollende Inventur aktiviert werden. Über diese Checkbox kann für das komplette Lager bestimmt werden, ob rollende Inventuren generell durchgeführt werden dürfen oder nicht.

Einstellung im Mandantenstamm

Im Mandantenstamm wird die rollende Inventur über „Konfiguration“->“Rollende Inventur“ eingestellt:

  • „Rollende Inventur aktivieren“ aktiviert die rollende Inventur für den Mandanten. Die rollende Inventur wird nur in den Lagern durchgeführt, in denen sie global aktiviert worden ist.
  • „Rollenden Inventur bei Anzahl Teilen durchführen“ definiert nach wie vielen Picks eine Inventurzählung stattfinden soll.
  • Die E-Mail-Adresse eingetragen in „Empfänger für Rollende Inventur-Ergebnis“ bekommt eine Übersicht des Inventurergebnisses per E-Mail zugesendet.

Vorgehensweise

Während des Picks wird der Inventur-Zähler hochgezählt. Wenn das im Mandantenstamm hinterlegte Limit erreicht worden ist, dann wird der Picker zu einer rollenden Inventur aufgefordert. Dabei müssen alle Artikel des aktuellen Mandanten auf dem Stellplatz gezählt werden, von dem der Picker gerade gepickt hat. Das Ergebnis wird verarbeitet und per E-Mail verschickt.

Es findet keine Buchung der Differenzen statt!

Sollte es zu Differenzen gekommen sein, muss ein normaler Inventurauftrag für den Mandanten und den Stellplatz erstellt und der Stellplatz nochmals geprüft werden.




REST API workflow

Is using wemalos rest api, at least the following calls might be used for interacting with wemalo.

First of all, an account needs to be set up for you. You’ll get a rest api token that is being used for authorization. Please see header information: Authorization

Product master data

Orders




Trackingnummer E-Mail bei WooCommerce einfügen

Unser WooCommerce-Plugin schreibt die Trackingnummer in das Order-Feld tracking_number. Dabei kann es sein, dass ein Auftrag aus mehreren Paketen besteht und in dem Feld die Trackingnummern mit Komma getrennt erscheinen.

Zusätzlich wird in das Feld carrier eingetragen, mit welchem Versanddienstleister (z.B. DHL, DPD o.ä.) das Paket versendet worden ist.

Über das Template customer-completed-order.php kann die Vorlage beim E-Mail-Versand eingestellt werden. Über das Admin-Menü WooCommerce->Einstellungen->E-Mails kann die Vorlagendatei in das Template und darüber anschließend angepasst werden.

Die Trackingnummern könnten in der Datei z.B. oberhalb des Footers angezeigt werden, also direkt oberhalb von:

/**
 * @hooked WC_Emails::email_footer() Output the email footer
 */
do_action( 'woocommerce_email_footer', $email );

Der folgende Code-Ausschnitt ließt die Trackingnummern aus und gibt sie als DHL-Link in der E-Mail wieder. Für den Produktionseinsatz müsste man an dieser Stelle zusätzlich noch den Carrier auslesen und je nach Carrier den Link entsprechend zusammenstellen.

$post_id = $order->ID;
echo "tracking number for $post_id ";
$tn = get_post_meta($post_id, "tracking_number");
if ($tn) {
 $numbers = explode(',', $tn[0]);
 if ($numbers) {
 foreach ($numbers as $code) {
 echo '<a href="https://nolp.dhl.de/nextt-online-public/de/search?piececode="'.$code.'>'.$code.'</a><br/>';
 }
 }
}

/**
 * @hooked WC_Emails::email_footer() Output the email footer
 */
do_action( 'woocommerce_email_footer', $email );