ValidateFin

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

Ten sam plik, z jedną zmianą: InvoiceTotal deklaruje 1200,00 € tam, gdzie formuła schematu daje 1210,00 € (podstawa 1000 + VAT 210). Plik jest POPRAWNY względem oficjalnego XSD facturae.gob.es — walidator patrzący tylko na schemat go przepuszcza. Wykrywa to dopiero warstwa spójności, sygnalizując też, że suma partii już się nie zgadza. To nie „oficjalne” odrzucenie: Facturae/FACe nie publikuje weryfikowalnych offline kodów odrzucenia, więc to ostrzeżenie, nie błąd.

3.2.2 — Prawidłowy

Ten sam plik, z jedną zmianą: InvoiceTotal deklaruje 1200,00 € tam, gdzie formuła schematu daje 1210,00 € (podstawa 1000 + VAT 210). Plik jest POPRAWNY względem oficjalnego XSD facturae.gob.es — walidator patrzący tylko na schemat go przepuszcza. Wykrywa to dopiero warstwa spójności, sygnalizując też, że suma partii już się nie zgadza. To nie „oficjalne” odrzucenie: Facturae/FACe nie publikuje weryfikowalnych offline kodów odrzucenia, więc to ostrzeżenie, nie błąd.

Faktura Facturae (Hiszpania, FACe) 3.2.2 Ministerio de Hacienda — Facturae 3.2.2 (facturae.gob.es)Oczekiwany wynik: Prawidłowy — 2 ostrzeżeń

Co pokazuje ten plik

Ten sam plik, z jedną zmianą: InvoiceTotal deklaruje 1200,00 € tam, gdzie formuła schematu daje 1210,00 € (podstawa 1000 + VAT 210). Plik jest POPRAWNY względem oficjalnego XSD facturae.gob.es — walidator patrzący tylko na schemat go przepuszcza. Wykrywa to dopiero warstwa spójności, sygnalizując też, że suma partii już się nie zgadza. To nie „oficjalne” odrzucenie: Facturae/FACe nie publikuje weryfikowalnych offline kodów odrzucenia, więc to ostrzeżenie, nie błąd.

Transakcje1
Suma1200,00 €
Data w pliku2026-01-15

Zawarte wady

  • 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 €).

Cytowane dosłownie z walidatora, bez parafrazy.

Ostatnia weryfikacja: Licencja: CC-BY-4.0

Wszystkie strony, numery IBAN i kwoty poniżej są fikcyjne. IBAN-y są poprawne strukturalnie — przechodzą test mod-97 — ale nie należą do żadnego rzeczywistego rachunku.

Zawartość pliku

<?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.

Skąd wiemy, że te wyniki są aktualne

Każdy plik w tej bibliotece przechodzi przez walidator serwisu przy każdym buildzie. Oczekiwany wynik podany wyżej potwierdza test automatyczny: gdyby plik przestał odpowiadać temu, co głosi ta strona, build by się wywalił. Dwie odziedziczone fikstury naprawiono w ten sposób przed publikacją: trzy numery IBAN nie przechodziły mod-97, a kilka nazw używało znaków spoza podstawowego zestawu SEPA.

Faktura Facturae (Hiszpania, FACe)