Schnittstellenleitfaden: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
 
(50 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
* '''für den Stammdatenexport an externe Webshop-Systeme'''
* '''Stammdatenexport an externe Webshop-Systeme'''
* '''für den Auftragsimport aus externen Webshop-Systemen'''
* '''Auftragsimport aus externen Webshop-Systemen'''


''Stand Dezember 2021''
''Stand Frühjahr 2026''


=Vorbemerkungen=
=Vorbemerkungen=
Zeile 25: Zeile 25:
Vor der Implementierung fordern wir beim Auftraggeber eine Freigabe zur Erstattung der Beratungskosten an.  
Vor der Implementierung fordern wir beim Auftraggeber eine Freigabe zur Erstattung der Beratungskosten an.  
Der entstandenen Aufwand wird dokumentiert.
Der entstandenen Aufwand wird dokumentiert.
==Formatkennzeichen==
{| class="wikitable"
! Zeichen !! Bedeutung
|-
| Alphanumerisch || UTF-8 Zeichenkette, ohne Delimiter
|-
| Gleitkommazahl || (-)n0,n, maximal 32-Bit
|-
| Ganzzahl || (-)i, maximal 32-Bit
|-
| Logischer Wert || True/False oder Wahr/Falsch, ohne Delimiter
|-
| Datum || ISO 8601 JJJJ-MM-TT, Zeitanteil wird ignoriert
|-
| Uhrzeit || ISO 8601 hh:nn:ss, Millisekunden werden ignoriert
|-
| Datumsstempel || JJJJ-MM-TT hh:nn:ss, Millisekunden werden ignoriert
|}
=Dateien=


==Dateiformate==
==Dateiformate==


* Der Dateityp ''[[wikipedia:de:CSV_%28Dateiformat%29|CSV]]'' wird mit deutschen Formatierungen und Zeichensätzen ausgegeben. Als Delimiter ist ausschließlich das Semikolon gültig, Zeilen wenrden immer mit einem Semikolon abgeschlossen.
'''[[wikipedia:de:CSV_%28Dateiformat%29|CSV-Dateien]]'''
* Der Dateityp ''[[wikipedia:de:Extensible_Markup_Language|XML]]'' wird RFC- und W3C-konform im UTF-8 Zeichensatz ausgegeben.
* Es werden deutsche Formatierungen und Zeichensätze verwendet
* Zeichensatz ist UTF-8
* Spalten werden, '''durch Semikola getrennt'''
* Jeder Datensatz wird '''mit einem Semikolon abgeschlossen'''
* Es werden '''keine Delimiter''' verwendet, der Typ eines Datensatzes ergibt sich aus der Reihenfolge
 
'''[[wikipedia:de:Extensible_Markup_Language|XML-Dateien]]'''
* RFC- und W3C-konform
* Zeichensatz ist UTF-8


==Dateitransfer==
==Dateitransfer==
Zeile 40: Zeile 70:


{{Tipp1|Neben den branchenspezifischen Schnittstellen (KOLLEX, OctopusOrder, Gastivo) unterstützt die Anwendung auch EDI-Formate}}
{{Tipp1|Neben den branchenspezifischen Schnittstellen (KOLLEX, OctopusOrder, Gastivo) unterstützt die Anwendung auch EDI-Formate}}
==Formatkennzeichen==
{| class="wikitable"
! Zeichen !! Bedeutung !!Format
|-
| A || Eindimensionaler String || UTF-8, ohne Delimiter
|-
| N || Gleitkommazahl || (-)n0,n, maximal 32-Bit
|-
| I || Ganzzahl || (-)i, maximal 32-Bit
|-
| B || Logischer Wert || True/False oder Wahr/Falsch, ohne Delimiter
|-
| D || Datum || ISO 8601 JJJJ-MM-TT, Zeitanteil wird ignoriert
|-
| T|| |Uhrzeit || ISO 8601 hh:nn:ss, Millisekunden werden ignoriert
|-
| @ || Zeitstempel || JJJJ-MM-TT hh:nn:ss, Millisekunden werden ignoriert
|}
Es werden generell keine Delimiter eingesetzt.


==Bereitstellung von Daten==
==Bereitstellung von Daten==
Zeile 70: Zeile 78:
* Die Einstellungen für für den Datenaustausch mit Shopware oder Magento u.ä. finden Sie  [[WEBDRINK-Schnittstelle|hier]].
* Die Einstellungen für für den Datenaustausch mit Shopware oder Magento u.ä. finden Sie  [[WEBDRINK-Schnittstelle|hier]].


==Stammdatenexport als CSV==
=Stammdatenexport als CSV=
Die Daten werden mit einer FTP-Verbindung übertragen. Nach erfolgreichem Verbindungsaufbau werden die [[wikipedia:de:CSV_%28Dateiformat%29|CSV]]-Daten in einem zu definierenden Ordner kopiert.
Die Daten werden mit einer FTP-Verbindung übertragen. Nach erfolgreichem Verbindungsaufbau werden die [[wikipedia:de:CSV_%28Dateiformat%29|CSV]]-Daten in einem zu definierenden Ordner kopiert.


===Vorgaben===
==Kunden.csv==
 
* Daten werden, '''durch Semikola getrennt''', bereitgestellt. Jeder Datensatz wird '''mit einem Semikolon abgeschlossen'''.
* Es werden '''keine Delimiter''' verwendet, der Typ eines Datensatzes ergibt sich aus der Reihenfolge.
* Der Zeichensatz ist UTF-8.
 
===Feldbeschreibungen Datei "Kunden.csv“===
Nachfolgend wird ein Kundendatensatz beschrieben.
Nachfolgend wird ein Kundendatensatz beschrieben.


Zeile 89: Zeile 91:
|-
|-
|KDNr  
|KDNr  
|A20 (eingeschränkter Zeichensatz)
|Alphanumerisch
|Eindeutige Identnummer
|Eindeutige Identnummer
|-
|-
|Anrede  
|Anrede  
|A10
|Alphanumerisch
|Anrede, optional
|Anrede, optional
|-
|-
|Vorname
|Vorname
|A80
|Alphanumerisch
|Vorname, optional
|Vorname, optional
|-
|-
|Name/Firma
|Name/Firma
|A80
|Alphanumerisch
|Firmenname oder Name
|Firmenname oder Name
|-
|-
|Zusatz
|Zusatz
|A80
|Alphanumerisch
|optional Abteilung etc.
|optional Abteilung etc.
|-
|-
|Strasse
|Strasse
|A20
|Alphanumerisch
|Straße mit Hausnummer
|Straße mit Hausnummer
|-
|-
|PLZ
|PLZ
|A5
|Ganzzahl
|ohne Nationalitätskennzeichen
|ohne Nationalitätskennzeichen
|-
|-
|Ort
|Ort
|A80
|Alphanumerisch
|Ort
|Ort
|-
|-
|Telefon
|Telefon 1
|A20
|Alphanumerisch
|Telefon 1, optional
|optional
|-
|-
|Mobil
|Telefon 2
|A20
|Alphanumerisch
|Telefon 2, optional
|optional
|-
|-
|Email
|Email
|A255
|Alphanumerisch
|Mehrfacheinträge mit „,“ getrennt
|Mehrfacheinträge werden mit Komma getrennt
|-
|-
|StNr
|StNr
|A40
|Alphanumerisch
|StNr. oder USt.ID, optional
|StNr. oder USt.ID, optional
|-
|-
|BIC
|BIC
|A10
|Alphanumerisch
|ohne Leerzeichen, optional
|ohne Leerzeichen, optional
|-
|-
|IBAN
|IBAN
|A30
|Alphanumerisch
|Darf Leerzeichen enthalten, optional
|Darf Leerzeichen enthalten, optional
|-
|-
|Bar
|Bar
|B
|Logisch
|Kunde muss bei Lieferung zahlen
|Kunde muss bei Lieferung zahlen
|-
|-
|Gewerbe
|Gewerbe
|B
|Logisch
|Gewerbe oder Privatkunde
|Gewerbe oder Privatkunde
|-
|-
|Limit
|Limit
|N (-1, 0..n)
|Ganzzahl
| -1 = gesperrt, 0 = kein Limit
| -1 = gesperrt, 0 = kein Limit
|-
|-
|Preisgruppe
|Preisgruppe
|I (1..n)
|Ganzzahl
|Preisgruppenliste
|Preisgruppenliste
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


===Optional: Feldbeschreibungen Datei "Lieferadressen.csv“===
==Lieferadressen.csv==
Nachfolgend wird ein Adressdatensatz beschrieben. Diese Liste enthält zusätzliche Adressen eines Kunden. Die Datei ist optional. Sind keine Zusatzadressen vorhanden, wird die Baissadresse des Kundendatensatzes als Lieferadresse verwendet.
Nachfolgend wird ein Adressdatensatz beschrieben. Diese Liste enthält zusätzliche Adressen eines Kunden. Die Datei ist optional. Sind keine Zusatzadressen vorhanden, wird die Baissadresse des Kundendatensatzes als Lieferadresse verwendet.


Zeile 172: Zeile 174:
|-
|-
|KDNr  
|KDNr  
|A20 (eingeschränkter Zeichensatz)
|Alphanumerisch
|Eindeutige Identnummer
|Eindeutige Identnummer
|-
|-
|Anrede  
|Anrede  
|A10
|Alphanumerisch
|Anrede, optional
|Anrede, optional
|-
|-
|Vorname
|Vorname
|A80
|Alphanumerisch
|Vorname, optional
|Vorname, optional
|-
|-
|Name/Firma
|Name/Firma
|A80
|Alphanumerisch
|Firmenname oder Name
|Firmenname oder Name
|-
|-
|Zusatz
|Zusatz
|A80
|Alphanumerisch
|optional Abteilung etc.
|optional Abteilung etc.
|-
|-
|Strasse
|Strasse
|A20
|Alphanumerisch
|Straße mit Hausnummer
|Straße mit Hausnummer
|-
|-
|PLZ
|PLZ
|A5
|Ganzzahl
|ohne Nationalitätskennzeichen
|ohne Nationalitätskennzeichen
|-
|-
|Ort
|Ort
|A80
|Alphanumerisch
|Ort
|Ort
|-
|-
|Telefon
|Telefon
|A20
|Alphanumerisch
|Telefon 1, optional
|Telefon 1, optional
|-
|-
|Ident
|Ident
|A20
|Alphanumerisch
|Kennung der Adresse
|Kennung der Adresse
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


===Feldbeschreibungen Datei "Artikel.csv“===
==Artikel.csv==
Nachfolgend wird ein Artikeldatensatz beschrieben.  
Nachfolgend wird ein Artikeldatensatz beschrieben.  


Zeile 223: Zeile 225:
|-
|-
|Versionsnummer
|Versionsnummer
|I
|Alphanumerisch
|Wird nicht verwendet
|Wird nicht verwendet
|-
|-
|ArtNr
|ArtNr
|A20, eingeschränkter Zeichensatz
|Alphanumerisch
|Eindeutige Identnummer
|Eindeutige Identnummer
|-
|-
|Artikelbezeichnung
|Artikelbezeichnung
|A80
|Alphanumerisch
|Artikelbezeichnung  
|Artikelbezeichnung  
|-
|-
|Menge
|Menge
|I (0..n)
|Ganzzahl
|Flaschen im Kasten, Einzel = 0
|Flaschen im Kasten, Einzel = 0
|-
|-
|Gebinde-Inhalt
|Gebinde-Inhalt
|N (0..n)
|Kommazahl
|Liter
|Liter
|-
|-
|Warengruppe
|Warengruppe
|A40
|Alphanumerisch
|Warengruppe
|Warengruppe
|-
|-
|Untergruppe
|Untergruppe
|A40
|Alphanumerisch
|Wird nicht verwendet
|Wird nicht verwendet
|-
|-
|Hersteller
|Hersteller
|A40
|Alphanumerisch
|Hersteller
|Hersteller
|-
|-
|Bruttopreis
|Bruttopreis
|N
|Kommazahl
|Basispreis 1 des Artikels inkl. MwSt.
|Basispreis 1 des Artikels inkl. MwSt.
|-
|-
|Brutto-Pfand
|Brutto-Pfand
|N
|Kommazahl
|Basispreis 1 des Pfands inkl. MwSt.
|Basispreis 1 des Pfands inkl. MwSt.
|-
|-
|Brutto-Literpreis
|Brutto-Literpreis
|N
|Kommazahl
|Basispreis 1 pro Liter inkl. MwSt.
|Basispreis 1 pro Liter inkl. MwSt.
|-
|-
|Nettopreis
|Nettopreis
|N
|Kommazahl
|Basispreis 2 des Artikels exkl. MwSt.
|Basispreis 2 des Artikels exkl. MwSt.
|-
|-
|Netto-Pfand
|Netto-Pfand
|N
|Kommazahl
|Basispreis 2 des Pfands exkl. MwSt.
|Basispreis 2 des Pfands exkl. MwSt.
|-
|-
|Netto-Literpreis
|Netto-Literpreis
|N
|Kommazahl
|Basispreis 2 pro Liter exkl. MwSt.
|Basispreis 2 pro Liter exkl. MwSt.
|-
|-
|MwSt
|MwSt
|N (0..n)
|Kommazahl
|MwSt.-Satz in Prozent
|MwSt.-Satz in Prozent
|-
|-
|Barcode
|Barcode
|A20
|Alphanumerisch
|EAN des Teilgebinde oder Einzelartikel
|EAN des Teilgebinde oder Einzelartikel
|-
|-
|Lieferbar
|Lieferbar
|I
|Ganzzahl
|Wird nicht verwendet
|Wird nicht verwendet
|-
|-
|Angebotsart
|Angebotsart
|I
|Ganzzahl
|Wird nicht verwendet
|Wird nicht verwendet
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


===Optional: Feldbeschreibungen Datei "Favoriten.csv“===
==Favoriten.csv==
Nachfolgend wird ein Kundensortimentsdatensatz beschrieben. Diese Liste enthält die bisher bestellten Artikel eines Kunden. Die Datei ist optional.
Nachfolgend wird ein Kundensortimentsdatensatz beschrieben. Diese Liste enthält die bisher bestellten Artikel eines Kunden. Die Datei ist optional.


Zeile 306: Zeile 308:
|-
|-
|KDNr  
|KDNr  
|A20 (eingeschränkter Zeichensatz)
|Alphanumerisch
|Eindeutige Identnummer des Kunden
|Eindeutige Identnummer des Kunden
|-
|-
|ArtNr
|ArtNr
|A20, eingeschränkter Zeichensatz
|Alphanumerisch
|Eindeutige Identnummer des Artikels
|Eindeutige Identnummer des Artikels
|-
|-
|Anzahl
|Anzahl
|I
|Ganzzahl
|übliche Bestellmenge
|übliche Bestellmenge
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


===Optional: Feldbeschreibungen Datei "Sonderpreise.csv“===
==Sonderpreise.csv==
Nachfolgend wird eine Tabelle mit kundenspezifischen oder zeitlich beschränkten Sonderpreisen beschrieben. Die Datei ist optional.  
Nachfolgend wird eine Tabelle mit kundenspezifischen oder zeitlich beschränkten Sonderpreisen beschrieben. Die Datei ist optional.  


Zeile 329: Zeile 331:
|-
|-
|KDNr  
|KDNr  
|A20 (eingeschränkter Zeichensatz)
|Alphanumerisch
|Eindeutige Identnummer des Kunden
|Eindeutige Identnummer des Kunden
|-
|-
|ArtNr
|ArtNr
|A20, eingeschränkter Zeichensatz
|Alphanumerisch
|Eindeutige Identnummer des Artikels
|Eindeutige Identnummer des Artikels
|-
|-
|NettoVK
|NettoVK
|N
|Kommazahl
|Netto Sonderpreis
|Netto Sonderpreis
|-
|-
|Start
|Start
|@
|Zeitstempel
|Zeitstempel Gültigkeitsbeginn eines Aktionspreises
|Zeitstempel Gültigkeitsbeginn eines Aktionspreises
|-
|-
|Ende
|Ende
|@
|Zeitstempel
|Zeitstempel Gültigkeitsende eines Aktionspreises
|Zeitstempel Gültigkeitsende eines Aktionspreises
|-
|-
|Gruppe
|Gruppe
|A20
|Alphanumerisch
|Aktionspreis gilt für Preisgruppe
|Aktionspreis gilt für Preisgruppe
|-
|-
|Ersetzen
|Ersetzen
|A5 (Ja, Nein)
|Logisch (ja/nein)
|Aktionspreis kann Sonderpreise überschreiben
|Aktionspreis kann Sonderpreise überschreiben
|-
|-
|Vorrat
|Vorrat
|I (-1, 1..n)
|Ganzzahl
|Beschränkter Vorrat eines Aktionspreises, -1 = kein Vorrat
|Beschränkter Vorrat eines Aktionspreises, -1 = kein Vorrat
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


{{Hinweis|'''Aktionspreise''': Ist das Feld '''KDNr''' leer, wird der eingetragene Preis '''NettoVK''' als zeitlich gesteuerter '''Aktionspreis''' behandelt, der im Zeitraum von '''Start ''' bis '''Ende''' unter Beachtung der Zugehörigkeit eines Kunden zur Preisgruppe in „Gruppe“, der Vorgabe der Möglichkeit zum '''Überschreiben''' eines möglichen Sonderpreises eines Kunden für den Artikel und Einschränkung der Gültigkeit eines Aktionspreises auf eine maximale Abverkaufsmenge '''Vorrat''' gilt.}}
''Aktionspreise'': Ist das Feld '''KDNr''' leer, wird der eingetragene Preis '''NettoVK''' als zeitlich gesteuerter ''Aktionspreis'' behandelt, der im Zeitraum von ''Start'' bis ''Ende'' unter Beachtung der Zugehörigkeit eines Kunden zur Preisgruppe in „Gruppe“, der Vorgabe der Möglichkeit zum ''Überschreiben'' eines möglichen Sonderpreises eines Kunden für den Artikel und Einschränkung der Gültigkeit eines Aktionspreises auf eine maximale Abverkaufsmenge ''Vorrat'' gilt.


==Auftragsimport als XML==
=Auftragsimport als XML=
Die Daten werden mit einer FTP-Verbindung übertragen. Nach erfolgreichem Verbindungsaufbau werden die [[wikipedia:de:Extensible_Markup_Language|XML]]-Daten aus einem zu definierenden Ordner geladen.
Die Daten werden mit einer FTP-Verbindung übertragen. Nach erfolgreichem Verbindungsaufbau werden die [[wikipedia:de:Extensible_Markup_Language|XML]]-Daten aus einem zu definierenden Ordner geladen.


'''Folgende Standards werden vereinbart:'''
'''Bedingungen:'''


* Elemente ohne Daten werden [[wikipedia:de:Extensible_Markup_Language|XML]]-konform als <Tag-Name /> dargestellt.
* Elemente ohne Daten werden [[wikipedia:de:Extensible_Markup_Language|XML]]-konform als <Tag-Name/> dargestellt
* Jede Bestellung wird einzeln erfasst.
* Jede Bestellung wird einzeln erfasst
* Der Datensatz enthält Bestellmerkmale sowie alle Details des Kunden.
* Der Datensatz enthält alle Informationen zur Bestellung und zum Kunden
* Der Zeichensatz ist UTF-8.
* Zeichensatz ist UTF-8
* Der Name der [[wikipedia:de:Extensible_Markup_Language|XML]]-Datei besteht aus dem Zeitstempel (YYYY-MM-DD-HHNNSS) sowie der Auftragsnummer, welche vom Shopsystem vergeben werden muss.  
* Der Name der [[wikipedia:de:Extensible_Markup_Language|XML]]-Datei besteht aus dem Zeitstempel (YYYY-MM-DD-HHNNSS) sowie der Auftragsnummer, welche vom Webshop vergeben wird. Beispiel: ''2012-02-06-105730-5432.xml''


{{Tipp1|'''Beispiel:''' 2012-02-06-105730-5432.xml}}
==Aufbau der XML-Datei==
<order>
  [notwendig, einmal]
  <paymentDetails>
    [optional, einmal]
  </paymentDetails>   
  <DeliveryDetails>
    [optional, mehrfach]
  </DeliveryDetails>
  <article>
    [optional, mehrfach]
  </article>
</order>
<customer>
  [notwendig, einmal] 
  <DeliveryAddress>
    [optional, einmal]
  </DeliveryAddress>
  <BankDetails>
    [optional, einmal]
  </BankDetails>
</customer>


===Entität "Order"===
==Die Entität "order"==
Nachfolgend die Entitäten, in welche sich der Tag <order></order> unterteilt. Da ausschließlich eine Bestellung pro Datei dargestellt wird, ist dieses Tag einmalig.
 
Die Entität ist primär, notwendig und einmalig. Sie enthält Informationen zur Bestellung.


<!--//////////    Tabelle ANFANG      //////////-->
<!--//////////    Tabelle ANFANG      //////////-->
Zeile 387: Zeile 411:
!! style="background:#B3B7FF" | Erläuterungen
!! style="background:#B3B7FF" | Erläuterungen
|-
|-
|<orderID>
|<orderID>
|I
|Alphanumerisch
|5456
|5456
|Auftragsnummer des WebShop
|Bestellnummer des Shop (optional)
|-
|<type>
|Auswahl (order = Bestellung, request = Anfrage)
|order
|Typ des Auftrags (wird nicht ausgewertet)
|-
|<randomPinCode>
|Alphanumerisch
|48664411
|Zufallspin (wird nicht ausgewertet)
|-
|-
|<ip>
|<ip>
|A
|Alphanumerisch formatiert
|91.53.190.30
|91.53.190.30
|IP-Adresse des Kunden während der Bestellung
|IP Adresse (optional)
|-
|-
|<orderDate>
|<orderDate>
|@
|Zeitstempel ISO-8601
|2012-06-02 14:15:45
|2012-06-02 14:15:45
|Bestellzeitpunkt
|Bestelldatum
|-
|-
|<deliveryDate>
|<deliveryDate>
|D
|Zeitstempel ISO-8601
|2012-07-02
|2012-07-02 11:00:00
|Lieferdatum
|Lieferdatum
|-
|-
|<deliveryPeriod>
|<deliveryPeriod>
|A
|Alphanumerisch
|Vormittags
|Vormittags
|Kommentar zur Bestellung
|Lieferzeit (optional)
|-
|-
|<comment>
|<comment>
|A
|Alphanumerisch
|Leergut steht im Garten
|Leergut steht im Garten
|Kommentar zur Bestellung
|Kommentar (optional)
|-
|-
|<payment>
|<payment>
|A (Auswahl)
|Auswahl (Cash = bar, Invoice = Rechnung, bankCollection = Einzug, paypal = PayPal)  
|bankCollection
|bankCollection
|Cash (Bar), Invoice (Rechnung), bankCollection (Einzug), paypal (PayPal)
|Zahlweise
|-
|-
|<priceMode>
|<paymentDeadlineInDays>
|A (Auswahl)
|Ganzzahl
|gross
|5
|gross (Brutto), net (Netto)
|Zahlungsziel in Tagen
|-
|-
|<taxRate>
|<paymentFeeForPaymentDeadlineInPercent>
|N (10.2)
|Ganzzahl (wird nicht ausgewertet)
|19.00  
|0
|Mehrwertsteuersatz
|Mahnzins in Prozent (wird nicht ausgewertet)
|-
|<paymentFeeForPaymentDeadline>
|Kommazahl
|0.00
|Mahngebühr als Betrag (wird nicht ausgewertet)
|-
|<priceMode>
|Auswahl (gross = Verbraucher, net = Wiederverkäufer)
|gross
|Kundentyp
|-
|<merchandiseValue>
|Kommazahl
|81.84
|Gesamt Netto (wird nicht ausgewertet)
|-
|<deliveryCosts>
|Kommazahl
|5.00
|Liefergebühren (wird nicht ausgewertet)
|-
|-
|<merchandiseValue>
|<smallVolumePurchase>
|N (10.2)
|Kommazahl
|75.69
|0.00
|Warenwert
|Mindermengenzuschlag (wird nicht ausgewertet)
|-
|-
|<deliveryCosts>
|<discountPercent>
|N (10.2)
|Kommazahl
|0.00
|3.00
|Lieferkosten
|Rabatt in Prozent (wird nicht ausgewertet)
|-
|-
|<smallVolumePurchase>
|<discountFix>
|N (10.2)
|Kommazahl
|0.00
|5.45
|Mindermengenzuschlag
|Rabatt als Betrag (wird nicht ausgewertet)
|-
|-
|<discountPercent>
|<sumDeposit>
|N (10.2)
|Kommazahl
|3.00
|6.60
|3% Rabatt auf den Warenwert
|Pfand (wird nicht ausgewertet)
|-
|-
|<discountFix>
|<sumFee>
|N (10.2)
|Kommazahl
|5.45
|0.00
|Gutscheineinlösung
|Gebühren (wird nicht ausgewertet)
|-
|-
|<sumTotal>
|<sumDeliveryCosts>
|N (10.2)
|Kommazahl
|75.69
|0.00
|Gesamtbetrag inklusive Rabatte, Lieferkosten, Zuschläge, Gutscheine, Mehrwertsteuer
|Summe Transportkosten (wird nicht ausgewertet)
|-
|-
|<sumTotal>
|Kommazahl
|75.24
|Gesamtsumme ohne Pfand (wird nicht ausgewertet)
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->
 
== Die Entität "paymentDetails"==


{{Hinweis|Abhängig vom <priceMode> werden die Preise Brutto oder Netto übergeben. Ausnahme ist der Wert <sumTotal>, welcher immer die Gesamtsumme inklusive der gesetzlichen Steuer enthält.}}
Die Entität ist in <order> enthalten, optional und einmalig. Sie enthält optionale Informationen zur Zahlweise
 
<!--//////////    Tabelle ANFANG      //////////-->
:{| class="wikitable" style="text-align:left"
! style="background:#B3B7FF" | Entität
!! style="background:#B3B7FF" | Typ
!! style="background:#B3B7FF" | Beispiel
!! style="background:#B3B7FF" | Erläuterungen
|-
|<paymentSystem>
|Alphanumerisch
|Bank
|Zahlweise
|-
|<externalId>
|Alphanumerisch
|58
|EDI-Code der Zahlweise
|}
<!--//////////    Tabelle ENDE      //////////-->


{{Hinweis|Die Tags <discountPercent und <discountFix> definieren mögliche Rabatte sowie Gutscheine. Bei prozentualen Rabatten sind diese direkt in den Artikelpreisen berücksichtigt. Bei einem Einmalbetrag werden die Werte in dem Tag <sumTotal> berücksichtigt.}}
==Die Entität "DeliveryDetails"==


===Entität "Article"===
Die Entität ist in <order> enthalten, optional und wiederholbar. Sie enthält optionale Informationen zu Transportkosten
Nachfolgend wird dokumentiert in welche Entitäten sich der Tag <article></article> unterteilt, welcher sich innerhalb von order befindet. Der Tag kann je nach Anzahl unterschiedlicher Artikel mehrfach hintereinander erscheinen.


<!--//////////    Tabelle ANFANG      //////////-->
<!--//////////    Tabelle ANFANG      //////////-->
Zeile 479: Zeile 557:
!! style="background:#B3B7FF" | Erläuterungen
!! style="background:#B3B7FF" | Erläuterungen
|-
|-
|<amount>
|<type>
|N
|Auswahl (flat = pauschal, tba.)
|3
|flat
|Anzahl
|Berechnungsweise
|-
|-
|<articleNumber>
|<name>
|A
|Alphanumerisch
|301012
|Anfahrtspauschale
|Artikelnummer
|-
|<name>
|A
|Coca Cola
|Bezeichnung
|Bezeichnung
|-
|-
|<package>
|<price>
|A
|Kommazahl
|12x1,0
|5.00
|Gebindeformat
|Betrag
|-
|<price>
|N (10.2)
|11.99
|Einzelpreis
|-
|<deposit>
|N (10.2)
|3.30
|Pfandwert
|-
|<taxRate>
|N (10.2)
|19.00
|Mehrwertsteuersatz
|-
|<ean>
|A
|4008287077018
|EAN Code
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->
==Die Entität "article"==


===Entität "DeliveryDetails"===
Die Entität ist in <order> enthalten, (thoretisch) optional und wiederholbar. Sie enthält Informationen zu Bestellposten
Nachfolgend wird dokumentiert in welche Entitäten sich der Tag <deliveryDetails></deliveryDetails> unterteilt, welcher sich innerhalb von order befindet. Sofern es keine Lieferdetails gibt, ist dieser Tag nicht enthalten.


<!--//////////    Tabelle ANFANG      //////////-->
<!--//////////    Tabelle ANFANG      //////////-->
Zeile 531: Zeile 585:
!! style="background:#B3B7FF" | Erläuterungen
!! style="background:#B3B7FF" | Erläuterungen
|-
|-
|<type>
|<amount>
|A (Auswahl)
|Ganzzahl
|flat
|2
|flat=Anfahrtspauschale, article=Artikelaufschlag, individual=individuell
|Anzahl
|-
|<articleQuantity>
|Ganzzahl
|2
|Anzahl
|-
|<articleNumber>
|Alphanumerisch
|301012
|Artikelnummer ERP
|-
|<name>
|Alphanumerisch
|Coca Cola Zero
|Bezeichnung
|-
|<package>
|Alphanumerisch
|12x1,00
|Gebinde
|-
|<price>
|Kommazahl
|11.99
|Ware Einzel
|-
|<unitPrice>
|Kommazahl
|11.99
|Ware Einzel
|-
|-
|<name>
|<deposit>
|A
|Kommazahl
|Anfahrtspauschale
|3.30
|Name
|Pfand Einzel
|-
|<unitDeposit>
|Kommazahl
|0.00
|Pfand pro Einheit
|-
|<unitFee>
|Kommazahl
|0.00
|Gebühr
|-
|<taxRate>
|Kommazahl
|19.00
|MwSt.Satz
|-
|-
|<price>
|<ean>
|N 10.2
|Alphanumerisch
|5.99
|4008287077018
|Preis (Brutto)
|EAN
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


===Entität "Customer"===
==Die Entität "customer"==
Folgende Entitäten sind bei dem Tag <customer></customer> enthalten. Das Tag <customer> ist pro Bestellung einmalig.
 
Die Entität ist primär, notwendig und einmalig. Sie enthält Informationen zum Kunden


<!--//////////    Tabelle ANFANG      //////////-->
<!--//////////    Tabelle ANFANG      //////////-->
Zeile 558: Zeile 658:
!! style="background:#B3B7FF" | Erläuterungen
!! style="background:#B3B7FF" | Erläuterungen
|-
|-
|<wdCustomerID>
|<externalAddressID>
|I
|Alphanumerisch
|5456
|4535
|Interne Kundennummer
|Externe Adressnummer
|-
|<priceGroupID>
|Ganzzahl
|1
|Nummer der Preisgruppe
|-
|<wdCustomerID>
|Alphanumerisch
|5456
|Kundennummer Shop
|-
|<customerNumber>
|Alphanumerisch
|1101
|Kundennummer ERP
|-
|<street>
|Alphanumerisch
|Musterstraße
|Straße (darf Hausnummer enthalten)
|-
|-
|<customerNumber>
|<streetNumber>
|A20
|Alphanumerisch
|1101
|10b
|FAKTURA-X Kundennummer
|Hausnummer (optional)
|-
|-
|<street>
|<additionalAddressInformation
|A
|Alphanumerisch
|Musterstraße
|5. Etage
|Straße
|Zusatzinformationen
|-
|-
|<streetNumber>
|<floor>
|A
|Alphanumerisch
|10
|2
|Hausnummer
|Etage
|-
|-
|<additionalAddressInformation
|<elevator>
|A
|Logisch (ja, nein/leer)
|5. Etage
|Fahrstuhl vorhanden
|Zusatz
|
|-
|-
|<postcode>
|<postcode>
|A
|Ganzzahl
|35708
|35708
|Postleitzahl
|Postleitzahl
|-
|-
|<town>
|<town>
|A
|Alphanumerisch
|Haiger
|Haiger
|Ort
|Ort
|-
|-
|<title>
|<salutation>
|A
|Alphanumerisch
|Herr Prof. Dr.
|Herr
|Anrede
|Anrede
|-
|-
|<company>
|<title>
|A
|Alphanumerisch
|Mustermann AG
|Prof. Dr.
|Titel
|-
|<company>
|Alphanumerisch
|Mustermann AG
|Firma
|Firma
|-
|-
|<name>
|<name>
|A
|Alphanumerisch
|Mustermann
|Mustermann
|Name
|Name
|-
|-
|<firstName>
|<firstName>
|A
|Alphanumerisch
|Max
|Max
|Vorname
|Vorname
|-
|-
|<phone>
|<phone>
|A
|Alphanumerisch
|02773-12345
|02773-12345
|Telefon
|Telefonnummer
|-
|<fax>
|Alphanumerisch
|
|Telefaxnummer
|-
|<mobile>
|Alphanumerisch
|0175-1234567
|Mobilfunknummer
|-
|-
|<fax>
|<email>
|A
|Alphanumerisch
|02773-12346
|info@mail.de
|Telefax (optional)
|E-Mailadresse
|-
|-
|<mobile>
|<registrationDate>
|A
|Zeitstempel ISO-8601
|0175-1234567
|2012-04-03 15:00:00
|Mobiltelefon (optional)
|Registrierdatum
|-
|-
|<email>
|<dateOfBirth>
|A
|Zeitstempel ISO-8601
|info@mail.de
|
|E-Mail
|Geburtsdatum (wird nicht ausgewertet)
|-
|-
|<registrationDate>
|<dataStatus>
|@
|Auswahl(new = Neu, tba)
|YYYY-MM-DD HH:NN:SS
|new
|Registrierungstag
|
|-
|-
|<newsletter>
|<newsletter>
|I (0..1)
|Logisch (ja, nein/leer)
|0
|
|0= Keine Newsletter, 1=Newsletter
|Newsletteranmeldung
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


===Entität "DeliveryAddress"===
==Die Entität "DeliveryAddress"==
Der Tag <deliveryAddress></deliveryAddress> innerhalb von customer ist nur vorhanden, wenn eine abweichende Lieferadresse existiert.
 
Die Entität ist in <customer> enthalten, optional und einmalig. Sie enthält optionale Informationen zur Lieferadresse


<!--//////////    Tabelle ANFANG      //////////-->
<!--//////////    Tabelle ANFANG      //////////-->
Zeile 655: Zeile 791:
!! style="background:#B3B7FF" | Erläuterungen
!! style="background:#B3B7FF" | Erläuterungen
|-
|-
|<street>
|<street>
|A
|Alphanumerisch
|Musterstraße
|Musterstraße
|Straße
|Straße (darf Hausnummer enthalten)
|-
|-
|<streetNumber>
|<streetNumber>
|A
|Alphanumerisch
|10
|10b
|Hausnummer
|Hausnummer (optional)
|-
|-
|<additionalAddressInformation
|<additionalAddressInformation
|A
|Alphanumerisch
|5. Etage
|5. Etage
|Zusatz
|Zusatzinformationen
|-
|-
|<postcode>
|<postcode>
|A
|Ganzzahl
|35708
|35708
|Postleitzahl
|Postleitzahl
|-
|-
|<town>
|<town>
|A
|Alphanumerisch
|Haiger
|Haiger
|Ort
|Ort
|-
|-
|<title>
|<title>
|A
|Alphanumerisch
|Herr Prof. Dr.
|Prof. Dr.
|Anrede
|Titel
|-
|-
|<company>
|<company>
|A
|Alphanumerisch
|Mustermann AG
|Mustermann AG
|Firma
|Firma
|-
|-
|<name>
|<name>
|A
|Alphanumerisch
|Mustermann
|Mustermann
|Name
|Name
|-
|-
|<firstName>
|<firstName>
|A
|Alphanumerisch
|Max
|Max
|Vorname
|Vorname
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->
==Die Entität "BankDetails"==


===Entität "BankDetails"===
Die Entität ist in <customer> enthalten, optional und einmalig. Sie enthält optionale Informationen zur Bankverbindung
Der Tag <bankDetails></bankDetails> innerhalb von customer ist nur vorhanden, wenn diese hinterlegt ist. Bitte beachten Sie, dass der tag <payment></payment> innerhalb von <order> den Wert "bankCollection" enthält, sofern der Kunde bei dieser Bestellung Bankeinzug wünscht.


<!--//////////    Tabelle ANFANG      //////////-->
<!--//////////    Tabelle ANFANG      //////////-->
Zeile 712: Zeile 848:
!! style="background:#B3B7FF" | Erläuterungen
!! style="background:#B3B7FF" | Erläuterungen
|-
|-
|<accountOwner>
|<accountOwner>
|A
|Alphanumerisch
|Max Mustermann
|Max Mustermann
|Kontoinhaber
|Kontoinhaber
|-
|-
|<accountNumber>
|<Iban>
|A
|Alphanumerisch
|1234567890
|DE67416500011234567890
|Kontonummer (obsolet)
|IBAN
|-
|-
|<bankCode>
|<bic>
|A
|Alphanumerisch
|41650001
|WELADED1LIP
|BLZ (obsolet)
|BIC
|}
<!--//////////    Tabelle ENDE      //////////-->
 
{{Hinweis|Abhängig vom <priceMode> werden die Preise Brutto oder Netto übergeben. Ausnahme ist der Wert <sumTotal>, welcher immer die Gesamtsumme inklusive der gesetzlichen Steuer enthält.}}
 
{{Hinweis|Die Tags <discountPercent und <discountFix> definieren mögliche Rabatte sowie Gutscheine. Bei prozentualen Rabatten sind diese direkt in den Artikelpreisen berücksichtigt. Bei einem Einmalbetrag werden die Werte in dem Tag <sumTotal> berücksichtigt.}}
 
==Beispiel einer Auftragsdatei==
 
<order>
  <orderID>5456</orderID>
  <type>order</type>
  <randomPinCode/>
  <ip>91.53.190.30</ip>
  <orderDate>2012-06-02 14:15:45</orderDate>
  <deliveryDate>2012-07-02 11:00:00</deliveryDate>
  <deliveryPeriod>Vormittags</deliveryPeriod>
  <comment>Leergut steht im Garten</comment>
  <payment>bankCollection</payment>
  <paymentDetails>
  <paymentSystem>Bank</paymentSystem>
  <externalId>1200</externalId>
  </paymentDetails> 
  <paymentDeadlineInDays>5</paymentDeadlineInDays>
  <paymentFeeForPaymentDeadlineInPercent>0</paymentFeeForPaymentDeadlineInPercent>
  <paymentFeeForPaymentDeadline>0</paymentFeeForPaymentDeadline>
  <priceMode>gross</priceMode>
  <taxRate>19.00</taxRate>
  <merchandiseValue>75.69</merchandiseValue>
  <deliveryCosts>5.00</deliveryCosts>
  <smallVolumePurchase>0.00</smallVolumePurchase>
  <discountPercent>3.00</discountPercent>
  <discountFix>5.45</discountFix>
  <sumDeposit>0.00</sumDeposit>
  <sumFee>0.00</sumFee>
  <sumDeliveryCosts>0.00</sumDeliveryCosts>
  <sumTotal>75.24</sumTotal>
  <DeliveryDetails>
    <type>flat</type>
    <name>Anfahrtspauschale</name>
    <price>5.00</price>
  </DeliveryDetails>
  <article>
    <amount>2</amount>
    <articleQuantity>2</articleQuantity>   
    <articleNumber>301012</articleNumber>
    <name>Coca Cola Zero</name>
    <package>12x1,00</package>
    <price>11.99</price>
    <unitPrice>11.99</unitPrice> 
    <deposit>3.30</deposit>
    <unitDeposit>1.76</unitDeposit>
    <unitFee>0.00</unitFee>
    <taxRate>19.00</taxRate>
    <ean>4008287077018</ean>
  </article>
</order>
<customer>
  <externalAddressID/>
  <priceGroupID>1</priceGroupID>
  <wdCustomerID>5456</wdCustomerID>
  <customerNumber>1101</customerNumber>
  <street>Musterstraße</street>
  <streetNumber>10</streetNumber>
  <additionalAddressInformation>5. Etage</additionalAddressInformation>
  <floor>2</floor>
  <elevator></elevator>
  <postcode>35708</postcode>
  <town>Haiger</town>
  <salutation>Herr</salutation> 
  <title>Prof. Dr.</title>
  <company>Mustermann AG</company>
  <name>Mustermann</name>
  <firstName>Max</firstName>
  <phone>02773-12345</phone>
  <fax></fax>
  <mobile>0175-1234567</mobile>
  <email>info@mail.de</email>
  <registrationDate>2012-04-03 15:00:00</registrationDate>
  <dateOfBirth/>
  <dataStatus>new</dataStatus> 
  <newsletter></newsletter>
  <DeliveryAddress>
    <street>Musterstraße</street>
    <streetNumber>10</streetNumber>
    <additionalAddressInformation>5. Etage</additionalAddressInformation>
    <postcode>35708</postcode>
    <town>Haiger</town>
    <title>Prof. Dr.</title>
    <company>Mustermann AG</company>
    <name>Mustermann</name>
    <firstName>Max</firstName>
  </DeliveryAddress>
  <BankDetails>
    <accountOwner>Max Mustermann</accountOwner>
    <Iban>DE67416500011234567890</Iban>
    <bic>WELADED1LIP</bic>
  </BankDetails>
</customer>
 
=JSON =
Die Anwendung unterstützt den Auftragsimport mittels REST-API. Die Kommunikation erfolgt über eine HTTPS-Schnittstelle, welche JSON-Objekte im Request-Body erwartet. Die Zeichenkodierung ist UTF-8.
 
==JSON-Objekte==
JSON Request-Objekt:
*'''id:''' Eindeutiger Identifier innerhalb des Requests.
*'''command:''' String für den auszuführenden Command.
*'''params:''' Parameter für den Command.
 
JSON Response-Objekt:
*'''id:''' Hierbei handelt es sich um die übergebene Id des Requests.
*'''result:''' Bei einer erfolgreichen Verarbeitung wird immer ein result übergeben. Bei einem error existiert dieser Wert nicht.
*'''error:''' Ausschließlich bei einem Fehler existiert dieses Objekt. Es unterteilt sich immer in code und message. Bei einem Validierungsfehler wird ein Objekt input übergeben. Die Keys des Objektes enthalten die fehlgeschlagenen Parameter einschließlich der Fehlermeldung.
 
* Single data sent to Server:
{"id":"1","command":"articles/set","params":{"data":{"articleNumber":"H64326426","name":"Testartikel","quantity":3,"unit":1.74,"taxRate":19,"prices":[{"priceGroup":"1","fromArticleQuantity":1,"fromCartQuantity":1,"netPrice":8.15,"netDeposit":0}],"groups":[{"groupName":"Testgruppe"}]}}}
* Single data receive from Server:
{"id":"1","result":{"articles":{"data":{"id":"63f8340b5f86a975e10f8725"}}}}
 
*Batch data sent to Server:
[{"id":"1","command":"articles/update","params":{"data":{"articleNumber":"1","availability":"Kein Bestand"}}}, {"id":"2","command":"articles/update","params":{"data":{"articleNumber":"2","availability":"Kein Bestand"}}}]
*Batch data received from Server:
[{"id":"1","result":{"articles":{"updated":{"matched":1,"upserted":0,"modified":1}}}}, {"id":"2","result":{"articles":{"updated":{"matched":1,"upserted":0,"modified":1}}}}]
 
==Authentifizierung==
Die Authentifizierung erfolgt über einen API-Token, welcher über den Header "Authorisation: Bearer apiToken" wird.
 
cURL Beispiel-Request:
 
curl -X POST <domain>
-H "Authorisation: Bearer apiToken"
-H "Content-Type: application/json"
-d "{"id": 1,"command":"articles/delete", "params": {"data":{"articleNumber": "123"}}}"
 
= Stammdatenexport als JSON =
== Artikel ==
<!--//////////    Tabelle ANFANG      //////////-->
:{| class="wikitable" style="text-align:left"
! style="background:#B3B7FF" | Entität
!! style="background:#B3B7FF" | Typ
!! style="background:#B3B7FF" | Beispiel
!! style="background:#B3B7FF" | Erläuterungen
|-
|articleNumber
|Alphanumerisch (20 Zeichen)
|12345
|Eindeutige Artikelnummer
|-
|-
|<bank>
|articleName
|A
|Alphanumerisch (225 Zeichen)
|Sparkasse
|Coca Cola Classic 12x 1,00l PET
|Bank (obsolet)
|Artikelbezeichnung
|-
|-
|<Iban>
|articleManufacturer
|A
|Alphanumerisch (255)
|DE67416500011234567890
|Coca Cola
|IBAN
|Hersteller
|-
|articleGroup
|Alphanumerisch (255)
|Limonade
|Warengruppe
|-
|articlePackage
|Alphanumerisch (20)
|Kasten
|Verpackungseinheit
|-
|articleVolume
|Kommazahl
|12.00
|Inhalt (Liter)
|-
|articleWeight
|Kommazahl
|15.00
|Masse (kg)
|-
|availGeneral
|Alphanumerisch (255)
|lagernd
|Informatione zur Verfügbarkeit
|-
|availStock
|Ganzzahl
|123
|Bestand
|-
|articleDescription
|Objekt
|Koffeinhaltiges Erfrischungsgetränk mit Pflanzenextrakten
|Artikelbeschreibung
|-
|articleAdditionalData
|Objekt
|Entdecke die Welt von Coca-Cola!
|Weitere Artikelinformationen
|-
|articleLegalInfo
|Objekt
|Wasser, Zucker, Kohlensäure, Farbstoff E 150d, Phosphorsäure, natürliche Aromen, koffeinhaltig
|Pflichtangaben
|-
|articlekeywords
|Objekt
|Cola, Limonade
|Suchwörter
|-
|articleImages
|Objekt
|keine
|Artikelabbildungen
|-
|articleTaxRate
|Kommazahl
|19.0
|Mehrwertsteuersatz
|-
|articlePriceGroups
|Array
|Gewerbe, Privat
|Preisgruppen
|-
|articlePriceNetto
|Array
|9.99, 10.9159
|Preise (Netto)
|-
|unitContentCount
|Ganzzahl
|12
|Einzelgebinde in der Verpackungseinheit
|-
|UnitContentVol
|Kommazahl
|1.00
|Inhalt Einzelgebinde in Liter
|-
|depositTaxRate
|Kommazahl
|19.0
|Mehrwertsteuersatz Pfand
|-
|depositNetto
|Kommazahl
|3.30
|Pfandwert (Netto)
|-
|depositPackageType
|Alphanumerisch (40)
|Kasten 3,30 (12x 0,15 €)
|Pfandbezeichnung
|-
|-
|<bic>
|depositType
|A
|Alphanumerisch (20)
|WELADED1LIP
|MEHRWEG
|BIC (kann leer belieben)
|Einweg oder Mehrweg
|}
|}
<!--//////////    Tabelle ENDE      //////////-->
<!--//////////    Tabelle ENDE      //////////-->


==Beispieldateien==
==Bestandsänderungen==
Das folgende Listing veranschaulicht eine Auftragsdatei. Die zugehörige XML-Datei "2012-02-06-105730-5432.xml" kann [[https://www.fakturax.de/files/2012-02-06-105730-5432.xml hier]] heruntergeladen werden.
<!--//////////    Tabelle ANFANG      //////////-->
:{| class="wikitable" style="text-align:left"
! style="background:#B3B7FF" | Entität
!! style="background:#B3B7FF" | Typ
!! style="background:#B3B7FF" | Beispiel
!! style="background:#B3B7FF" | Erläuterungen
|-
|storageIdent
|Alphanumerisch(20)
|10110
|Artikelnummer
|-
|storageStock
|Ganzzahl
|119
|Neuer Bestand
|}
<!--//////////    Tabelle EDE      //////////-->
 
==Kunden==
<!--//////////    Tabelle ANFANG      //////////-->
:{| class="wikitable" style="text-align:left"
! style="background:#B3B7FF" | Entität
!! style="background:#B3B7FF" | Typ
!! style="background:#B3B7FF" | Beispiel
!! style="background:#B3B7FF" | Erläuterungen
|-
|customerNumber
|Alphanumerisch (20)
|10210
|Kundennummer
|-
|customerMail
|Alphanumerisch (255)
|muellermeierschmidt@gmx.de
|E-Mail
|-
|customerPriceGroup
|Alphanumerisch (20)
|Gewerbe
|Preisgruppe
|-
|customerAddresses
|Array
|Lieferadressen (ident, strasse, plz, ort, vorname, name, zusatz, telefon)
|-
|customerpriceMode
|Integer
|1
|Preismodus (1: Gewerbe, 2: Privat)
|-
|customerStatus
|Alphanumerisch (20)
|Status (new, changed, unchanged, inactive)
|-
|customerDiscount
|Kommazahl
|3.00
|Prozentualer Rabatt
|-
|customerFavorites
|Array
|12345, 10
|Liste von Artikelnummern und Bestellmengen
|-
|customerPrices
|Array
|12345, 9.50
|Kundensepzifische Preise
|-
|customerPaymentType
|Ganzzahl
|59
|Zahlweise als EDI Payment Means Typ Code
|-
|customerPaymentIdent
|Alphanumerisch 30
|DE3541507001000567305
|Information zur Zahlweise (Einzug: IBAN)
|}
 
=Bestellimport als JSON=


<xml version="1.0" encoding="UTF-8" standalone="yes">
<!--//////////     Tabelle ANFANG      //////////-->
<order>
:{| class="wikitable" style="text-align:left"
  <orderID>8372</orderID>
! style="background:#B3B7FF" | Entität
  <ip>87.153.22.57</ip>
!! style="background:#B3B7FF" | Typ
  <orderDate>2012-06-04 13:46:40</orderDate>
!! style="background:#B3B7FF" | Beispiel
  <deliveryDate>2012-07-07</deliveryDate>
!! style="background:#B3B7FF" | Erläuterungen
  <deliveryPeriod>Vormittags</deliveryPeriod>
|-
  <comment/>
|orderIdent
  <payment>bankCollection</payment>
|Alphanumerisch(20)
  <priceMode>gross</priceMode>
|10110
  <taxRate>19.00</taxRate>
|Auftragsnummer
  <merchandiseValue>55.95</merchandiseValue>
|-
  <deliveryCosts>10.00</deliveryCosts>
|orderDeliveryAdressIdent
  <smallVolumePurchase>0.00</smallVolumePurchase>
|Ganzzahl
  <sumTotal>80.05</sumTotal>
|1
  <discountPercent>0.00</discountPercent>
|Identnummer der Lieferadresse
  <discountFix>0.00</discountFix>
|-
  <article>
|orderInvoiceAdressIdent
    <amount>2</amount>
|Ganzzahl
    <articleNumber>17106</articleNumber>
|1
    <name>Possmann Apfelwein 1 l (6x1,00)</name>
|Identnummer der Rechnungsadresse
    <package>6x1,00</package>
|-
    <price>8.49</price>
|orderDate
    <deposit>2.40</deposit>
|Zeitstempel
    <taxRate>19</taxRate>
|2026-06-20 13:05:21
    <ean/>
|Bestellzeitpunkt
  </article>
|-
  <article>
|orderIP
    <amount>3</amount>
|Alphanumerisch
    <articleNumber>23105</articleNumber>
|123.456.789.012
    <name>Veltins Pils 0,5 (20x0,50)</name>
|IP Adresse der Bestellung
    <package>20x0,50</package>
|-
    <price>12.99</price>
|DeliveryDate
    <deposit>3.10</deposit>
|Zeitstempel
    <taxRate>19</taxRate>
|2026-06-22 14:00:00
    <ean>4005249000367</ean>
|Wunschtermin Lieferung
  </article>
|-
  <deliveryDetails>
|DeliveryInfo
    <name>Anfahrtspauschale</name>
|Alphanumerisch(255)
    <price>4.00</price>
|bitte in Garage abstellen
  </deliveryDetails>
|Hinweise zur Bestellung
  <deliveryDetails>
|-
    <name>5 Artikel à 1,20€</name>
|paymentType
    <price>6.00</price>
|Ganzzahl
  </deliveryDetails>
|59
  <customer>
|Zahlweise als EDI Payment Means Typ Code
    <wdCustomerID>2578</wdCustomerID>
|-
    <customerNumber/>
|paymentIdent
    <street>Musterstr.</street>
|Alphanumerisch 30
    <streetNumber>1</streetNumber>
|DE3541507001000567305
    <additionalAddressInformation/>
|Information zur Zahlweise (Einzug: IBAN)
    <postcode>35708</postcode>
|-
    <town>Haiger</town>
|orderPositions
    <title>Frau </title>
|array
    <company/>
|12345, 5
    <name>Mustermann</name>
|Bestellposten (articleIdent, articleQuantity)
    <firstName>Max</firstName>
|}
    <phone>5468715687</phone>
    <fax/>
    <mobile/>
    <email>mustermann@mustermann.de</email>
    <registrationDate>2012-06-01 18:48:49</registrationDate>
    <newsletter>0</newsletter>
    <bankDetails>
      <accountOwner>Max Mustermann</accountOwner>
      <accountNumber>99999999</accountNumber>
      <bankCode>999999999</bankCode>
      <bank>Mustermann eG</bank>
      <iban>999999999</iban>
      <bic>DE0075XX</bic>
    </bankDetails>
  </customer>
</order>
</xml>


= Einzelnachweise =
= Einzelnachweise =


<references />
<references />