Validate, extract, and generate printables of electronic invoice files received from the "Sistema di Interscambio".
Go to file
Franco Masotti 5d291f8e16
New packaging
- Pass from Pipenv to venv + pip
- Use of setup.cfg and pyproject.toml
- Replace use of atomicwrites and requests libraries with built-in
- Fix pre-commit hooks
2023-01-08 19:31:49 +01:00
assets Changed assertions to exceptions. 2020-11-22 17:59:33 +01:00
docs New packaging 2023-01-08 19:31:49 +01:00
fattura_elettronica_reader New packaging 2023-01-08 19:31:49 +01:00
packages/aur Preparing for new release. 2022-06-24 15:44:35 +02:00
.allowed_licenses.yml Added hook. 2021-08-09 11:21:21 +02:00
.gitignore - Updated checksum. 2022-06-23 18:04:04 +02:00
.pre-commit-config.yaml New packaging 2023-01-08 19:31:49 +01:00 Fix links and make file 2022-11-04 18:16:01 +01:00
LICENSE.txt Forgot to add the license file. 2019-08-10 18:40:06 +02:00 New packaging 2023-01-08 19:31:49 +01:00
Makefile New packaging 2023-01-08 19:31:49 +01:00 - Updated checksum. 2022-06-23 18:04:04 +02:00
pyproject.toml New packaging 2023-01-08 19:31:49 +01:00
requirements-dev.txt New packaging 2023-01-08 19:31:49 +01:00
requirements-freeze.txt New packaging 2023-01-08 19:31:49 +01:00
requirements.txt New packaging 2023-01-08 19:31:49 +01:00
setup.cfg New packaging 2023-01-08 19:31:49 +01:00 New packaging 2023-01-08 19:31:49 +01:00


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