Schnittstellenleitfaden: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 8: Zeile 8:


==Hinweise für externe Entwickler==
==Hinweise für externe Entwickler==
Da es immer wieder zu Konflikten in der Schnittstellenanpassung kommt, weisen wir explizit darauf hin, dass die vorliegende Schnittstelle seit vielen Jahren von verschiedenen Schnittstellenpartnern eingesetzt wird. Es handelt sich also um eine praxiserprobte und erwiesenermaßen robuste, funktionsfähige Schnittstelle. Die Schnittstelle wurde mit Fachleuten aus mehreren Unternehmen gemeinsam entwickelt. Sie wurde bereits erfolgreich für Systeme wie "Shopware" oder "Drinkware" implementiert und wird im Produktivbetrieb von Anwendern genutzt.
{{Achtung|Wir weisen explizit darauf hin, dass die vorliegende Schnittstelle seit vielen Jahren von verschiedenen Schnittstellenpartnern eingesetzt wird}}


Es gilt:  
Es handelt sich um eine '''praxiserprobte''' und '''erwiesenermaßen robuste, funktionsfähige Schnittstelle.''' Die Schnittstelle wurde mit Fachleuten aus mehreren Unternehmen gemeinsam entwickelt. Sie wurde '''bereits erfolgreich in Systeme wie "Shopware" oder "Drinkware" implementiert''' und '''wird im Produktivbetrieb von Anwendern genutzt:'''


* Die Schnittstelle ist voll funktionsfähig
* Die Schnittstelle ist voll funktionsfähig
* Es werden alle zugrundeliegenden Normen und Spezifikationen eingehalten
* Alle zugrundeliegenden Normen und Spezifikationen werden eingehalten
* Der Dateityp CSV wird mit deutschen Formatierungen und Zeichensätzen ausgegeben. Delimiter ist ";"
* Der Dateityp XML wird RFC- und W3C-konform im UTF-8 Zeichensatz ausgegeben.
* Die Protokolle FTP und JSON werden RFC- und W3C-konform angewendet.


Daraus folgt:
'''Daraus folgt:'''


* Es werden '''keine Anpassung''' aufgrund von Einschränkungen oder Inkompatibilitäten auf der Seite des Shopsystems durchgeführt, auch nicht auf Anfrage oder gegen Kostenerstattung
* Es werden '''keine Anpassung''' aufgrund von Einschränkungen oder Inkompatibilitäten auf der Seite des Shopsystems durchgeführt, auch nicht auf Anfrage oder gegen Kostenerstattung
Zeile 24: Zeile 21:
* Es muss nicht die Schnittstelle, sondern immer das Shopsystem angepasst werden. Dies ist nicht Aufgabe des Schnittstellenanbieters, sondern des Webshopentwicklers.
* Es muss nicht die Schnittstelle, sondern immer das Shopsystem angepasst werden. Dies ist nicht Aufgabe des Schnittstellenanbieters, sondern des Webshopentwicklers.


{{Achtung|Sie erhalten auf Anfrage Hilfestellung zu Schnittstellendefinitionen, keinesfalls jedoch zu branchenspezifischen Themen. Für branchenspezifische Themen sprechen Sie ausschließlich Ihren Auftraggeber an. Vor der Implementierung fragen wir bei Ihrem Auftraggeber eine Freigeabe für die Erstattung der Beratungskosten an und dokumentieren den Aufwand}}
{{Achtung|Sie erhalten auf Anfrage Hilfestellung zu Schnittstellendefinitionen, jedoch keinesfalls zu branchenspezifischen Themen. Zu branchenspezifische Themen sprechen Sie ausschließlich den Auftraggeber an}}  


==Formate==
Vor der Implementierung fordern wir beim Auftraggeber eine Freigabe zur Erstattung der Beratungskosten an.
Neben den branchenspezifischen Schnittstellen (KOLLEX, OctopusOrder, Refill, Gastivo) unterstützt FAKTURA-X auch allgemeine EDI Formate.
Der entstandenen Aufwand wird dokumentiert.


{{Tipp1|Informationen dazu erhalten Sie vom Hersteller}}
==Dateiformate==
 
'''[[wikipedia:de:CSV_%28Dateiformat%29|CSV-Dateien]]'''
* 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==
Im einfachsten Fall werden Stammdaten als [[wikipedia:de:CSV_%28Dateiformat%29|CSV]]-Daten bereitgestellt und auf einen [[wikipedia:de:File_Transfer_Protocol|FTP]]-Server übertragen. Die Auftragsdaten werden als [[wikipedia:de:Extensible_Markup_Language|XML]]-Dateien von einem FTP-Server heruntergeladen und verarbeitet. Das Abrufen
 
* Das ''[[wikipedia:de:File_Transfer_Protocol|FTP-Protokoll]]'' wird RFC- und W3C-konform angewendet.
* Der FTP-Client der Anwendung arbeitet im passiven Modus, es wird der Standardport verwendet
* Die Anmeldung am Server erfolgt mit einem Benutzernamen und einem Passwort.
* Der Befehlssatz des Servers muss ASCII, CWD, DELE, GET, NLST und STOR umfassen<ref>https://en.wikipedia.org/wiki/List_of_FTP_commands</ref>
 
{{Tipp1|Neben den branchenspezifischen Schnittstellen (KOLLEX, OctopusOrder, Gastivo) unterstützt die Anwendung auch EDI-Formate}}
 
==Bereitstellung von Daten==
Im einfachsten Fall werden Stammdaten als [[wikipedia:de:CSV_%28Dateiformat%29|CSV]]-Daten bereitgestellt und auf einen [[wikipedia:de:File_Transfer_Protocol|FTP]]-Server übertragen. Die Auftragsdaten werden als [[wikipedia:de:Extensible_Markup_Language|XML]]-Dateien von einem FTP-Server herutergeladen und verarbeitet. Das Abrufen und Verarbeiten der Aufträge kann automnatisch oder manuell erfolgen.
 
* Informationen für die Auftragsverarbeitung finden Sie [[Aufträge_importieren|hier]].
* Die Einstellungen für für den Datenaustausch mit WEBDRINK 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==
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.
 
===Formatkennzeichen===


{| class="wikitable"
{| class="wikitable"
|+ Formatkennzeichen
|-
! Zeichen !! Bedeutung !!Format
! Zeichen !! Bedeutung !!Format
|-
|-
Zeile 43: Zeile 71:
|-
|-
| B || Logischer Wert || True/False oder Wahr/Falsch, ohne Delimiter
| B || Logischer Wert || True/False oder Wahr/Falsch, ohne Delimiter
|
|-
| D || Datum || ISO 8601 JJJJ-MM-TT, Zeitanteil wird ignoriert
| D || Datum || ISO 8601 JJJJ-MM-TT, Zeitanteil wird ignoriert
|-
|-
Zeile 50: Zeile 78:
| @ || Zeitstempel || JJJJ-MM-TT hh:nn:ss, Millisekunden werden ignoriert
| @ || Zeitstempel || JJJJ-MM-TT hh:nn:ss, Millisekunden werden ignoriert
|}
|}
Es werden generell keine Delimiter eingesetzt.
==Abweichende Definitionen==
Sollte eine Anforderung mit diesem Leitfaden nicht abgedeckt werden können, sprechen Sie uns bitte an.
{{Tipp1|Eine Anpassung oder Erweiterung ist nach Absprache kostenpflichtig möglich.}}
==Bereitstellung von Daten==
Im einfachsten Fall werden Stammdaten als [[wikipedia:de:CSV_%28Dateiformat%29|CSV]]-Daten bereitgestellt und auf einen FTP-Server übertragen. Die Auftragsdaten werden als [[wikipedia:de:Extensible_Markup_Language|XML]]-Dateien von einem FTP-Server herutergeladen und verarbeitet. Das Abrufen und Verarbeiten der Aufträge kann automnatisch oder manuell erfolgen.
* Informationen für die Auftragsverarbeitung finden Sie [[Aufträge_importieren|hier]].
* Die Einstellungen für für den Datenaustausch mit WEBDRINK finden Sie [[WEBDRINK-Schnittstelle|hier]].
* Die Einstellungen für für den Datenaustausch mit Shopware oder Magento u.ä. finden Sie  [[Webshop-Schnittstelle|hier]].
==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.
'''Folgende Standards werden vereinbart:'''
* 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 Windows 1252 (ANSI).
{{Tipp1|Eine Anpassung oder Erweiterung ist nach Absprache kostenpflichtig möglich.}}


===Feldbeschreibungen Datei "Kunden.csv“===
===Feldbeschreibungen Datei "Kunden.csv“===
Zeile 818: Zeile 821:
  </order>
  </order>
  </xml>
  </xml>
= Einzelnachweise =
<references />