Validate, extract, and generate printables of electronic invoice files received from the "Sistema di Interscambio".
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

4.2 KiB


PyPI md-toc version PyPI - License PyPI - Python Version Downloads Dependent repos (via Buy me a coffee

Validate, extract, and generate printables of electronic invoice files received from the Sistema di Interscambio.


API examples

fattura-elettronica-reader has a public API. This means for example that you can you easily read invoice files within another Python program:

>>> import fattura_elettronica_reader
>>> data = {
        'patched': True,
        'configuration_file': str(),
        'write_default_configuration_file': False,
        'extract_attachments': True,
        'metadata_file': 'myfile.xml',
        'invoice_xslt_type': 'ordinaria',
        'no_invoice_xml_validation': False,
        'force_invoice_schema_file_download': False,
        'generate_html_output': True,
        'invoice_filename': str(),
        'no_checksum_check': False,
        'force_invoice_xml_stylesheet_file_download': False,
        'ignore_attachment_extension_whitelist': False,
        'ignore_attachment_filetype_whitelist': False,
        'ignore_signature_check': False,
        'ignore_signers_certificate_check': False,
        'force_trusted_list_file_download': False,
        'keep_original_file': True,
        'ignore_assets_checksum': False,
        'destination_directory': '/dev/shm/invoices',
>>> fattura_elettronica_reader.assert_data_structure(source='invoice', file_type='p7m', data=data)
>>> fattura_elettronica_reader.pipeline(

Have a look at the invoices page in the ftutorials repository.

CLI helps

$ fattura_elettronica_reader --help


Copyright (c) 2018 Enio Carboni - Italy

Copyright (C) 2019-2022 Franco Masotti (franco \D\o\T masotti {-A-T-} tutanota \D\o\T com)

fattura-elettronica-reader is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

fattura-elettronica-reader is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with fattura-elettronica-reader. If not, see

Changelog and trusted source

You can check the authenticity of new releases using my public key.

Changelogs, instructions, sources and keys can be found at

Crypto donations

  • Bitcoin: bc1qnkflazapw3hjupawj0lm39dh9xt88s7zal5mwu
  • Monero: 84KHWDTd9hbPyGwikk33Qp5GW7o7zRwPb8kJ6u93zs4sNMpDSnM5ZTWVnUp2cudRYNT6rNqctnMQ9NbUewbj7MzCBUcrQEY
  • Dogecoin: DMB5h2GhHiTNW7EcmDnqkYpKs6Da2wK3zP
  • Vertcoin: vtc1qd8n3jvkd2vwrr6cpejkd9wavp4ld6xfu9hkhh0