ValidateFin

Facturae 3.2.2 — totales incoherentes (válida contra el XSD)

Dieselbe Datei mit einer Änderung: InvoiceTotal deklariert 1.200,00 €, wo die Formel des Schemas 1.210,00 € ergibt (Basis 1.000 + USt 210). Die Datei ist gegen das offizielle facturae.gob.es-XSD GÜLTIG — ein reiner Schema-Validator lässt sie durch. Nur die Kohärenzschicht findet den Fehler und meldet zudem, dass die Losumme nicht mehr stimmt. Kein „offizieller“ Ablehnungscode: Facturae/FACe veröffentlicht keine offline prüfbaren Ablehnungscodes — daher eine Warnung, kein Fehler.

3.2.2 — Gültig

Dieselbe Datei mit einer Änderung: InvoiceTotal deklariert 1.200,00 €, wo die Formel des Schemas 1.210,00 € ergibt (Basis 1.000 + USt 210). Die Datei ist gegen das offizielle facturae.gob.es-XSD GÜLTIG — ein reiner Schema-Validator lässt sie durch. Nur die Kohärenzschicht findet den Fehler und meldet zudem, dass die Losumme nicht mehr stimmt. Kein „offizieller“ Ablehnungscode: Facturae/FACe veröffentlicht keine offline prüfbaren Ablehnungscodes — daher eine Warnung, kein Fehler.

Facturae-Rechnung (Spanien, FACe) 3.2.2 Ministerio de Hacienda — Facturae 3.2.2 (facturae.gob.es)Erwartetes Ergebnis: Gültig — 2 Warnungen

Was diese Datei zeigt

Dieselbe Datei mit einer Änderung: InvoiceTotal deklariert 1.200,00 €, wo die Formel des Schemas 1.210,00 € ergibt (Basis 1.000 + USt 210). Die Datei ist gegen das offizielle facturae.gob.es-XSD GÜLTIG — ein reiner Schema-Validator lässt sie durch. Nur die Kohärenzschicht findet den Fehler und meldet zudem, dass die Losumme nicht mehr stimmt. Kein „offizieller“ Ablehnungscode: Facturae/FACe veröffentlicht keine offline prüfbaren Ablehnungscodes — daher eine Warnung, kein Fehler.

Transaktionen1
Summe1.200,00 €
Datum in der Datei2026-01-15

Die enthaltenen Fehler

  • CALC-TOTALInvoiceTotal declara 1200,00 € donde la fórmula del esquema (TotalGrossAmountBeforeTaxes 1000 + TotalTaxOutputs 210 − TotalTaxesWithheld 0) da 1210,00 €.
  • CALC-BATCHTotalInvoicesAmount del lote (1210,00 €) no coincide con la suma de los InvoiceTotal (1200,00 €).

Wörtlich aus dem Validator zitiert, nicht umformuliert.

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"?>
<fe:Facturae xmlns:fe="http://www.facturae.gob.es/formato/Versiones/Facturaev3_2_2.xml" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
  <FileHeader>
    <SchemaVersion>3.2.2</SchemaVersion>
    <Modality>I</Modality>
    <InvoiceIssuerType>EM</InvoiceIssuerType>
    <Batch>
      <BatchIdentifier>FAC2026-0001</BatchIdentifier>
      <InvoicesCount>1</InvoicesCount>
      <TotalInvoicesAmount>
        <TotalAmount>1210.00</TotalAmount>
      </TotalInvoicesAmount>
      <TotalOutstandingAmount>
        <TotalAmount>1210.00</TotalAmount>
      </TotalOutstandingAmount>
      <TotalExecutableAmount>
        <TotalAmount>1210.00</TotalAmount>
      </TotalExecutableAmount>
      <InvoiceCurrencyCode>EUR</InvoiceCurrencyCode>
    </Batch>
  </FileHeader>
  <Parties>
    <SellerParty>
      <TaxIdentification>
        <PersonTypeCode>J</PersonTypeCode>
        <ResidenceTypeCode>R</ResidenceTypeCode>
        <TaxIdentificationNumber>A58818501</TaxIdentificationNumber>
      </TaxIdentification>
      <LegalEntity>
        <CorporateName>Suministros Técnicos del Ebro SL</CorporateName>
        <AddressInSpain>
          <Address>Calle Mayor 12</Address>
          <PostCode>50001</PostCode>
          <Town>Zaragoza</Town>
          <Province>Zaragoza</Province>
          <CountryCode>ESP</CountryCode>
        </AddressInSpain>
      </LegalEntity>
    </SellerParty>
    <BuyerParty>
      <TaxIdentification>
        <PersonTypeCode>J</PersonTypeCode>
        <ResidenceTypeCode>R</ResidenceTypeCode>
        <TaxIdentificationNumber>P5000000I</TaxIdentificationNumber>
      </TaxIdentification>
      <AdministrativeCentres>
        <AdministrativeCentre>
          <CentreCode>L01502973</CentreCode>
          <RoleTypeCode>01</RoleTypeCode>
          <Name>Intervención General</Name>
          <AddressInSpain>
            <Address>Plaza del Pilar 18</Address>
            <PostCode>50001</PostCode>
            <Town>Zaragoza</Town>
            <Province>Zaragoza</Province>
            <CountryCode>ESP</CountryCode>
          </AddressInSpain>
        </AdministrativeCentre>
        <AdministrativeCentre>
          <CentreCode>L01502974</CentreCode>
          <RoleTypeCode>02</RoleTypeCode>
          <Name>Órgano Gestor</Name>
          <AddressInSpain>
            <Address>Plaza del Pilar 18</Address>
            <PostCode>50001</PostCode>
            <Town>Zaragoza</Town>
            <Province>Zaragoza</Province>
            <CountryCode>ESP</CountryCode>
          </AddressInSpain>
        </AdministrativeCentre>
        <AdministrativeCentre>
          <CentreCode>L01502975</CentreCode>
          <RoleTypeCode>03</RoleTypeCode>
          <Name>Unidad Tramitadora</Name>
          <AddressInSpain>
            <Address>Plaza del Pilar 18</Address>
            <PostCode>50001</PostCode>
            <Town>Zaragoza</Town>
            <Province>Zaragoza</Province>
            <CountryCode>ESP</CountryCode>
          </AddressInSpain>
        </AdministrativeCentre>
      </AdministrativeCentres>
      <LegalEntity>
        <CorporateName>Ayuntamiento de Zaragoza</CorporateName>
        <AddressInSpain>
          <Address>Plaza del Pilar 18</Address>
          <PostCode>50001</PostCode>
          <Town>Zaragoza</Town>
          <Province>Zaragoza</Province>
          <CountryCode>ESP</CountryCode>
        </AddressInSpain>
      </LegalEntity>
    </BuyerParty>
  </Parties>
  <Invoices>
    <Invoice>
      <InvoiceHeader>
        <InvoiceNumber>0001</InvoiceNumber>
        <InvoiceSeriesCode>2026</InvoiceSeriesCode>
        <InvoiceDocumentType>FC</InvoiceDocumentType>
        <InvoiceClass>OO</InvoiceClass>
      </InvoiceHeader>
      <InvoiceIssueData>
        <IssueDate>2026-01-15</IssueDate>
        <InvoiceCurrencyCode>EUR</InvoiceCurrencyCode>
        <TaxCurrencyCode>EUR</TaxCurrencyCode>
        <LanguageName>es</LanguageName>
      </InvoiceIssueData>
      <TaxesOutputs>
        <Tax>
          <TaxTypeCode>01</TaxTypeCode>
          <TaxRate>21.00</TaxRate>
          <TaxableBase>
            <TotalAmount>1000.00</TotalAmount>
          </TaxableBase>
          <TaxAmount>
            <TotalAmount>210.00</TotalAmount>
          </TaxAmount>
        </Tax>
      </TaxesOutputs>
      <InvoiceTotals>
        <TotalGrossAmount>1000.00</TotalGrossAmount>
        <TotalGrossAmountBeforeTaxes>1000.00</TotalGrossAmountBeforeTaxes>
        <TotalTaxOutputs>210.00</TotalTaxOutputs>
        <TotalTaxesWithheld>0.00</TotalTaxesWithheld>
        <InvoiceTotal>1200.00</InvoiceTotal>
        <TotalOutstandingAmount>1200.00</TotalOutstandingAmount>
        <TotalExecutableAmount>1200.00</TotalExecutableAmount>
      </InvoiceTotals>
      <Items>
        <InvoiceLine>
          <ItemDescription>Servicio de mantenimiento informático</ItemDescription>
          <Quantity>10</Quantity>
          <UnitOfMeasure>01</UnitOfMeasure>
          <UnitPriceWithoutTax>100.000000</UnitPriceWithoutTax>
          <TotalCost>1000.00</TotalCost>
          <GrossAmount>1000.00</GrossAmount>
          <TaxesOutputs>
            <Tax>
              <TaxTypeCode>01</TaxTypeCode>
              <TaxRate>21.00</TaxRate>
              <TaxableBase>
                <TotalAmount>1000.00</TotalAmount>
              </TaxableBase>
              <TaxAmount>
                <TotalAmount>210.00</TotalAmount>
              </TaxAmount>
            </Tax>
          </TaxesOutputs>
        </InvoiceLine>
      </Items>
      <PaymentDetails>
        <Installment>
          <InstallmentDueDate>2026-02-15</InstallmentDueDate>
          <InstallmentAmount>1210.00</InstallmentAmount>
          <PaymentMeans>04</PaymentMeans>
          <AccountToBeCredited>
            <IBAN>ES9121000418450200051332</IBAN>
          </AccountToBeCredited>

160 / 186 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.

Facturae-Rechnung (Spanien, FACe)