ValidateFin

FatturaPA — XSD-valid, rejected by the SdI (00421, 00422, 00445)

Cette facture est VALIDE au sens du XSD officiel et le SdI la rejetterait quand même — c’est précisément pourquoi un contrôle de schéma ne suffit pas. Trois défauts : la base imposable déclare 1 150 € pour des lignes qui somment à 1 100 € (contrôle 00422, dont la tolérance est de un EURO, pas un centime) ; la taxe déclare 250 € là où 22 % de 1 150 € font 253 € (00421) ; et le code Natura est le N3 nu, retiré le 1er janvier 2021 au profit de ses sous-codes (00445) — alors qu’il figure toujours dans l’énumération du schéma.

FatturaPA 1.2.3 — Invalide

Cette facture est VALIDE au sens du XSD officiel et le SdI la rejetterait quand même — c’est précisément pourquoi un contrôle de schéma ne suffit pas. Trois défauts : la base imposable déclare 1 150 € pour des lignes qui somment à 1 100 € (contrôle 00422, dont la tolérance est de un EURO, pas un centime) ; la taxe déclare 250 € là où 22 % de 1 150 € font 253 € (00421) ; et le code Natura est le N3 nu, retiré le 1er janvier 2021 au profit de ses sous-codes (00445) — alors qu’il figure toujours dans l’énumération du schéma.

Facture FatturaPA (Italie, SdI) FatturaPA 1.2.3 Agenzia delle Entrate — Sistema di InterscambioRésultat attendu: Invalide — 4 erreurs

Ce que montre ce fichier

Cette facture est VALIDE au sens du XSD officiel et le SdI la rejetterait quand même — c’est précisément pourquoi un contrôle de schéma ne suffit pas. Trois défauts : la base imposable déclare 1 150 € pour des lignes qui somment à 1 100 € (contrôle 00422, dont la tolérance est de un EURO, pas un centime) ; la taxe déclare 250 € là où 22 % de 1 150 € font 253 € (00421) ; et le code Natura est le N3 nu, retiré le 1er janvier 2021 au profit de ses sous-codes (00445) — alors qu’il figure toujours dans l’énumération du schéma.

Transactions3
Date contenue dans le fichier2026-06-30

Les défauts qu’il porte

  • 00422écart de 50.00 € (tolérance ±1 €)
  • 00421<Imposta> déclare 250.00 alors que 1150.00 × 22.00 % donne 253.00
  • 00445Le code générique <Natura>N3</Natura> n'est plus admis depuis le 01/01/2021

Cité mot pour mot depuis le validateur, sans reformulation.

Dernière vérification: Licence: CC-BY-4.0

Toutes les parties, IBAN et montants ci-dessous sont fictifs. Les IBAN sont structurellement valides — ils passent le mod-97 — mais ne correspondent à aucun compte réel.

Contenu du fichier

<?xml version="1.0" encoding="UTF-8"?>
<!--
  Deliberately broken. This file is VALID against the official Agenzia delle Entrate XSD
  and would still be REJECTED by the Sistema di Interscambio. That is the whole point of it:
  a schema-only validator gives this invoice a clean bill of health, and the SdI then sends
  back a notifica di scarto.

  Three defects, each a published SdI control:
    · 00422 — ImponibileImporto declares 1,150.00 while the lines sum to 1,100.00. A 50 €
              gap, far past the 1 € tolerance of that control.
    · 00421 — Imposta declares 250.00 where 1,150.00 × 22 % is 253.00.
    · 00445 — <Natura>N3</Natura> is the GENERIC code, withdrawn on 01/01/2021. The XSD
              still lists it in its enumeration; only the control rejects it. A sub-code
              (N3.5, N3.2…) is required.
-->
<p:FatturaElettronica versione="FPR12"
  xmlns:p="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2"
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
  <FatturaElettronicaHeader>
    <DatiTrasmissione>
      <IdTrasmittente>
        <IdPaese>IT</IdPaese>
        <IdCodice>06363391001</IdCodice>
      </IdTrasmittente>
      <ProgressivoInvio>00002</ProgressivoInvio>
      <FormatoTrasmissione>FPR12</FormatoTrasmissione>
      <CodiceDestinatario>ABC1234</CodiceDestinatario>
    </DatiTrasmissione>
    <CedentePrestatore>
      <DatiAnagrafici>
        <IdFiscaleIVA>
          <IdPaese>IT</IdPaese>
          <IdCodice>06363391001</IdCodice>
        </IdFiscaleIVA>
        <Anagrafica>
          <Denominazione>ESEMPIO FORNITORE SRL</Denominazione>
        </Anagrafica>
        <RegimeFiscale>RF01</RegimeFiscale>
      </DatiAnagrafici>
      <Sede>
        <Indirizzo>VIA ROMA 1</Indirizzo>
        <CAP>00100</CAP>
        <Comune>ROMA</Comune>
        <Provincia>RM</Provincia>
        <Nazione>IT</Nazione>
      </Sede>
    </CedentePrestatore>
    <CessionarioCommittente>
      <DatiAnagrafici>
        <IdFiscaleIVA>
          <IdPaese>IT</IdPaese>
          <IdCodice>01114601006</IdCodice>
        </IdFiscaleIVA>
        <Anagrafica>
          <Denominazione>ESEMPIO CLIENTE SPA</Denominazione>
        </Anagrafica>
      </DatiAnagrafici>
      <Sede>
        <Indirizzo>VIA MILANO 25</Indirizzo>
        <CAP>20121</CAP>
        <Comune>MILANO</Comune>
        <Provincia>MI</Provincia>
        <Nazione>IT</Nazione>
      </Sede>
    </CessionarioCommittente>
  </FatturaElettronicaHeader>
  <FatturaElettronicaBody>
    <DatiGenerali>
      <DatiGeneraliDocumento>
        <TipoDocumento>TD01</TipoDocumento>
        <Divisa>EUR</Divisa>
        <Data>2026-06-30</Data>
        <Numero>2026/0043</Numero>
      </DatiGeneraliDocumento>
    </DatiGenerali>
    <DatiBeniServizi>
      <DettaglioLinee>
        <NumeroLinea>1</NumeroLinea>
        <Descrizione>Servizi di consulenza informatica</Descrizione>
        <Quantita>10.00</Quantita>
        <PrezzoUnitario>100.00</PrezzoUnitario>
        <PrezzoTotale>1000.00</PrezzoTotale>
        <AliquotaIVA>22.00</AliquotaIVA>
      </DettaglioLinee>
      <DettaglioLinee>
        <NumeroLinea>2</NumeroLinea>
        <Descrizione>Licenza software annuale</Descrizione>
        <Quantita>1.00</Quantita>
        <PrezzoUnitario>100.00</PrezzoUnitario>
        <PrezzoTotale>100.00</PrezzoTotale>
        <AliquotaIVA>22.00</AliquotaIVA>
      </DettaglioLinee>
      <DettaglioLinee>
        <NumeroLinea>3</NumeroLinea>
        <Descrizione>Trasferta esente (codice natura generico, non piu ammesso)</Descrizione>
        <Quantita>1.00</Quantita>
        <PrezzoUnitario>200.00</PrezzoUnitario>
        <PrezzoTotale>200.00</PrezzoTotale>
        <AliquotaIVA>0.00</AliquotaIVA>
        <Natura>N3</Natura>
      </DettaglioLinee>
      <DatiRiepilogo>
        <AliquotaIVA>22.00</AliquotaIVA>
        <ImponibileImporto>1150.00</ImponibileImporto>
        <Imposta>250.00</Imposta>
        <EsigibilitaIVA>I</EsigibilitaIVA>
      </DatiRiepilogo>
      <DatiRiepilogo>
        <AliquotaIVA>0.00</AliquotaIVA>
        <Natura>N3</Natura>
        <ImponibileImporto>200.00</ImponibileImporto>
        <Imposta>0.00</Imposta>
        <EsigibilitaIVA>I</EsigibilitaIVA>
      </DatiRiepilogo>
    </DatiBeniServizi>
    <DatiPagamento>
      <CondizioniPagamento>TP02</CondizioniPagamento>
      <DettaglioPagamento>
        <ModalitaPagamento>MP05</ModalitaPagamento>
        <DataScadenzaPagamento>2026-07-30</DataScadenzaPagamento>
        <ImportoPagamento>1600.00</ImportoPagamento>
      </DettaglioPagamento>
    </DatiPagamento>
  </FatturaElettronicaBody>
</p:FatturaElettronica>

Comment nous savons que ces résultats tiennent

Chaque fichier de cette bibliothèque passe dans le validateur du site à chaque build. Le résultat attendu annoncé ci-dessus est vérifié par un test automatisé : si un fichier cessait de correspondre à ce que cette page affirme, le build échouerait. Deux fixtures héritées ont été réparées ainsi avant publication : trois IBAN échouaient au mod-97 et plusieurs libellés utilisaient des caractères hors du jeu SEPA de base.

Facture FatturaPA (Italie, SdI)