Eine Übersicht über die verschiedenen Dateiformate anhand einer Reisekostenabrechnung
In Deutschland gelten für die Abrechnung von Reisekosten bestimmte steuerliche Regelungen. Am Markt gibt es einige Softwarelösungen für die Reisekostenabrechnung, die helfen, diese Regelungen korrekt anzuwenden. Danach müssen die Reisekosten und Auslagen in die Finanzbuchhaltung übertragen und an die Mitarbeiter ausgezahlt werden. Wenn jedoch nach der Erstellung der Abrechnung die gewonnenen Daten manuell in die Finanzbuchhaltung übertragen werden müssen, hört der Spaß auf.
Um diese sogenannten “Medienbrüche” zu vermeiden, gibt es Schnittstellen von den Reisekosten-Softwarelösungen zu verschiedenen Buchhaltungssystemen. Als Platzhirsch bei den Steuerberatern kann nach wie vor DATEV bezeichnet werden. Deshalb erklärt dieser Beitrag die verschiedenen Möglichkeiten, wie die Daten von einer Software für Reisekosten, am Beispiel von Spesenfuchs, nach DATEV übertragen werden können.
An einem konkreten Beispiel werden alle drei Möglichkeiten durchgespielt. Es wird jeweils ganz konkret der Aufbau der Dateien erklärt.
Produkte
Zuerst werden ganz kurz die Produkte vorgestellt, um die es im folgenden geht:
Kanzlei-Rechnungswesen ist eine Software von DATEV für Steuerberater, mit der dieser alle Tätigkeiten von der Finanzbuchführung bis zum Jahresabschluss abwickeln kann.
DATEV-Belegtransfer ist ein kostenloses Tool von DATEV, um (durch den Steuerberater) Belegdaten vom Mandanten zum DATEV Rechenzentrum zu senden.
DATEV Unternehmen Online, DUO genannt, ersetzt den „Pendelordner“. Unternehmen können ihre Belege über diese Online Anwendung an den Steuerberater senden. Hier besteht die Möglichkeit, auch Buchungsdaten wie Beträge, Beschreibungen und Konten mit zu senden.
Spesenfuchs ist eine Online Softwarelösung für die Reisekostenabrechnung.
Überblick
Einleitend kann gesagt werden, dass es 3 (bzw. 4) Möglichkeiten gibt, die Daten nach DATEV zu bringen:
- CSV-Datei, die in Kanzlei-Rechnungswesen importiert wird
- XML-Datei, die in DATEV Unternehmen online importiert wird
- CSV-Datei in Kombination mit einer XML-Datei (Mischung aus 1. und 2.)
- Übertragung der Daten von 2. durch eine Online-API (automatisiert)
Beispielsituation
Im folgenden werden die folgenden Daten als Basis für die Beispiele genommen: der selbstständige Poolbauer Sepp Elmann geht auf eine 1-tägige Geschäftsreise von Karlsruhe nach Freiburg. Abfahrt 6:00, Rückkehr am Folgetag um 23:00. Er reicht einen Bewirtungsbeleg ein.
Seine Abrechnung sieht aus wie folgt:
Die Abrechnung ist zwar übersichtlich für den Geschäftsreisenden, enthält jedoch nicht die Konten für die Buchungen. Dafür gibt es eine Buchungsliste für diese Reise, die alle Buchungen enthält.
Diese Buchungsliste listet alle notwendigen Buchungssätze auf, um die Reisekosten korrekt zu buchen, einschliesslich der MwSt-Besonderheiten etc. Zwar macht es diese Liste einfach, die Buchungen in die Buchhaltung zu übertragen, aber das ist natürlich mühsam. Wäre es da nicht schön, wenn man das ganze direkt an die Buchhaltungssoftware übergeben könnte? Hier sind wir beim eigentlichen Thema dieses Beitrags, bei den Schnittstellen.
Die CSV Schnittstelle
Die CSV Schnittstelle ist das älteste der DATEV Formate. Mit der CSV Schnittstelle können keine Belegbilder nach Kanzlei Rechnungswesen übertragen werden. Dieses Format wird auch von vielen anderen Programmen unterstützt und kann somit fast als de Facto Standard bezeichnet werden. Es handelt sich um nur eine einzige Datei, die mit EXTF_ beginnt und mit .csv endet.
Erste Zeile: Die erste Zeile hat immer den gleichen Aufbau und enthält Informationen für die gesamte Datei wie z.B. die DATEV-Beraternummer und die DATEV-Mandantennummer.
Zweite Zeile: Die zweite Zeile der Datei hat ebenfalls immer den gleichen Aufbau und liefert die Überschriften für die folgenden Datenzeilen.
N Datenzeilen: Eine Zeile pro Buchungssatz. Stolze 120 Spalten, die in unserem Fall nicht alle gefüllt werden müssen.
Das folgende Bild zeigt die CSV Datei. In der zweiten Zeile sind die Überschriften für die Buchungszeilen.
Der Weg der Daten ist einfach: der Anwender schickt die Datei an den Steuerberater und dieser liest sie direkt in Kanzlei Rechnungswesen ein. Wie oben beschrieben besteht der Nachteil darin, dass auf diesem Weg keine Belegbilder übertragen werden können.
Die XML Schnittstelle
Die DATEV XML-Schnittstelle ist eine XML-basierte Dateischnittstelle für den Import von Daten nach DATEV Unternehmen online. Mit diesem Dateiformat können die Buchungen sowohl mit Datensätzen als auch den dazugehörigen Belegbildern übertragen werden. Der Import dieser Dateien erfolgt über die Desktopapplikation DATEV Belegtransfer.
Ein Satz von Dateien für die Buchungen aus unserem Beispiel enthält für die XML Schnittstelle folgende Dateien:
Im folgenden wird auf diese Dateien im einzelnen eingegangen.
Eine Datei “document.xml”:
Weiter enthält der Satz von Dateien N Dateien mit der Endung .xml. Die Anzahl der Dateien ist davon abhängig, wie der Hersteller der Software, die diese generiert, die Daten aufteilt. Im Falle von Spesenfuchs wird je Beleg und je Fahrt eine Datei erzeugt und eine weitere Datei für die Reise und ihre Verpflegungspauschalen und ggf. die Abzüge für Mahlzeiten. In unserem Beispiel sind das also 3 Dateien, eine für die Reise mit ihren Verpflegungsmehraufwendungen, eine für die Fahrt und eine für den Beleg. Diese Dateien sind aufgebaut wie folgt:
Weitere Dateien sind sämtliche Belegbilder und sonstige Dateien, in unserem Beispiel die Reisekostenabrechnung der Reise (bereits oben abgebildet, Abbildung 2) und der Beleg für die Bewirtung.
Wenn man sich nun die Dateien genauer ansieht, stellt man fest, dass die document.xml so etwas wie ein Inhaltsverzeichnis für das Gesamtpaket darstellt. Die document.xml stellt die Verbindung zwischen den einzelnen .xml Dateien und den Belegbildern her. Wir schauen das am Beispiel des Belegs für die Bewirtung genauer an.
In der document.xml gibt es diesen Abschnitt:
Durch diesen kann beim Import das Bild für die Bewirtung mit dem Dateinamen 202009071523–316261422–1.png den Buchungsdaten in der Datei SPF_1_559_002.xml zugeordnet werden.
Die Datei SPF_1_559_002.xml enthält die Buchungsdaten für diesen Beleg (oberer Bereich der Übersichtlichkeit halber weggelassen):
...2020–08–31 19.70 6640 8 EUR Bewirtungskosten, Mahlzeit, Einladung Kunde nach erfolgreich Bewirtungskosten 70001 2020–08–31 2020–08–31 12.60 6640 9 EUR Bewirtungskosten, Getränke, Einladung Kunde nach erfolgreich Bewirtungskosten 70001 2020–08–31
Gleiches gilt für die anderen Abschnitte bzw. Dateien.
Wären negative Beträge notwendig, z.B. bei einer Mahlzeitenkürzung, würden diese ein Minus erhalten.
Wenn nun ein Beleg ohne Bild eingegeben werden würde, müsste man ein Dummy Bild übertragen, andernfalls wäre eine Übergabe der Buchungsdaten mit diesem Schnittstellenformat nicht möglich.
Der Weg der Daten geht vom User an den Steuerberater, von da über die App DATEV Belegtransfer nach DATEV Unternehmen online und von dort nach Kanzlei Rechnungswesen.
Die XML+ CSV Schnittstelle
Bei dieser Schnittstelle handelt es sich um eine Mischung aus den beiden oben beschriebenen XML und CSV. Sowohl XML als auch CSV enthalten jedoch an bestimmten Stellen andere Daten.
Ein Satz von Dateien für die Buchungen aus unserem Beispiel enthält für die XML + CSV Schnittstelle folgende Dateien:
Die in Abbildung 11 gezeigte Zip Datei geht, ohne diese zu entpacken, an den Steuerberater. Ihr Inhalt ist ähnlich wie bei der XML Schnittstelle aber nicht gleich:
Da die Buchungsdaten aus der CSV Datei entnommen werden, entfällt die Sache mit dem Dummy Bild. Über die XML Schnittstelle kommen nur die tatsächlich notwendigen Belegbilder. Somit entfallen auch alle Daten zu den Belegen in der XML Datei. Die XML Datei ist somit wesentlich kleiner. Es gibt außer der document.xml Datei keine weiteren XML Dateien.
Auch bei diesem Schnittstellenformat stellt die document.xml Datei eine Art Inhaltsverzeichnis dar.
Doch zuerst müssen wir uns noch die CSV Datei anschauen: In der CSV Datei gibt es ebenfalls einen Unterschied zur reinen CSV Schnittstelle: in der Spalte “Beleglink” wird die UUID oder auch GUID, also ein einmaliger Identifier aufgeführt, der ebenfalls in der document.xml verwendet wird. Hierdurch kann die Verbindung zwischen den Bildern und den Buchungen in der CSV Datei hergestellt werden.
Um auch in diesem Beispiel den Beleg für die Bewirtung zu erklären, sehen wir uns diesen Bereich in der XML Datei an:
Wenn die guid’s der beiden Zeilen in der CSV Datei für die Bewirtung mit diesen beiden Einträgen verglichen werden, erkennt man die die Verbindung, die hier hergestellt wird und beim Einlesen über DUO bzw. Kanzlei-Rechnungswesen die Belegbilder mit den Buchungen verknüpft.
Der Weg der Daten ist wie folgt:
Die CSV Datei wird vom Steuerberater direkt in Kanzlei Rechnungswesen eingelesen. Die XML Datei wird vom Steuerberater über die App DATEV Belegtransfer in DATEV Unternehmen online und von dort nach Kanzlei Rechnungswesen importiert. Durch die UUID wird eine Verknüpfung der Daten erzeugt.
Schnittstelle DATEV Online
Die DATEV online Schnittstelle bedient sich der Dateien der oben beschriebenen XML Schnittstelle. Die Daten aus XML Schnittstelle werden online von der externen Anwendung selbst direkt an DATEV Unternehmen online gesendet. Ein manuelles Handling entfällt. Die Struktur der Daten ist jedoch gleich wie bei der XML Schnittstelle. Da wir uns hier nur den Dateiformaten widmen, gibt es nicht mehr zu diesem Thema zu sagen.
Zusammenfassung
Im Grunde ist der Sachverhalt nicht kompliziert. Aber selbst wir bei Spesenfuchs haben die Unterschiede erstmal verstehen müssen, als wir die Schnittstellen implementiert haben. Deshalb dieser Beitrag.
Weiter möchten wir unseren Anwendern einen detaillierteren Überblick über die Möglichkeiten des Exports geben, um besser entscheiden zu können, welches Format verwendet werden soll. Alle beschriebenen Formate können in Spesenfuchs erzeugt werden.
Links zum Thema
https://www.datev-community.de moderiertes Forum von DATEV
https://developer.datev.de/portal/ Entwickler Portal von DATEV (kostenloser Login notwendig)