WARNING: This package only works for ITALIAN standards!
composer require slam/php-validatore-fattura-elettronica
use SlamFatturaElettronica\Validator;
$feValidator = new Validator();
$feValidator->assertValidXml('<xml ...>');
// In caso di struttura XML errata, viene lanciata una
// SlamFatturaElettronica\Exception\InvalidXmlStructureException
// In caso di XML valido ma non aderente all'XSD, viene lanciata una
// SlamFatturaElettronica\Exception\InvalidXsdStructureComplianceException
use SlamFatturaElettronica\Validator;
$feValidator = new Validator();
$feValidator->assertValidXml('<xml ...>', Validator::XSD_MESSAGGI_LATEST);
I due siti di riferimento sono al momento:
- https://www.agenziaentrate.gov.it/wps/content/Nsilib/Nsi/Schede/Comunicazioni/Fatture+e+corrispettivi/Fatture+e+corrispettivi+ST/ST+invio+di+fatturazione+elettronica/?page=schedecomunicazioni
- http://www.fatturapa.gov.it/export/fatturazione/it/normativa/f-2.htm
Gli XSD usati da questa libreria sono quelli presi dal primo dei due siti,
ovvero www.agenziaentrate.gov.it
, che a dispetto del numero di versione
esplicitato sembra quello più aggiornato (vedi ad esempio tra i tipi di
documento la differenza su Autofattura
).