Script Python per convertire XML di fattura elettronica (formato FPA/SDI) in PDF.
xmlfatt2pdf.py è uno script che consente di prendere un file XML di fattura elettronica nel formato standard italiano (e.g. “FatturaPA” / SDI) e generare un PDF leggibile.
L’obiettivo è semplificare la visualizzazione o la stampa di fatture elettroniche XML, senza dover usare software esterni specifici.
- Parsing dell’XML della fattura elettronica (DTE) per estrarre i dati principali: cedente/prestatore, cessionario/committente, articoli, importi, imposte, ecc.
- Generazione di un documento PDF con layout leggibile.
- Facilità di integrazione in processi di backend o script batch.
- Minimale: poche dipendenze, uso diretto da linea di comando.
- Python 3.x
- Le librerie Python incluse nel file (os, sys, subprocess, lxml)
- https://wkhtmltopdf.org/
- Un file XML di fattura elettronica conforme agli standard italiani (SDI)
- Permessi di scrittura per generare il file PDF di output
python xmlfatt2pdf.py <input_fattura.xml> <output_fattura.pdf>Dove:
<input_fattura.xml>è il percorso del file XML da convertire.<output_fattura.pdf>è il percorso (e nome) del file PDF generato.
python xmlfatt2pdf.py fattura_123.xml fattura_123.pdfAl momento lo script accetta due argomenti: input XML e output PDF. Verifica nel codice se sono presenti opzioni aggiuntive (ad esempio per template, filtri, debug…).
- Lo script carica il file XML e lo parse in memoria.
- Estrae i campi principali della fattura (intestazione, dettagli, importi).
- Genera un layout PDF (usando librerie PDF in Python) con i dati estratti.
- Salva il PDF al percorso indicato.
- È possibile modificare lo script per aggiungere o rimuovere campi specifici (ex: codici articolo, sconto, note).
- Il layout del PDF può essere adattato (font, margini, logo aziendale).
- Puoi integrarlo come modulo in un’applicazione più ampia (es. generazione automatica delle fatture, invio mail, archivio).
- Gestione di più formati/firme digitali presenti nell’XML.
- Supporto per allegati nella fattura elettronica (es: documenti correlati).
- Migliore impaginazione del PDF (es: pagination, header/footer, logo).
- Logging più dettagliato, modalità batch per cartelle di fatture.
- Configurazione via file
yamlojson(per layout, percorsi, opzioni).
Se vuoi contribuire:
- Fork del repository
- Crea un branch per la tua feature o fix (
git checkout -b mia-feature) - Fai le modifiche, testa con vari file XML reali
- Apri una pull request descrivendo i cambiamenti
- Autore originale: Simone Cansella
- Repository: https://github.com/webagens/xmlfatt2pdf
- Per segnalare bug o richiedere funzionalità: apri un Issue sul repository