Step: PlentyAddOrders - REST API
Mit diesem Step können Sie neue Aufträge in Plentymarkets anlegen und / oder Zahlungen(Payments) für vorhandene Bestellungen importieren.
Benötigte Plentymarkets REST API Berechtigungen
(es sind nicht immer alle notwendig):
- Aufträge - Auftragsadressen - Auftragsadressen erstellen
- Aufträge - Aufträge erstellen
- Aufträge - Auftragseigenschaften - Eigenschaft erstellen
- Aufträge - Referenzen für Auftragsrelationen - Referenz erstellen
- Aufträge - Aufträge anzeigen
- Aufträge - Aufträge aktualisieren
- Kommentare - Kommentar erstellen
Step Konfiguration:
Input
|
Beschreibung
|
---|---|
account | Ihr Plentymarkets-Account um auf die Schnittstelle zuzugreifen. |
limit | Damit kann eingeschränkt werden wie viele Aufträge angelegt werden. Gerade während der Erstellung eines Flows ist es praktisch diesen Wert eher klein zu halten (z.B. 10), damit nur wenige Aufträge angelegt werden. Default: 50 |
datastore | Geben Sie hier den Datastore an, in denen die jeweiligen Auftragskopfdaten abgespeichert sind. Es werden automatisch alle verknüpften Auftragspositionen gefunden und an den Kopf angehangen. Der Datastore mit den Auftragskopfdaten benötigt ein PlentyOrderPayload Schema (siehe Datastores - Schema) und der zugehörige Child-Datastore ein PlentyOrderItemsPayload. Die Bestellpositionen müssen über eine Master-Child Beziehung mit dem Auftrag verbunden sein. |
folder
|
Geben Sie den Folder an, aus denen Sie die Aufträge aus dem Datastore abholen wollen. |
Payment Options | Hier können sie auswählen ob die Zahlungsvorgang für Bestellungen angelegt und die Bestellung somit als vollständig bezahlt importiert wird. Folgende Optionen sind möglich:
Default: No |
Vorbereitung:
Datastores mit Auftragskopf und Auftragspositionen anlegen
Damit der PlentyAddOrders Step funktioniert, müssen die Auftragsdaten bereits in 2 Datastores vorliegen:
- Im Master Datastore sind dabei die Kopfdaten der Bestellung gespeichert.
- Im Child Datastore sind die jeweiligen Artikelpositionen gespeichert und müssen per master_identifier dem jeweiligen Masterdatastore-Item (Bestellkopf) zugewiesen sein.
Schema:
Bestellung - Kopfdaten
Nachdem Sie die oberen Schritte ausgeführt haben, sehen Sie die beiden Datastores in der Datastore Ansicht so aus:
Dastores:
Aufträge in Datastores speichern
Benötigte Daten für Auftragskopf
Die Daten können sie manuell oder automatisch über einen Flow in den Datastore importieren. In der Regel wird es über einen Flow gemacht.
Einge Felder werden automatisch beim Import der Bestellung vom Step gefüllt und dürfen nicht gesetzt werden:
orderId, remoteStatusMessage, remoteStatusCode, remotePaymentStatus
Benötigte Spalten | Erläuterung |
---|---|
Kundendaten | customerId (und customerAddressId) oder billingCustomer… Spalten. Wenn keine customerId angegeben ist, wird automatisch ein neuer Kunde auf Grundlage der billingCustomer… Spalten angelegt. Die Spalten customerId und customerAddressId werden in diesem Fall automatisch bei Import befüllt. |
Lieferadressdaten | DeliveryAddressId oder deliveryCustomer… Spalten. Wenn keine deliveryAddressId angeben ist, wird eine neue Lieferadresse auf Basis der deliveryCustomer… Spalten angelegt. In diesem Fall wird die deliveryAddressId automatisch vom Step befüllt. |
plentyID | Die Plentymarkets ID des Webshops. |
Benötigte Daten für Auftragsposition (Pflichtfelder)
Zur Positionsanlage sind die beiden in der Tabelle aufgeführten Spalten notwendig.
Ist kein Preis (Netto oder Brutto) angegeben wird dieser automatisch anhand der angegebenen Variante zugeordnet.
Benötigte Spalten |
---|
variantId |
quantity |
itemText |
Spaltenbeschreibung:
Auftragskopf
Spaltenbezeichnung | Erläuterung |
---|---|
ID Spalten (werden teilweise, je nach Use-Case automatisch befüllt ) | |
orderID | Von Plenty vergebene Aufrags ID |
deliveryAddressID | ID der Versandadresse |
customerID | Kunden ID |
customerAddressID | ID der Rechnungsadresse |
paymentID | ID des Zahlungsvorgangs |
Status Spalten(werden automatisch befüllt) |
|
remoteStatusMessage | Wird von Synesty mit der "Antwort" von Plenty befüllt OrderID=XXX,OrderStatus=XXX |
remoteStatusCode | Wird von Synesty bei Übertragung der Bestellung an Plenty gesetzt SUCCESS = Erfolgreich übermittelt |
remotePaymentStatus | Wird von Synesty bei Anlage einer Zahlung mit dem Status befüllt |
Auftragseinstellungen |
|
plentyID |
ID des Mandanten / Webshops |
ownerID
|
ID des Benutzers / Eigners der Bestellung |
customerReference | Zeichen Kunde |
referrerID | Auftragsherkunft ID |
orderStatus | Auftragsstatus |
externalCustomerNumber | Externe Kundennummer |
externalOrderID | Externe Auftragsnummer |
warehouseID | Lager ID |
shippingProfileID | Versandprofil ID (z.B. für Paket) |
methodOfPaymentID | Zahlungsmethode ID |
orderType | Auftragstyp |
marking1ID | Markierung 1 ID |
shippingCosts | Versandkosten |
estimatedTimeOfShipment | vorrausichtliches Versanddatum |
referenceOrderID | ID des referenzierten Auftrags, z.B. bei Retouren |
Zahlungsvorgang |
|
paymentTransactionID | Zahlungstransaktion ID |
paymentBookingText | Verwendungszweck der Zahlung |
Kunden- / Rechnungsadressdaten |
|
billingCustomerFormOfAddress | Anrede (Rechnungsadresse) |
billingCustomerCompany | Firma (Rechnungsadresse) |
billingCustomerFirstName | Vorname (Rechnungsadresse) |
billingCustomerSurname | Nachname (Rechnungsadresse) |
billingCustomerAdditionalName | Namenszusatz (Rechnungsadresse) |
billingCustomerStreet | Straße (Rechnungsadresse) |
billingCustomerHouseNumber | Hausnummer (Rechnungsadresse) |
billingCustomerZip | Postleitzahl (Rechnungsadresse) |
billingCustomerCity | Stadt (Rechnungsadresse) |
billingCustomerCountryID | Land ID (Rechnungsadresse), siehe auch https://developers.plentymarkets.com/en-gb/interface/stable7/Order.html#order_countries |
billingCustomerEmail | E-Mail Adresse (Rechnungsadresse) |
billingCustomerTelephone | Telefon (Rechnungsadresse) |
billingCustomerFax | Fax (Rechnungsadresse) |
billingCustomerLanguage | Sprache (Rechnungsadresse), siehe https://developers.plentymarkets.com/en-gb/interface/stable7/Order.html#order_currency |
billingCustomerVatID | Umsatzsteuer-Identifikationsnummer (Rechnungsadresse) |
billingDebitorAccount | Mandant (Kunde) |
billingCustomerPlentyID | Kundenklasse (Kunde) |
billingCustomerPostNumber | Postnummer (Rechnungsadresse) |
billingCustomerContactPerson | Ansprechpartner (Kunde) |
billingCustomerClass | Kundenklasse (Kunde) |
billingCustomerPaymentDueWithin | Zahlungsziel (Kunde) |
Lieferadressdaten |
|
deliveryCustomerCompany | Firma (Lieferadresse) |
deliveryCustomerFirstName | Vorname (Lieferadresse) |
deliveryCustomerSurname | Nachname (Lieferadresse) |
deliveryCustomerAdditionalName | Namenszusatz (Lieferadresse) |
deliveryCustomerStreet | Straße (Lieferadresse) |
deliveryCustomerHouseNumber | Hausnummer (Lieferadresse) |
deliveryCustomerZip | Postleitzahl (Lieferadresse) |
deliveryCustomerCity | Stadt (Lieferadresse) |
deliveryCustomerCountryID | Land ID (Lieferadresse), siehe auch https://developers.plentymarkets.com/en-gb/interface/stable7/Order.html#order_countries |
deliveryCustomerEmail | E-Mail Adresse (Lieferadresse) |
deliveryCustomerTelephone | Telefon (Lieferadresse) |
deliveryCustomerFax | Fax (Lieferadresse) |
deliveryCustomerVatID | Umsatzsteuer-Identifikationsnummer (Lieferadresse) |
deliveryCustomerPostNumber | Postnummer (Lieferadresse) |
Auftragsnotiz |
|
infoUserID | Benutzer ID der Auftragsnotiz |
info | Notiz am Auftrag |
Auftragsposition
Spaltenbezeichnung | Erläuterung |
---|---|
variantId | ID der Variante in ihrem Plentymarkets Shop |
quantity | Bestellmenge |
price | Preis Brutto |
priceNet | Preis Netto |
VAT | Prozentsatz MwSt |
vatCountryId | ID des Landes für diesen MwSt Satz (Einstellungen » Mandant (Shop) » Standard » Umsatzsteuersätze) |
currency | Währung, siehe https://developers.plentymarkets.com/rest-doc/introduction#currencies |
itemText | Artikelname |
itemRebate | Artikel Rabatt |
Anwendungsbeispiel:
In der Regel ist bereits in einem vorherigen Prozess ein Master-Child Datastore mit Bestellungen (Kopf- und Positionsdaten) gelaufen - siehe Vorbereitung.
Der “PlentyAddOrders” Step greift nun auf diesen Master-Child Datastore zu und sendet alle Datensätze im PROCESSING_STATUS = UNPROCESSED an Plentymarkets.
Alle erfolgreich an Plentymarkets übermittelten Aufträge werden im Auftragskopf Datastore als “PROCESSED_SUCCESS” markiert. Desweiteren erhalten die Aufträge die von Plenty angelegte Auftragsnummer (OrderID) und werden mit mit einem StatusCode (SUCCESS bei Erfolg, ERROR bei fehlerhafter Übertragung) gekennzeichnet.
Ein erfolgreich übermittelter Auftrag, sieht im Auftragksopf Datastore in etwa so aus:
Hinweis: Falls bei der Übermittlung an Plenty ein Fehler auftritt, prüfen Sie ob alle benötigten Spalten (siehe oben) gefüllt sind.
Inputs
Das sind die Optionen, mit denen man den Step konfigurieren kann.
Name | Datentyp | Beschreibung | Pflichtfeld | Werte | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
account | ACCOUNT | Ihre PlentyONE Verbindung | Ja | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
datastore | DATASTORE | Der Datastore, der die Aufträge für PlentyONE enthält. Der Datastore muss mit dem plentymarkets-Bestellschema (PlentyRESTOrderPayloadProvider) kompatibel sein. | Ja | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Folgende Felder sind zu konfigurieren:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
folder | STRING | Der Ordner des Datenspeichers. | Nein | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
limit | STRING | Beschränkt die Anzahl der verarbeiteten Aufträge pro Ausführung. | Nein | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sortByField | STRING | Optionales Feld zum Sortieren der Datensätze nach einem der indizierten Datastore Felder. | Nein |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sortDir | STRING | Die Sortierreihenfolge (Aufsteigend oder Absteigend). | Nein |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addIncomingPayment | STRING | Option für die Zahlungn der Bestellung setzen. 'Keine Zahlungen erstellen' - Bestellung wird ohne Zahlung angelegt (Standard) | 'Vollständige Zahlung für alle Bestellungen' : Es wird eine vollständige Zahlung für alle Aufträge erstellt. | 'Nur wenn Spalte 'paymentTransactionID' gesetzt ist' : Es wird eine vollständige Zahlung angelegt, wenn paymentTransactionID in der Datenzeile des Auftragskopfs gesetzt ist. | 'Nur Zahlungs-ID mit Auftrag verknüpfen' : Es wird nur eine Verknüpfung zwischen einer Zahlung und einem Auftrag erstellt. Sie müssen eine gültige paymentID in der Kopfzeile setzen. | Nein |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
identifierOrderId | STRING | Setzen Sie diese Option, um PlentyONE Order ID in das Feld identifier2 oder identifier3 des Datensatzes zu schreiben. | Nein |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableExternalOrderIDCheck | BOOLEAN | Wenn die Option aktiviert ist, wird die Bestellung anhand der externalOrderID gesucht. Wenn die Bestellung bereits in PlentyONE vorhanden ist, wird sie nicht erneut angelegt. | Nein |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
errorProcessingStatus | STRING | Der ausgewählte 'Processing Status' wird für fehlgeschlagene Aufträge (Datensätze im Master-Datastore) gesetzt. Ändern Sie diesen Wert nur, wenn Sie wissen, was Sie tun. Standard: PROCESSED_ERROR | Nein |
|
Outputs
Das sind die Ergebnisse des Steps, die von nachfolgenden Steps, nach der Ausführung verwendet werden können.
Name | Datentyp | Beschreibung | Pflichtfeld | Werte | |||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
result | SPREADSHEET | Ein SPREADSHEET, dass die Ergebnisse des Auftragsimports enthält. | Ja | ||||||||||||||||||||||||||||||||||||||||||||||
Folgende Felder sind im Output enthalten:
|