Zum Inhalt

IDoc

Was ist ein IDoc

Ein IDoc (Intermediate Document) ist das strukturierte Nachrichtenformat von SAP zum Austausch von Geschäftsbelegen (z. B. Rechnungen) mit externen Systemen.

  • So erhalten Sie es aus SAP: SAP erzeugt das IDoc in internen Tabellen und kann es als XML (in modernen Integrationen üblich) oder als Textdatei exportieren.
  • So wird es genutzt: Eine externe Plattform (wie xTool oder ein EDI-Anbieter) parst die Segmente, prüft die Struktur und wandelt den Inhalt in das Zielformat (z. B. UBL/Peppol) um.

Segmentgruppen

Nachfolgend eine praktische „Leseliste“ der häufigsten INVOIC02-Segmentgruppen.

  • Steuerung (technischer Umschlag)
    • EDI_DC40: Steuerdatensatz (Sender/Empfänger, IDoc-Typ, Zeitstempel). Überwiegend technische Routing-Metadaten.
  • Kopf („K-Segmente“)
    • E1EDK01: allgemeine Rechnungskopfdaten (Währung, Rechnungsart, USt-IDs, Belegnummern je nach Customizing).
    • E1EDKA1: Kopfpartner (wiederholbar; PARVW legt die Rolle fest: Lieferant, Käufer, Warenempfänger usw.).
    • E1EDK02: Kopfreferenzen (wiederholbar; QUALF legt den referenzierten Beleg fest: Rechnungsnr., Bestellung, Lieferschein, …).
    • E1EDK03: Kopfdaten (wiederholbar; IDDAT legt die Datumsart fest: Fälligkeit, Lieferdatum, …).
    • E1EDK05: Kopfkonditionen (Zuschläge/Rabatte auf Kopfebene, falls vorhanden).
    • E1EDK04: Kopfsteuern (Steuersummen nach Steuercode/-satz, falls vorhanden).
    • E1EDK17: Lieferbedingungen / Incoterms (optional).
    • E1EDK18: Zahlungsbedingungen (optional).
    • E1EDK23: Währungsinformationen (optional).
    • E1EDK28: Bankdaten (IBAN/BIC, Kontoinhaber, optional).
    • E1EDKT1 / E1EDKT2: Kopftexte (optional; freie Textblöcke/-zeilen).
    • E1EDK14: Organisationsdaten (Vertrieb, Vertriebsweg usw., optional).
  • Positionen („P-Segmente“, pro Zeile wiederholt)
    • E1EDP01: Positionsstammdaten (Positionsnr., Menge, Einheit und weiterer Positionskontext).
    • E1EDP02: Positionsreferenzen (optional).
    • E1EDP03: Positionsdaten (optional).
    • E1EDP19: Positionsidentifikation (Materialnummer, GTIN-ähnliche IDs, Kurztexte, optional/wiederholbar).
    • E1EDP26: Positionsbeträge (Preis, Netto-/Bruttobeträge, Zwischensummen; Bedeutung über QUALF; optional/wiederholbar).
    • E1EDP05: Positionskonditionen (Rabatte/Zuschläge auf Positionsebene, optional/wiederholbar).
    • E1EDP04: Positionssteuern (Steuercode/-satz/-betrag auf Positionsebene, optional/wiederholbar).
    • E1EDPT1 / E1EDPT2: Positionstexte (optional).
  • Summen („S-Segmente“)
    • E1EDS01: Summen (wiederholbar; SUMID legt die Summenart fest: Netto, Steuer, Brutto/zahlbar, …).

Typischer Aufbau

So sieht ein als XML exportiertes INVOIC02 typischerweise aus:

<INVOIC02>
  <IDOC BEGIN="1">
    <EDI_DC40 SEGMENT="1"> ... </EDI_DC40>

    <!-- Kopf -->
    <E1EDK01 SEGMENT="1"> ... </E1EDK01>
    <E1EDKA1 SEGMENT="1"> ... </E1EDKA1>
    <E1EDK02 SEGMENT="1"> ... </E1EDK02>
    <E1EDK03 SEGMENT="1"> ... </E1EDK03>
    <E1EDK18 SEGMENT="1"> ... </E1EDK18>
    <E1EDK28 SEGMENT="1"> ... </E1EDK28>

    <!-- Positionen (pro Rechnungszeile wiederholen) -->
    <E1EDP01 SEGMENT="1"> ... </E1EDP01>

    <!-- Summen (wiederholen; SUMID legt die Bedeutung fest) -->
    <E1EDS01 SEGMENT="1"> ... </E1EDS01>
  </IDOC>
</INVOIC02>

Vollständiges Rechnungsbeispiel

Das folgende Beispiel beschreibt eine einfache B2B-Rechnung aus fachlicher Sicht:

  • Lieferant: „xTool Demo Supplier GmbH“ (USt-IdNr. DE987654321)
  • Käufer: „Demo Buyer AG“ (USt-IdNr. DE123456789)
  • Lieferort: „Demo Buyer Warehouse“
  • Rechnungsreferenzen: Rechnungsnummer, Bestellung, Vertriebsauftrag, Lieferschein
  • Zahlung: „30 days net“, Fälligkeitsdatum ist angegeben
  • Positionen: eine Zeile (Menge 10, Einheit C62, Nettopreis 100,00, Positionsnetto 1000,00)
  • Summen: Netto 1000,00, USt 190,00, Brutto 1190,00 (EUR)

Vollständiges Beispiel (komplette Datei)

Im folgenden Beispiel gibt es zwei Register:

  • IDOC: das originale INVOIC02-IDoc (XML-Export aus SAP)
  • XML: die zugehörige Peppol BIS Billing 3.0 (UBL)-Rechnung mit derselben fachlichen Bedeutung

Viele Zeilen in den Beispielen haben ein kleines „+“-Symbol daneben. Klicken Sie darauf, um die Feldbeschreibung auszuklappen.

Integrationshinweise (xTool + Peppol)

  • PARVW='ZX'/STRS2 und PARVW='RE'/STRS2 werden im xTool-Mapping für die Endpoint-Extraktion von Lieferant und Käufer verwendet.
  • MENEE sollte bei Peppol-BIS-Ziel ein UN/ECE-kompatibler Code sein (z. B. C62).
  • E1EDP19/QUALF='003' enthält einen Standard-Artikel-ID-Wert; das IDoc selbst trägt kein schemeID—für striktes UBL/Peppol kann zusätzliches Mapping nötig sein.
<INVOIC02>
    <IDOC BEGIN="1">
        <!-- Steuerdatensatz (technischer Umschlag / Routing-Metadaten) -->
        <EDI_DC40 SEGMENT="1">
            <TABNAM>EDI_DC40</TABNAM> <!-- (1)! -->
            <MANDT>100</MANDT> <!-- (2)! -->
            <DOCNUM>0000000099999999</DOCNUM> <!-- (3)! -->
            <DOCREL>750</DOCREL> <!-- (4)! -->
            <STATUS>30</STATUS> <!-- (5)! -->
            <DIRECT>1</DIRECT> <!-- (6)! -->
            <OUTMOD>2</OUTMOD> <!-- (7)! -->
            <IDOCTYP>INVOIC02</IDOCTYP> <!-- (8)! -->
            <MESTYP>INVOIC</MESTYP> <!-- (9)! -->
            <SNDPOR>SAPDEV1</SNDPOR> <!-- (10)! -->
            <SNDPRT>LS</SNDPRT> <!-- (11)! -->
            <SNDPRN>DEVCLNT100</SNDPRN> <!-- (12)! -->
            <RCVPOR>XTOOL</RCVPOR> <!-- (13)! -->
            <RCVPRT>LS</RCVPRT> <!-- (14)! -->
            <RCVPFC>RE</RCVPFC> <!-- (15)! -->
            <RCVPRN>XTOOLTEST</RCVPRN> <!-- (16)! -->
            <CREDAT>20260731</CREDAT> <!-- (17)! -->
            <CRETIM>103000</CRETIM> <!-- (18)! -->
            <SERIAL>20260731103000</SERIAL> <!-- (19)! -->
        </EDI_DC40>

        <!-- Rechnungskopf (Währung, Art, Rechnungsnummer, USt-IDs usw.) -->
        <E1EDK01 SEGMENT="1">
            <CURCY>EUR</CURCY> <!-- (20)! -->
            <HWAER>EUR</HWAER> <!-- (21)! -->
            <WKURS>1.00000</WKURS> <!-- (22)! -->
            <ZTERM>DN30</ZTERM> <!-- (23)! -->
            <KUNDEUINR>DE123456789</KUNDEUINR> <!-- (24)! -->
            <EIGENUINR>DE987654321</EIGENUINR> <!-- (25)! -->
            <BSART>INVO</BSART> <!-- (26)! -->
            <BELNR>0090999999</BELNR> <!-- (27)! -->
            <GEWEI>KGM</GEWEI> <!-- (28)! -->
            <RECIPNT_NO>0000001234</RECIPNT_NO> <!-- (29)! -->
            <FKTYP>L</FKTYP>
        </E1EDK01>

        <!-- Partner (E1EDKA1 wiederholbar; PARVW legt Rolle fest: RS, RE, WE, ZX, …) -->
        <E1EDKA1 SEGMENT="1">
            <PARVW>RS</PARVW> <!-- (30)! -->
            <PARTN>0000001234</PARTN> <!-- (31)! -->
            <NAME1>xTool Demo Supplier GmbH</NAME1> <!-- (32)! -->
            <NAME2>Finance Department</NAME2> <!-- (33)! -->
            <NAME4>xTool Demo Supplier</NAME4> <!-- (34)! -->
            <STRAS>Teichstrasse 10</STRAS> <!-- (35)! -->
            <ORT01>Kassel</ORT01> <!-- (36)! -->
            <PSTLZ>34130</PSTLZ> <!-- (37)! -->
            <LAND1>DE</LAND1> <!-- (38)! -->
        </E1EDKA1>
        <E1EDKA1 SEGMENT="1">
            <PARVW>RE</PARVW> <!-- (39)! -->
            <PARTN>0000009876</PARTN> <!-- (40)! -->
            <NAME1>Demo Buyer AG</NAME1> <!-- (41)! -->
            <NAME2>Accounts Payable</NAME2> <!-- (42)! -->
            <NAME3>Plant 1</NAME3> <!-- (43)! -->
            <STRAS>Buyer Street 1</STRAS> <!-- (44)! -->
            <STRS2>0208:4000001123452</STRS2> <!-- (45)! -->
            <ORT01>Berlin</ORT01> <!-- (46)! -->
            <PSTLZ>10115</PSTLZ> <!-- (47)! -->
            <LAND1>DE</LAND1> <!-- (48)! -->
            <TELF1>+49 30 123456</TELF1> <!-- (49)! -->
        </E1EDKA1>
        <E1EDKA1 SEGMENT="1">
            <PARVW>WE</PARVW> <!-- (50)! -->
            <PARTN>0000009877</PARTN> <!-- (51)! -->
            <NAME1>Demo Buyer Warehouse</NAME1> <!-- (52)! -->
            <NAME2>Ramp A</NAME2> <!-- (53)! -->
            <NAME3>Gate 3</NAME3> <!-- (54)! -->
            <STRAS>Warehouse Road 7</STRAS> <!-- (55)! -->
            <ORT01>Berlin</ORT01> <!-- (56)! -->
            <PSTLZ>10117</PSTLZ> <!-- (57)! -->
            <LAND1>DE</LAND1> <!-- (58)! -->
        </E1EDKA1>
        <E1EDKA1 SEGMENT="1">
            <PARVW>ZX</PARVW> <!-- (59)! -->
            <PARTN>0000001235</PARTN> <!-- (60)! -->
            <NAME1>xTool Demo Supplier GmbH</NAME1> <!-- (61)! -->
            <NAME2>Invoice Team</NAME2> <!-- (62)! -->
            <NAME3>invoice-team@demo.example</NAME3> <!-- (63)! -->
            <STRS2>9930:DE987654321</STRS2> <!-- (64)! -->
            <TELF1>+49 561 12345</TELF1> <!-- (65)! -->
            <LAND1>DE</LAND1> <!-- (66)! -->
        </E1EDKA1>

        <!-- Belegreferenzen (E1EDK02 wiederholbar; QUALF legt Referenzart fest) -->
        <E1EDK02 SEGMENT="1">
            <QUALF>009</QUALF> <!-- (67)! -->
            <BELNR>INV-2026-0001</BELNR> <!-- (68)! -->
            <DATUM>20260731</DATUM> <!-- (69)! -->
        </E1EDK02>
        <E1EDK02 SEGMENT="1">
            <QUALF>001</QUALF> <!-- (70)! -->
            <BELNR>PO-4500001234</BELNR> <!-- (71)! -->
            <DATUM>20260725</DATUM> <!-- (72)! -->
        </E1EDK02>
        <E1EDK02 SEGMENT="1">
            <QUALF>002</QUALF> <!-- (73)! -->
            <BELNR>SO-7000012345</BELNR> <!-- (74)! -->
            <DATUM>20260725</DATUM> <!-- (75)! -->
        </E1EDK02>
        <E1EDK02 SEGMENT="1">
            <QUALF>012</QUALF> <!-- (76)! -->
            <BELNR>DN-8000012345</BELNR> <!-- (77)! -->
            <DATUM>20260730</DATUM> <!-- (78)! -->
        </E1EDK02>

        <!-- Daten und Zahlungsbedingungen -->
        <E1EDK03 SEGMENT="1">
            <IDDAT>028</IDDAT> <!-- (79)! -->
            <DATUM>20260830</DATUM> <!-- (80)! -->
        </E1EDK03>
        <E1EDK18 SEGMENT="1">
            <QUALF>005</QUALF> <!-- (81)! -->
            <ZTERM_TXT>30 days net</ZTERM_TXT> <!-- (82)! -->
        </E1EDK18>
        <E1EDK28 SEGMENT="1">
            <BCOUN>DE</BCOUN> <!-- (83)! -->
            <BRNUM>HELADEF1KAS</BRNUM> <!-- (84)! -->
            <BNAME>Demo Bank</BNAME> <!-- (85)! -->
            <ACNUM>DE12520503530001153189</ACNUM> <!-- (86)! -->
            <ACNAM>xTool Demo Supplier GmbH</ACNAM> <!-- (87)! -->
        </E1EDK28>

        <!-- Rechnungspositionen (E1EDP01 pro Zeile wiederholen) -->
        <E1EDP01 SEGMENT="1">
            <POSEX>000010</POSEX> <!-- (88)! -->
            <MENGE>10.000</MENGE> <!-- (89)! -->
            <MENEE>C62</MENEE> <!-- (90)! -->
            <E1EDP19 SEGMENT="1"> <!-- (91)! -->
                <QUALF>002</QUALF> <!-- (92)! -->
                <IDTNR>MAT-10001</IDTNR> <!-- (93)! -->
                <KTEXT>Consulting service package</KTEXT> <!-- (94)! -->
            </E1EDP19>
            <E1EDP19 SEGMENT="1">
                <QUALF>003</QUALF> <!-- (95)! -->
                <IDTNR>4260123456789</IDTNR> <!-- (96)! -->
            </E1EDP19>
            <E1EDP26 SEGMENT="1">
                <QUALF>001</QUALF> <!-- (97)! -->
                <BETRG>100.00</BETRG> <!-- (98)! -->
            </E1EDP26>
            <E1EDP26 SEGMENT="1">
                <QUALF>002</QUALF> <!-- (99)! -->
                <BETRG>1000.00</BETRG> <!-- (100)! -->
            </E1EDP26>
            <E1EDP04 SEGMENT="1">
                <MWSKZ>A3</MWSKZ> <!-- (101)! -->
                <MSATZ>19.000</MSATZ> <!-- (102)! -->
                <MWSBT>190.00</MWSBT> <!-- (103)! -->
            </E1EDP04>
        </E1EDP01>

        <!-- Summen (E1EDS01 wiederholbar; SUMID legt die Summenart fest) -->
        <E1EDS01 SEGMENT="1">
            <SUMID>005</SUMID> <!-- (104)! -->
            <SUMME>190.00</SUMME> <!-- (105)! -->
            <WAERQ>EUR</WAERQ> <!-- (106)! -->
        </E1EDS01>
        <E1EDS01 SEGMENT="1">
            <SUMID>010</SUMID> <!-- (107)! -->
            <SUMME>1000.00</SUMME> <!-- (108)! -->
            <WAERQ>EUR</WAERQ> <!-- (109)! -->
        </E1EDS01>
        <E1EDS01 SEGMENT="1">
            <SUMID>012</SUMID> <!-- (110)! -->
            <SUMME>1190.00</SUMME> <!-- (111)! -->
            <WAERQ>EUR</WAERQ> <!-- (112)! -->
        </E1EDS01>
    </IDOC>
</INVOIC02>
  1. TABNAM: technischer Tabellenname des Steuerdatensatzes (EDI_DC40).
  2. MANDT: SAP-Mandant (Mandantennummer).
  3. DOCNUM: eindeutige SAP-IDoc-Nummer.
  4. DOCREL: SAP-Release-/Versionskennzeichen.
  5. STATUS: IDoc-Statuscode in der SAP-Verarbeitung.
  6. DIRECT: Nachrichtenrichtung (1 ausgehend, 2 eingehend).
  7. OUTMOD: Ausgabemodus aus Partnerprofil.
  8. IDOCTYP: IDoc-Basistyp (INVOIC02).
  9. MESTYP: fachlicher Nachrichtentyp (INVOIC).
  10. SNDPOR: Senderport (ALE/EDI).
  11. SNDPRT: Senderpartnertyp.
  12. SNDPRN: Senderpartnerkennung.
  13. RCVPOR: Empfängerport.
  14. RCVPRT: Empfängerpartnertyp.
  15. RCVPFC: Empfängerpartnerfunktion.
  16. RCVPRN: Empfängerpartnerkennung.
  17. CREDAT: IDoc-Erstellungsdatum (YYYYMMDD).
  18. CRETIM: IDoc-Erstellungszeit (HHMMSS).
  19. SERIAL: Serialisierungsschlüssel für Reihenfolge/Gruppierung.
  20. CURCY: Belegwährung.
  21. HWAER: Hauswährung.
  22. WKURS: Wechselkurs.
  23. ZTERM: SAP-Schlüssel Zahlungsbedingungen.
  24. KUNDEUINR: USt-/Steuer-ID des Kunden.
  25. EIGENUINR: USt-/Steuer-ID des Lieferanten.
  26. BSART: Fakturabelegart (INVO, CRME usw.).
  27. BELNR: SAP-Rechnungs-/Belegnummer.
  28. GEWEI: Einheit für Gewichtsfelder.
  29. RECIPNT_NO: Empfängernummer im SAP-Kontext.
  30. PARVW (RS): Partnerrolle = Lieferant/Rechnungsaussteller.
  31. PARTN (RS): Lieferantenpartnernummer.
  32. NAME1 (RS): Lieferantenname (Anzeige/Recht).
  33. NAME2 (RS): zusätzliche Lieferantenzeile/Abteilung.
  34. NAME4 (RS): weitere Lieferantenbezeichnung/Handelsname/Rechtsformtext.
  35. STRAS (RS): Lieferantenstraße.
  36. ORT01 (RS): Lieferantenort.
  37. PSTLZ (RS): Lieferanten-PLZ.
  38. LAND1 (RS): Lieferanten-Ländercode (SAP-ähnlich ISO).
  39. PARVW (RE): Partnerrolle = Rechnungsempfänger / Käufer.
  40. PARTN (RE): Käuferpartnernummer.
  41. NAME1 (RE): Käufername (Anzeige/Recht).
  42. NAME2 (RE): zweite Namenszeile Käufer.
  43. NAME3 (RE): dritte Namenszeile Käufer.
  44. STRAS (RE): Käuferstraße.
  45. STRS2 (RE): zweite Straße/Sonderfeld (häufig Endpoint-Format schema:Wert in dieser Integration).
  46. ORT01 (RE): Käuferort.
  47. PSTLZ (RE): Käufer-PLZ.
  48. LAND1 (RE): Käufer-Ländercode.
  49. TELF1 (RE): Käufer-Kontakttelefon.
  50. PARVW (WE): Partnerrolle = Warenempfänger / Lieferung.
  51. PARTN (WE): Lieferpartnernummer.
  52. NAME1 (WE): Lieferort-/Firmenname.
  53. NAME2 (WE): Lieferadresse Zeile 2 / Qualifiertext.
  54. NAME3 (WE): Lieferadresse Zeile 3 / Qualifiertext.
  55. STRAS (WE): Lieferstraße.
  56. ORT01 (WE): Lieferort.
  57. PSTLZ (WE): Liefer-PLZ.
  58. LAND1 (WE): Liefer-Ländercode.
  59. PARVW (ZX): Kontakt-/Endpoint-Partnerrolle (integrationsspezifisch).
  60. PARTN (ZX): Kontaktpartnernummer.
  61. NAME1 (ZX): Kontaktorganisationsname.
  62. NAME2 (ZX): Kontaktperson/Teamname.
  63. NAME3 (ZX): Kontakt-E-Mail (Projektkonvention).
  64. STRS2 (ZX): Lieferanten-Endpoint (schema:Wert) für das Mapping.
  65. TELF1 (ZX): Kontakttelefon.
  66. LAND1 (ZX): Kontakt-Ländercode.
  67. QUALF=009: Referenzqualifier für Rechnungsnummer/-datum.
  68. BELNR (009): Rechnungsreferenznummer.
  69. DATUM (009): Rechnungsreferenzdatum.
  70. QUALF=001: Qualifier für Kundenbestellreferenz.
  71. BELNR (001): Bestellnummer.
  72. DATUM (001): Bestelldatum.
  73. QUALF=002: Qualifier für Vertriebsauftragsreferenz.
  74. BELNR (002): Vertriebsauftragsnummer.
  75. DATUM (002): Vertriebsauftragsdatum.
  76. QUALF=012: Qualifier für zusätzlich referenzierten Beleg.
  77. BELNR (012): Nummer des zusätzlichen Belegs (z. B. Lieferschein).
  78. DATUM (012): Datum des zusätzlichen Belegs.
  79. IDDAT=028: Datumsqualifier für Fälligkeit.
  80. DATUM (028): Zahlungsfälligkeitsdatum.
  81. QUALF=005 (E1EDK18): Qualifier für Zahlungsbedingungstext.
  82. ZTERM_TXT: lesbarer Text zu Zahlungsbedingungen.
  83. BCOUN: Bank-Ländercode.
  84. BRNUM: Bankkennung/BIC.
  85. BNAME: Bankname.
  86. ACNUM: Kontonummer / IBAN.
  87. ACNAM: Kontoinhaber.
  88. POSEX: Positionsnummer.
  89. MENGE: in Rechnung gestellte Menge.
  90. MENEE: Mengeneinheitencode.
  91. E1EDP19: Segment Positionsidentifikation.
  92. QUALF=002 (E1EDP19): Qualifier Lieferanten-Artikelidentifikation.
  93. IDTNR (002): Lieferanten-Artikel-ID / Materialnummer.
  94. KTEXT (002): Artikelbezeichnung / Kurztext.
  95. QUALF=003 (E1EDP19): Qualifier Standard-/globale Artikelkennung.
  96. IDTNR (003): Wert der Standard-Artikel-ID (z. B. GTIN-ähnlich).
  97. QUALF=001 (E1EDP26): Qualifier Stück-/Nettopreis.
  98. BETRG (001): Stück-/Nettopreis.
  99. QUALF=002 (E1EDP26): Qualifier Positionsnettobetrag.
  100. BETRG (002): Positionsbetrag / Netto-Zwischensumme.
  101. MWSKZ: Steuercode auf Positionsebene.
  102. MSATZ: Steuersatz in Prozent auf Positionsebene.
  103. MWSBT: Steuerbetrag auf Positionsebene.
  104. SUMID=005: Summenqualifier für Steuersumme.
  105. SUMME (005): Steuersumme.
  106. WAERQ (005): Währung der Summe.
  107. SUMID=010: Summenqualifier für Netto-Zwischensumme.
  108. SUMME (010): Netto-Zwischensumme.
  109. WAERQ (010): Währung der Zwischensumme.
  110. SUMID=012: Summenqualifier für Brutto-/Zahlbetrag.
  111. SUMME (012): Brutto-/Zahlbetrag.
  112. WAERQ (012): Währung der Gesamtsumme.
<ubl:Invoice xmlns:ubl="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
    <cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
    <cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
    <cbc:ID>INV-2026-0001</cbc:ID>
    <cbc:IssueDate>2026-07-31</cbc:IssueDate>
    <cbc:DueDate>2026-08-30</cbc:DueDate>
    <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
    <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
    <cbc:BuyerReference>4000001123452</cbc:BuyerReference>
    <cac:OrderReference>
        <cbc:ID>PO-4500001234</cbc:ID>
        <cbc:SalesOrderID>SO-7000012345</cbc:SalesOrderID>
    </cac:OrderReference>
    <cac:AdditionalDocumentReference>
        <cbc:ID schemeID="DQ">DN-8000012345</cbc:ID>
        <cbc:DocumentTypeCode>130</cbc:DocumentTypeCode>
    </cac:AdditionalDocumentReference>
    <cac:AccountingSupplierParty>
        <cac:Party>
        <cbc:EndpointID schemeID="9930">DE987654321</cbc:EndpointID>
        <cac:PartyName>
            <cbc:Name>xTool Demo Supplier</cbc:Name>
        </cac:PartyName>
        <cac:PostalAddress>
            <cbc:StreetName>Teichstrasse 10</cbc:StreetName>
            <cbc:CityName>Kassel</cbc:CityName>
            <cbc:PostalZone>34130</cbc:PostalZone>
            <cac:Country>
            <cbc:IdentificationCode>DE</cbc:IdentificationCode>
            </cac:Country>
        </cac:PostalAddress>
        <cac:PartyTaxScheme>
            <cbc:CompanyID>DE987654321</cbc:CompanyID>
            <cac:TaxScheme>
            <cbc:ID>VAT</cbc:ID>
            </cac:TaxScheme>
        </cac:PartyTaxScheme>
        <cac:PartyLegalEntity>
            <cbc:RegistrationName>xTool Demo Supplier GmbH</cbc:RegistrationName>
            <cbc:CompanyID>0000001234</cbc:CompanyID>
            <cbc:CompanyLegalForm>xTool Demo Supplier</cbc:CompanyLegalForm>
        </cac:PartyLegalEntity>
        <cac:Contact>
            <cbc:Name>Invoice Team</cbc:Name>
            <cbc:Telephone>+49 561 12345</cbc:Telephone>
            <cbc:ElectronicMail>invoice-team@demo.example</cbc:ElectronicMail>
        </cac:Contact>
        </cac:Party>
    </cac:AccountingSupplierParty>
    <cac:AccountingCustomerParty>
        <cac:Party>
        <cbc:EndpointID schemeID="0208">4000001123452</cbc:EndpointID>
        <cac:PostalAddress>
            <cbc:StreetName>Buyer Street 1</cbc:StreetName>
            <cbc:AdditionalStreetName>Accounts Payable</cbc:AdditionalStreetName>
            <cbc:CityName>Berlin</cbc:CityName>
            <cbc:PostalZone>10115</cbc:PostalZone>
            <cac:AddressLine>
            <cbc:Line>Plant 1</cbc:Line>
            </cac:AddressLine>
            <cac:Country>
            <cbc:IdentificationCode>DE</cbc:IdentificationCode>
            </cac:Country>
        </cac:PostalAddress>
        <cac:PartyTaxScheme>
            <cbc:CompanyID>DE123456789</cbc:CompanyID>
            <cac:TaxScheme>
            <cbc:ID>VAT</cbc:ID>
            </cac:TaxScheme>
        </cac:PartyTaxScheme>
        <cac:PartyLegalEntity>
            <cbc:RegistrationName>Demo Buyer AG</cbc:RegistrationName>
            <cbc:CompanyID>0000009876</cbc:CompanyID>
        </cac:PartyLegalEntity>
        <cac:Contact>
            <cbc:Name>+49 30 123456</cbc:Name>
        </cac:Contact>
        </cac:Party>
    </cac:AccountingCustomerParty>
    <cac:Delivery>
        <cac:DeliveryLocation>
        <cbc:ID>0000009877</cbc:ID>
        <cac:Address>
            <cbc:StreetName>Warehouse Road 7</cbc:StreetName>
            <cbc:AdditionalStreetName>Ramp A</cbc:AdditionalStreetName>
            <cbc:CityName>Berlin</cbc:CityName>
            <cbc:PostalZone>10117</cbc:PostalZone>
            <cac:AddressLine>
            <cbc:Line>Gate 3</cbc:Line>
            </cac:AddressLine>
            <cac:Country>
            <cbc:IdentificationCode>DE</cbc:IdentificationCode>
            </cac:Country>
        </cac:Address>
        </cac:DeliveryLocation>
        <cac:DeliveryParty>
        <cac:PartyName>
            <cbc:Name>Demo Buyer Warehouse</cbc:Name>
        </cac:PartyName>
        </cac:DeliveryParty>
    </cac:Delivery>
    <cac:PaymentMeans>
        <cbc:PaymentMeansCode>42</cbc:PaymentMeansCode>
        <cac:PayeeFinancialAccount>
        <cbc:ID>DE12520503530001153189</cbc:ID>
        <cac:FinancialInstitutionBranch>
            <cbc:ID>HELADEF1KAS</cbc:ID>
        </cac:FinancialInstitutionBranch>
        </cac:PayeeFinancialAccount>
    </cac:PaymentMeans>
    <cac:PaymentTerms>
        <cbc:Note>30 days net</cbc:Note>
    </cac:PaymentTerms>
    <cac:TaxTotal>
        <cbc:TaxAmount currencyID="EUR">190.00</cbc:TaxAmount>
        <cac:TaxSubtotal>
        <cbc:TaxableAmount currencyID="EUR">1000.00</cbc:TaxableAmount>
        <cbc:TaxAmount currencyID="EUR">190.00000</cbc:TaxAmount>
        <cac:TaxCategory>
            <cbc:ID>S</cbc:ID>
            <cbc:Percent>19.000</cbc:Percent>
            <cac:TaxScheme>
            <cbc:ID>VAT</cbc:ID>
            </cac:TaxScheme>
        </cac:TaxCategory>
        </cac:TaxSubtotal>
    </cac:TaxTotal>
    <cac:LegalMonetaryTotal>
        <cbc:LineExtensionAmount currencyID="EUR">1000.00</cbc:LineExtensionAmount>
        <cbc:TaxExclusiveAmount currencyID="EUR">1000.00</cbc:TaxExclusiveAmount>
        <cbc:TaxInclusiveAmount currencyID="EUR">1190.00</cbc:TaxInclusiveAmount>
        <cbc:PayableAmount currencyID="EUR">1190.00</cbc:PayableAmount>
    </cac:LegalMonetaryTotal>
    <cac:InvoiceLine>
        <cbc:ID>000010</cbc:ID>
        <cbc:InvoicedQuantity unitCode="C62">10.000</cbc:InvoicedQuantity>
        <cbc:LineExtensionAmount currencyID="EUR">1000.00</cbc:LineExtensionAmount>
        <cac:Item>
        <cbc:Name>Consulting service package</cbc:Name>
        <cac:SellersItemIdentification>
            <cbc:ID>MAT-10001</cbc:ID>
        </cac:SellersItemIdentification>
        <cac:StandardItemIdentification>
            <cbc:ID>4260123456789</cbc:ID>
        </cac:StandardItemIdentification>
        <cac:ClassifiedTaxCategory>
            <cbc:ID>S</cbc:ID>
            <cbc:Percent>19.000</cbc:Percent>
            <cac:TaxScheme>
            <cbc:ID>VAT</cbc:ID>
            </cac:TaxScheme>
        </cac:ClassifiedTaxCategory>
        </cac:Item>
        <cac:Price>
        <cbc:PriceAmount currencyID="EUR">100.00</cbc:PriceAmount>
        </cac:Price>
    </cac:InvoiceLine>
</ubl:Invoice>