Belegsatzdatendatei

Allgemein

Die Belegsatzdatendatei kann in jedem Document-Package 0 bis n mal vorkommen. Eine Datei verwaltet die Informationen jeweils einer Rechnung/eines Tagesprotokolls einer Kasse/einzelner Transaktionen des Tages einer Kasse. Die dazugehörigen XSD-Spezifikationen sind wie folgt bezeichnet:

  • "Belegverwaltung_online_ledger_import_v050.xsd" für die Datenelemente
  • "Belegverwaltung_online_ledger_types_v050.xsd" für die Datentyp-Definition (Länge, Wertebereich, etc.)


Beispiel

Das nachfolgende Beispiel zeigt eine Ausgangsrechnung mit drei verschiedenen Steuersätzen.
Rechnungsdaten_RE2020-001.xml (enthält nicht alle möglichen Datenfelder)

<?xml version="1.0" encoding="utf-8"?>
<LedgerImport xmlns="http://xml.datev.de/bedi/tps/ledger/v050" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://xml.datev.de/bedi/tps/ledger/v050 Belegverwaltung_online_ledger_import_v050.xsd" version="5.0" 
generator_info="DATEV" generating_system="DATEV-Musterdaten" xml_data="Kopie nur zur Verbuchung berechtigt nicht zum Vorsteuerabzug">
  <consolidate consolidatedAmount="326.00" consolidatedDate="2020-01-04" consolidatedInvoiceId="RE2020-001" consolidatedCurrencyCode="EUR">
    <accountsReceivableLedger>
        <date>2020-01-04</date>
        <amount>119.00</amount>
        <accountNo>8400</accountNo>
<!--    <buCode>3</buCode> -->
        <costCategoryId>10</costCategoryId>
        <costCategoryId2>20</costCategoryId2>
        <tax>19.00</tax>
        <information>Ausgangsrechnung mit drei Steuersätzen</information>
        <currencyCode>EUR</currencyCode>
        <invoiceId>RE2020-001</invoiceId>
        <bookingText>Erlöse 19%</bookingText>
        <partyId>Kd123</partyId>
        <paidAt>2020-01-14</paidAt>
        <iban>DE19820560601553002861</iban>
        <dueDate>2020-01-18</dueDate>
        <bpAccountNo>10000</bpAccountNo>
        <customerName>Musterkunde</customerName>
        <customerCity>Musterstadt</customerCity>
    </accountsReceivableLedger>
    <accountsReceivableLedger>
        <date>2020-01-04</date>
        <amount>107.00</amount>
        <accountNo>8300</accountNo>
<!--    <buCode>2</buCode> -->
        <costCategoryId>10</costCategoryId>
        <costCategoryId2>20</costCategoryId2>
        <tax>7.00</tax>
        <information>Ausgangsrechnung mit drei Steuersätzen</information>
        <currencyCode>EUR</currencyCode>
        <invoiceId>RE2020-001</invoiceId>
        <bookingText>Erlöse 7%</bookingText>
        <partyId>Kd123</partyId>
        <paidAt>2020-01-14</paidAt>
        <iban>DE19820560601553002861</iban>
        <dueDate>2020-01-18</dueDate>
        <bpAccountNo>10000</bpAccountNo>
        <customerName>Musterkunde</customerName>
        <customerCity>Musterstadt</customerCity>
    </accountsReceivableLedger>
    <accountsReceivableLedger>
        <date>2020-01-04</date>
        <amount>100.00</amount>
        <accountNo>8100</accountNo>
<!--    <buCode>1</buCode> -->
        <costCategoryId>10</costCategoryId>
        <costCategoryId2>20</costCategoryId2>
        <tax>0.00</tax>
        <information>Ausgangsrechnung mit drei Steuersätzen</information>
        <currencyCode>EUR</currencyCode>
        <invoiceId>RE2020-001</invoiceId>
        <bookingText>Erlöse 0%</bookingText>
        <partyId>Kd123</partyId>
        <paidAt>2020-01-14</paidAt>
        <iban>DE19820560601553002861</iban>
        <dueDate>2020-01-18</dueDate>
        <bpAccountNo>10000</bpAccountNo>
        <customerName>Musterkunde</customerName>
        <customerCity>Musterstadt</customerCity>
    </accountsReceivableLedger>
  </consolidate>
</LedgerImport>


Aufbau

Element <LedgerImport>

Das Rootelement LedgerImport hat folgende Bestandteile:

Bezeichnung

Typ

Beschreibung

Kardinalität

xmlns Attribut verwendete XSD-Version, aktuell: "http://xml.datev.de/bedi/tps/
ledger/v050"
1...1
xmlns:xsi Attribut fester Inhalt "http://www.w3.org/2001/
XMLSchema-instance"
1...1
xsi:schemaLocation Attribut verwendete XSD-Version, aktuell: "http://xml.datev.de/bedi/tps/
ledger/v050 Belegverwaltung_online
_ledger_import_v050.xsd"
1...1
generator_info Attribut Unternehmen, welches die XML-Datei erzeugt hat 1...1
version Attribut verwendete XSD-Version, aktuell: "5.0" 1...1
xml_data Attribut fester Hinweis zum Vorsteuerabzug 1...1
generating_system Attribut Software, welche die XML-Datei erzeugt hat 0...1
consolidate Element Beinhaltet die konkreten Daten einer Rechnung/Kasse 1...1


Element LedgerImport/<consolidate>

Dieses Element bildet die äußerste Klammer für die konkreten Daten einer Rechnung/Kasse.

Bezeichnung

Typ

Beschreibung

Kardinalität

consolidatedAmount Attribut Summe der einzelnen Positionsbeträge 1...1
consolidatedDate Attribut Datum der Rechnung/Kassentransaktion 1...1
consolidatedInvoiceID Attribut ID der Rechnung/Kassentransaktion 0...1
consolidatedDeliveryDate Attribut Leistungsdatum
Pflicht, wenn in base1 verwendet
0...1
consolidatedOrderId Attribut Transaktions-ID für Zahlungsreferenz
Pflicht, wenn in base1 verwendet
0...1
consolidatedCurrencyCode Attribut 3-stelliges Währungskürzel gem. ISO 4217 1...1
accountsPayableLedger
accountsReceivableLedger
cashLedger
Element
(xsd:choice)
Daten für eine Eingangsrechnung
Daten für eine Ausgangsrechnung
Daten für eine Kasse
1...5000


Element LedgerImport/consolidate/<accountsPayableLedger>

Dieses Element kann zur Abbildung verschiedener fachlicher Szenarien für eine Eingangsrechnung genutzt werden. Beim Import in die DATEV App wird dieses Element in einen Datensatz überführt. Der Softwarehersteller muss sich hier entscheiden, mit welcher Granularität (z.B. einzelne Rechnungsposition, Warengruppenkonsolidierung, Steuersatzkonsolidierung, Rechnungssumme) er die Daten für seine Kunden bereitstellen möchte. Das Element ist wie folgt aufgebaut:

Bezeichnung

Typ

Beschreibung

Kardinalität

base1 Element
(xsd:extension)
Enthält diverse Datenfelder 1...1
supplierName Element Name des Lieferanten 0...1
supplierCity Element Standort des Lieferanten 0...1


Element LedgerImport/consolidate/<accountsReceivableLedger>

Dieses Element kann zur Abbildung verschiedener fachlicher Szenarien für eine Ausgangsrechnung genutzt werden. Beim Import in die DATEV App wird dieses Element in einen Datensatz überführt. Der Softwarehersteller muss sich hier entscheiden, mit welcher Granularität (z.B. einzelne Rechnungsposition, Warengruppenkonsolidierung, Steuersatzkonsolidierung, Rechnungssumme) er die Daten für seine Kunden bereitstellen möchte. Das Element ist wie folgt aufgebaut:

Bezeichnung

Typ

Beschreibung

Kardinalität

base1 Element
(xsd:extension)
Enthält diverse Datenfelder 1...1
customerName Element Name des Kunden 0...1
customerCity Element Standort des Kunden 0...1


Element LedgerImport/consolidate/<cashLedger>

Dieses Element kann zur Abbildung verschiedener fachlicher Szenarien für eine Kasse genutzt werden. Beim Import in die DATEV App wird dieses Element in einen Datensatz überführt. Der Softwarehersteller muss sich hier entscheiden, mit welcher Granularität (z.B. einzelne Kassentransaktion, Warengruppenkonsolidierung, Steuersatzkonsolidierung, Tagesabschluss) er die Daten für seine Kunden bereitstellen möchte. Das Element ist wie folgt aufgebaut:

Bezeichnung

Typ

Beschreibung

Kardinalität

base Element
(xsd:extension)
Enthält diverse Datenfelder 1...1
currencyCode Element Währungscode, für Kassendaten nur "EUR" zulässig 1...1
invoiceId Element ID der Transaktion 0...1
bookingText Element Buchungstext 1...1


Element <base> (xsd:extension)

Dieses Element enthält folgende Basisinformationen für den Datensatz:

Bezeichnung

Typ

Beschreibung

Kardinalität

date Element Belegdatum 1...1
amount Element Betrag (Brutto empfohlen) 1...1
discountAmount Element Skontobetrag (Skontobetrag1) 0...1
accountNo Element Sachkonto (Konto)
4-8 stellig (abhängig von Einstellungen)
0...1
buCode Element Buchungsschlüssel (Übersicht) 0...1
costAmount Element Information für Kostenrechnung (KOST-Menge) 0...1
costCategoryId Element Information für Kostenrechnung (KOST1) 0...1
costCategoryId2 Element Information für Kostenrechnung (KOST2) 0...1
tax Element Steuersatz (Steuer%) 0...1
information Element Freitext 120 (Nachricht) 0...1


Element <base1> (xsd:extension)

Dieses Element enthält weitere Basisinformationen für den Datensatz:

Bezeichnung

Typ

Beschreibung

Kardinalität

base Element
(xsd:extension)
Basisinformationen 1...1
currencyCode Element 3-stelliges Währungskürzel gem. ISO 4217 1...1
invoiceId Element Rechnungsnummer 1...1
bookingText Element Buchungstext (30 Zeichen) 0...1
typeOfReceivable Element Forderungsart
(OPOS-Informationen kommunal)
0...1
ownVatId Element Eigene Umsatzsteuer-ID
(insb. für OSS-Verfahren)
0...1
shipFromCountry Element Nationalitätskennzeichen, 2 stellig gem. ISO3166
(insb. für OSS-Verfahren)
0...1
partyId Element Kundennummer für Beleg 0...1
paidAt Element Zahlungsdatum (Gezahlt am)
Beleg erhält Stempel "bezahlt".
0...1
internalInvoiceId Element interne Rechnungsnummer 0...1
vatId Element Umsatzsteuer-ID des Geschäftspartners
(insb. für OSS-Verfahren)
0...1
shipToCountry Element Nationalitätskennzeichen, 2 stellig gem. ISO3166
(insb. für OSS-Verfahren)
0...1
exchangeRate Element Umrechnungskurs 0...1
bankCode Element Bankleitzahl 0...1
bankAccount Element Bankkontonummer 0...1
bankCountry Element Nationalitätskennzeichen, 2 stellig gem. ISO3166 0...1
iban Element IBAN 0...1
swiftCode Element SWIFT/BIC-Code 0...1
accountName Element Bezeichnung des Sachkontos 0...1
paymentConditionsId Element Zahlungsbedingungsnummer 0...1
discountPercentage Element Prozentsatz des Skontos (Skonto1 in %) 0...1
discountPaymentDate Element Fälligkeitsdatum (Fällig (m. Skto. 1)) 0...1
discountAmount2 Element Skontoinformation (Skontobetrag2) 0...1
discountPercentage2 Element Prozentsatz des Skontos (Skonto2 in %) 0...1
discountPaymentDate2 Element Fälligkeitsdatum (Fällig (m. Skto. 2)) 0...1
dueDate Element Fälligkeitsdatum (Fällig (o. Skto.)) 0...1
bpAccountNo Element Personenkonto 0...1
deliveryDate Element Leistungsdatum 0...1
orderId Element Auftragsnummer, z.B. von PayPal 0...1