Die Datev XML Schnittstelle Action erzeugt ein DATEV-konformes ZIP-Paket (LedgerImport-Format v6.0) bestehend aus einer document.xml, einer Rechnungsdaten-XML sowie dem Original-Belegdokument und legt dieses als neues Objekt in docuvita ab. Von dort kann es heruntergeladen und in DATEV Unternehmen Online importiert werden.
Unterstützte Buchführungskreise:
| Wert | Beschreibung |
|---|---|
Success |
Das DATEV-ZIP wurde erfolgreich erzeugt und in docuvita abgelegt. |
Failure |
Ein Fehler ist aufgetreten. Details stehen im docuvita-Serverlog. |
| Feldname | Typ | Pflicht | Beschreibung |
|---|---|---|---|
ObjectTypeName |
Text | Ja | Interner Name des Ziel-Objekttyps in docuvita, unter dem das DATEV-ZIP abgelegt wird. |
ParentId |
Text | Nein | Numerische ID des übergeordneten docuvita-Objekts (0 = Root). |
Type |
Auswahl | Ja | DATEV-Buchführungskreis. Bestimmt den XML-Elementnamen und den Dokumententyp. |
OrderType |
Text | Ja | Frei wählbare Belegart-Bezeichnung (DATEV Key3), z.B. Eingangsrechnungen. Max. 120 Zeichen. |
OrderNumber |
Text | Nein | Rechnungsnummer (DATEV invoiceId). Erlaubte Zeichen: a–z A–Z 0–9 $ % & * + - /. Max. 12 Zeichen. |
OrderDate |
Text | Nein | Belegdatum. Akzeptiert alle .NET-parsbaren Formate, z.B. 20.04.2026 oder 2026-04-20. |
Gültige Werte für Type:
| Wert | Bedeutung | DATEV Dokumententyp |
|---|---|---|
accountsPayableLedger |
Kreditorenbuchhaltung (Eingangsrechnungen) | 1 |
accountsReceivableLedger |
Debitorenbuchhaltung (Ausgangsrechnungen) | 2 |
cashLedger |
Kassenbuch | 1 |
| Feldname | Typ | Pflicht | Beschreibung |
|---|---|---|---|
Amount |
Text | Nein | Brutto-Rechnungsbetrag. Akzeptiert deutsche (9,99) und englische (9.99) Schreibweise. Wertebereich: -9999999999.99 bis 9999999999.99, nicht 0.00. Genau 2 Nachkommastellen. |
CurrencyCode |
Text | Nein | Währungscode nach ISO 4217, genau 3 Großbuchstaben. Beispiele: EUR, USD, CHF. Nur von DATEV unterstützte Codes sind gültig. |
ExchangeRate |
Text | Nein | Wechselkurs zur Basiswährung. Eingabe als 1, 1.5 oder 1,5 möglich – wird automatisch auf 6 Nachkommastellen formatiert. Wertebereich: 0.000001–9999.999999. Bei EUR-Rechnungen: 1. |
SupplierNumber |
Text | Nein | DATEV-Personenkontonummer wie im DATEV-Mandanten angelegt. Rein numerisch, 5–9 Stellen, Wertebereich 10000–999999999. Beispiel: 70001. |
CostCenter |
Text | Nein | Kostenstelle (DATEV costCategoryId). Alphanumerisch, max. 36 Zeichen, kein führendes oder nachfolgendes Leerzeichen. Beispiel: K100. |
CostObjective |
Text | Nein | Kostenträger / 2. Kostenstelle (DATEV costCategoryId2). Alphanumerisch, max. 36 Zeichen. Beispiel: P001. |
Information |
Text | Nein | Freitextinformation zur Buchung (DATEV information). Beliebige Zeichen, max. 120 Zeichen. |
Hinweis zu
SupplierNumber: Der Wert muss die rein numerische DATEV-Kontonummer sein, wie sie im DATEV-Mandanten unter Stammdaten hinterlegt ist. Buchstaben-Präfixe (z.B.Lfür Lieferant) sind nicht zulässig und führen zur Ablehnung durch das DATEV-Prüftool.
| Feldname | Typ | Pflicht | Beschreibung |
|---|---|---|---|
BankCode |
Text | Nein | Bankleitzahl (BLZ), numerisch, max. 10 Stellen. Beispiel: 70090100. |
BankAccount |
Text | Nein | Kontonummer des Geschäftspartners (ohne IBAN), max. 30 Zeichen. Beispiel: 56789805. |
BankCountry |
Text | Nein | Länderkürzel der Bank nach ISO 3166-1 alpha-2, genau 2 Großbuchstaben. Beispiele: DE, AT, CH. |
Iban |
Text | Nein | IBAN nach ISO 13616, max. 34 Zeichen. Format: 2 Großbuchstaben + 2 Prüfziffern + bis zu 30 alphanumerische Stellen. Beispiel: DE56810930440056789805. |
SwiftCode |
Text | Nein | BIC/SWIFT-Code, max. 11 Zeichen. Format: 4 Bankcode + 2 Ländercode + 2 Ortscode + optional 3 Filialcode. Beispiel: GENODEF1OBG. |
| Feldname | Typ | Pflicht | Beschreibung |
|---|---|---|---|
SupplierName |
Text | Nein | Name des Lieferanten. Wird bei accountsPayableLedger als supplierName übergeben. Max. 50 Zeichen. |
SupplierCity |
Text | Nein | Stadt des Lieferanten, max. 30 Zeichen. Beispiel: München. |
CustomerName |
Text | Nein | Name des Kunden. Wird bei accountsReceivableLedger als customerName übergeben. Max. 50 Zeichen. |
CustomerCity |
Text | Nein | Stadt des Kunden, max. 30 Zeichen. Beispiel: Berlin. |
Das Repository definiert die Ordnerstruktur in DATEV Unternehmen Online. Die Ebenen bauen hierarchisch aufeinander auf: Ebene 2 erfordert Ebene 1, Ebene 3 erfordert Ebene 1 und 2. Werden alle Felder weggelassen, legt DATEV den Beleg ohne Ordnerstruktur ab.
| Feldname | Typ | Pflicht | Beschreibung |
|---|---|---|---|
RepositoryLevel1 |
Text | Nein | Oberste Ordnerebene, z.B. Name des exportierenden Systems: Officium. Max. 120 Zeichen. Erforderlich wenn Level2 oder Level3 gesetzt. |
RepositoryLevel2 |
Text | Nein | Zweite Ordnerebene, typisch das Buchungsjahr: 2026. Max. 120 Zeichen. Erfordert Level1. |
RepositoryLevel3 |
Text | Nein | Dritte Ordnerebene, typisch der Buchungsmonat: 4. Max. 120 Zeichen. Erfordert Level1 und Level2. |
document.xml und Rechnungsdaten_*.xml gemäß DATEV-Schema v6.0 erzeugt.RE_<OrderNumber>_<OrderDate>.zip).ObjectTypeName und ParentId in docuvita angelegt.Alle Textfelder unterstützen docuvita-Objektvariablen (@@OBJECT.FELDNAME@@) und Workflowvariablen (@@WORKFLOW.VARIABLENNAME@@). Die Substitution erfolgt vor der XML-Generierung.
Beispiel:
Amount = @@OBJECT.BRUTTOBETRAG@@
OrderNumber = @@OBJECT.RECHNUNGSNUMMER@@
OrderDate = @@OBJECT.RECHNUNGSDATUM@@
9,99) werden automatisch in das DATEV-Format (9.99) konvertiert.CurrencyCode der ExchangeRate mit 1 angegeben werden. Die Action formatiert 1 automatisch zu 1.000000.ledger_import_v060.xsd), nicht „Rechnungsinformationen".SupplierNumber erwartet die numerische DATEV-Kontonummer (5–9 Stellen, z.B. 70001). Buchstaben-Präfixe sind ungültig.