ValidateFin

UBL Invoice — VAT exempt (category E) with exemption reason

Eine gültige umsatzsteuerfreie Rechnung (Kategorie E): berufliche Bildung, befreit nach Artikel 132 Abs. 1 Buchst. i der Richtlinie 2006/112/EG. Eine steuerfreie Rechnung muss sagen, WARUM sie steuerfrei ist — BR-E-10 verlangt einen Befreiungsgrund als Code (BT-121) oder als Text (BT-120); diese Datei enthält beides: VATEX-EU-132 und den Wortlaut aus der offiziellen Codeliste.

UBL 2.1 Invoice — Gültig

Eine gültige umsatzsteuerfreie Rechnung (Kategorie E): berufliche Bildung, befreit nach Artikel 132 Abs. 1 Buchst. i der Richtlinie 2006/112/EG. Eine steuerfreie Rechnung muss sagen, WARUM sie steuerfrei ist — BR-E-10 verlangt einen Befreiungsgrund als Code (BT-121) oder als Text (BT-120); diese Datei enthält beides: VATEX-EU-132 und den Wortlaut aus der offiziellen Codeliste.

UBL-Rechnung (Peppol BIS 3.0) UBL 2.1 Invoice EN 16931 / Peppol BIS 3.0Erwartetes Ergebnis: Gültig

Was diese Datei zeigt

Eine gültige umsatzsteuerfreie Rechnung (Kategorie E): berufliche Bildung, befreit nach Artikel 132 Abs. 1 Buchst. i der Richtlinie 2006/112/EG. Eine steuerfreie Rechnung muss sagen, WARUM sie steuerfrei ist — BR-E-10 verlangt einen Befreiungsgrund als Code (BT-121) oder als Text (BT-120); diese Datei enthält beides: VATEX-EU-132 und den Wortlaut aus der offiziellen Codeliste.

Transaktionen2
Summe1.800,00 €
Zuletzt geprüft: Lizenz: CC-BY-4.0

Alle Parteien, IBANs und Beträge unten sind fiktiv. Die IBANs sind strukturell gültig — sie bestehen die Mod-97-Prüfung — gehören aber zu keinem realen Konto.

Dateiinhalt

<?xml version="1.0" encoding="UTF-8"?>
<!--
  ValidateFin sample file — UBL invoice, Peppol BIS Billing 3.0 (EN 16931).
  VAT EXEMPT (VAT category E): vocational training exempted under Article 132(1)(i)
  of Council Directive 2006/112/EC. BR-E-05 requires the 0 % rate, BR-E-09 a VAT
  category tax amount of 0.00 and BR-E-10 the exemption reason that this file carries
  as BOTH a coded value (BT-121, VATEX-EU-132) and free text (BT-120).
  Expected validation result: VALID — 2 lines, 1 800.00 EUR, VAT 0.00 EUR.

  All parties and account numbers are fictitious.
  Reference page: https://validatefin.com/en/resources/samples/ubl-invoice-vat-exempt
  License: CC-BY-4.0
-->
<Invoice xmlns="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>LUM-2026-0063</cbc:ID>
  <cbc:IssueDate>2026-03-06</cbc:IssueDate>
  <cbc:DueDate>2026-04-05</cbc:DueDate>
  <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
  <cbc:Note>VAT exempt — vocational training, Article 132(1)(i) of Council Directive 2006/112/EC.</cbc:Note>
  <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
  <cbc:BuyerReference>FORM-2026-014</cbc:BuyerReference>

  <cac:AccountingSupplierParty>
    <cac:Party>
      <cbc:EndpointID schemeID="9957">FR23334175221</cbc:EndpointID>
      <cac:PartyName>
        <cbc:Name>Lumen Formation SARL</cbc:Name>
      </cac:PartyName>
      <cac:PostalAddress>
        <cbc:StreetName>7 quai Saint-Antoine</cbc:StreetName>
        <cbc:CityName>Lyon</cbc:CityName>
        <cbc:PostalZone>69002</cbc:PostalZone>
        <cac:Country>
          <cbc:IdentificationCode>FR</cbc:IdentificationCode>
        </cac:Country>
      </cac:PostalAddress>
      <cac:PartyTaxScheme>
        <cbc:CompanyID>FR23334175221</cbc:CompanyID>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:PartyTaxScheme>
      <cac:PartyLegalEntity>
        <cbc:RegistrationName>Lumen Formation SARL</cbc:RegistrationName>
        <cbc:CompanyID>334175221</cbc:CompanyID>
      </cac:PartyLegalEntity>
      <cac:Contact>
        <cbc:Name>Service facturation</cbc:Name>
        <cbc:Telephone>+33 4 72 00 44 55</cbc:Telephone>
        <cbc:ElectronicMail>[email protected]</cbc:ElectronicMail>
      </cac:Contact>
    </cac:Party>
  </cac:AccountingSupplierParty>

  <cac:AccountingCustomerParty>
    <cac:Party>
      <cbc:EndpointID schemeID="9957">FR62456789012</cbc:EndpointID>
      <cac:PartyName>
        <cbc:Name>Groupe Verdier SA</cbc:Name>
      </cac:PartyName>
      <cac:PostalAddress>
        <cbc:StreetName>22 boulevard des Belges</cbc:StreetName>
        <cbc:CityName>Rouen</cbc:CityName>
        <cbc:PostalZone>76000</cbc:PostalZone>
        <cac:Country>
          <cbc:IdentificationCode>FR</cbc:IdentificationCode>
        </cac:Country>
      </cac:PostalAddress>
      <cac:PartyTaxScheme>
        <cbc:CompanyID>FR62456789012</cbc:CompanyID>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:PartyTaxScheme>
      <cac:PartyLegalEntity>
        <cbc:RegistrationName>Groupe Verdier SA</cbc:RegistrationName>
      </cac:PartyLegalEntity>
    </cac:Party>
  </cac:AccountingCustomerParty>

  <cac:PaymentMeans>
    <cbc:PaymentMeansCode>30</cbc:PaymentMeansCode>
    <cbc:PaymentID>LUM-2026-0063</cbc:PaymentID>
    <cac:PayeeFinancialAccount>
      <cbc:ID>FR1420041010050500013M02606</cbc:ID>
      <cbc:Name>Lumen Formation SARL</cbc:Name>
    </cac:PayeeFinancialAccount>
  </cac:PaymentMeans>

  <cac:PaymentTerms>
    <cbc:Note>Net 30 days.</cbc:Note>
  </cac:PaymentTerms>

  <cac:TaxTotal>
    <cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
    <cac:TaxSubtotal>
      <cbc:TaxableAmount currencyID="EUR">1800.00</cbc:TaxableAmount>
      <cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
      <cac:TaxCategory>
        <cbc:ID>E</cbc:ID>
        <cbc:Percent>0</cbc:Percent>
        <cbc:TaxExemptionReasonCode>VATEX-EU-132</cbc:TaxExemptionReasonCode>
        <cbc:TaxExemptionReason>Exempt based on article 132 of Council Directive 2006/112/EC</cbc:TaxExemptionReason>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:TaxCategory>
    </cac:TaxSubtotal>
  </cac:TaxTotal>

  <cac:LegalMonetaryTotal>
    <cbc:LineExtensionAmount currencyID="EUR">1800.00</cbc:LineExtensionAmount>
    <cbc:TaxExclusiveAmount currencyID="EUR">1800.00</cbc:TaxExclusiveAmount>
    <cbc:TaxInclusiveAmount currencyID="EUR">1800.00</cbc:TaxInclusiveAmount>
    <cbc:PayableAmount currencyID="EUR">1800.00</cbc:PayableAmount>
  </cac:LegalMonetaryTotal>

  <cac:InvoiceLine>
    <cbc:ID>1</cbc:ID>
    <cbc:InvoicedQuantity unitCode="DAY">4</cbc:InvoicedQuantity>
    <cbc:LineExtensionAmount currencyID="EUR">1400.00</cbc:LineExtensionAmount>
    <cac:Item>
      <cbc:Description>Certified vocational training, four sessions</cbc:Description>
      <cbc:Name>Training sessions</cbc:Name>
      <cac:ClassifiedTaxCategory>
        <cbc:ID>E</cbc:ID>
        <cbc:Percent>0</cbc:Percent>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:ClassifiedTaxCategory>
    </cac:Item>
    <cac:Price>
      <cbc:PriceAmount currencyID="EUR">350.00</cbc:PriceAmount>
    </cac:Price>
  </cac:InvoiceLine>

  <cac:InvoiceLine>
    <cbc:ID>2</cbc:ID>
    <cbc:InvoicedQuantity unitCode="C62">10</cbc:InvoicedQuantity>
    <cbc:LineExtensionAmount currencyID="EUR">400.00</cbc:LineExtensionAmount>
    <cac:Item>
      <cbc:Description>Trainee assessment and certification</cbc:Description>
      <cbc:Name>Assessment per trainee</cbc:Name>
      <cac:ClassifiedTaxCategory>
        <cbc:ID>E</cbc:ID>
        <cbc:Percent>0</cbc:Percent>
        <cac:TaxScheme>
          <cbc:ID>VAT</cbc:ID>
        </cac:TaxScheme>
      </cac:ClassifiedTaxCategory>
    </cac:Item>
    <cac:Price>
      <cbc:PriceAmount currencyID="EUR">40.00</cbc:PriceAmount>
    </cac:Price>
  </cac:InvoiceLine>

160 / 162 lines shown — the complete file is in the download above.

Woher wir wissen, dass diese Ergebnisse stimmen

Jede Datei dieser Bibliothek läuft bei jedem Build durch den eigenen Validator der Website. Das oben genannte erwartete Ergebnis wird von einem automatisierten Test geprüft: Passt eine Datei nicht mehr zu dem, was diese Seite behauptet, schlägt der Build fehl. Zwei geerbte Fixtures wurden so vor der Veröffentlichung repariert — drei IBANs scheiterten an der Mod-97-Prüfung, und mehrere Namen nutzten Zeichen außerhalb des SEPA-Basiszeichensatzes.

UBL-Rechnung (Peppol BIS 3.0)