Repository
OCA/l10n-italy · module folder · Try on Runboat
Module version
1.2.4
Category
Localization/Italy
Folder size
0.37 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/l10n-italy
Last tracking update
2026-08-07 08:09:16
Authors
Odoo Community Association (OCA), Openforce Srls Unipersonale
Maintainers
Odoo Community Association (OCA), Openforce Srls Unipersonale
Committers
eLBati, micheledic, Simone Rubino, Weblate, OCA-git-bot, oca-ci, Borruso, mde-scopea
Odoo dependencies
Python dependencies
mock, elementpath, unidecode, xmlschema, asn1crypto, codicefiscale
System dependencies
None
Required by
None
Description
**Italiano**

Questo modulo consente di inviare e ricevere i file XML della fattura
elettronica versione 1.2

<http://www.fatturapa.gov.it/export/fatturazione/en/sdi.htm>

via PEC.

Analizza le notifiche provenienti dallo SdI e monitora lo stato della
trasmissione.

**English**

This module allows you to send and receive electronic invoice/bill XML
files version 1.2

<http://www.fatturapa.gov.it/export/fatturazione/en/sdi.htm>

via PEC.

Notifications from ES are parsed and transmission state is tracked.

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
ir_mail_server_fatturapa_out_pec_form ir.mail.server.fatturapa.out.pec.form ir.mail_server form Inherits base.ir_mail_server_form
view_account_config_settings_ftpa_pec view_account_config_settings_ftpa_pec res.config.settings Inherits l10n_it_fatturapa.view_account_config_settings
view_email_server_form_e_invoice view_email_server_form_e_invoice fetchmail.server form Inherits mail.view_email_server_form
view_sdi_channel_form sdi.channel.inherit.view.form sdi.channel form Inherits l10n_it_sdi_channel.view_sdi_channel_form
view_sdi_channel_tree sdi.channel.inherit.view.tree sdi.channel tree Inherits l10n_it_sdi_channel.view_sdi_channel_tree
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (7)

New fields (0)

No new fields.

Public methods (1)
  • parse_pec_response(self, message_dict)

New fields (4)
  • e_inv_notify_partner_ids Many2many → res.partner
    default=_default_e_inv_notify_partner_ids domain=[('email', '!=', False)] help="Contacts to notify when PEC message can't be processed" string='Contacts to notify' args: 'res.partner'
  • is_fatturapa_pec Boolean
    args: 'E-invoice PEC server'
  • last_pec_error_message Text
    readonly=True args: 'Last PEC Error Message'
  • pec_error_count Integer
    readonly=True args: 'PEC error count'
Public methods (6)
  • fetch_mail(self)
  • fetch_mail_server_type_imap(self, server, MailThread, error_messages, **additional_context)
  • fetch_mail_server_type_pop(self, server, MailThread, error_messages, **additional_context)
  • manage_pec_failure(self, exception, error_messages)
  • notify_about_server_reset(self)
  • notify_or_log(self, message)
    Send an email to partners in self.e_inv_notify_partner_ids containing message. :param: message :type message: list of str, or str

New fields (2)
  • email_from_for_fatturaPA Char
    args: 'Sender Email Address'
  • is_fatturapa_pec Boolean
    args: 'E-invoice PEC server'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (7)
  • clean_message_dict(self, message_dict)
  • create_fatturapa_attachment_in(self, attachment, message_dict=None)
  • find_attachment_by_subject(self, subject)
  • manage_pec_fe_attachments(self, message, message_dict, response_attachments)
  • manage_pec_sdi_notification(self, message, message_dict)
  • manage_pec_sdi_response(self, att, message_dict)
  • message_route(self, message, message_dict, model=None, thread_id=None, custom_values=None)
    @api.model

New fields (2)
  • email_exchange_system Char
    readonly=True related='sdi_channel_id.email_exchange_system' string='Exchange System Email Address'
  • email_from_for_fatturaPA Char
    readonly=True related='sdi_channel_id.pec_server_id.email_from_for_fatturaPA' string='Sender Email Address'
Public methods (0)

No public methods.

New fields (2)
  • email_exchange_system Char
    readonly=True related='company_id.sdi_channel_id.email_exchange_system' string='Exchange System Email Address'
  • email_from_for_fatturaPA Char
    readonly=True related='company_id.sdi_channel_id.pec_server_id.email_from_for_fatturaPA' string='Sender Email Address'
Public methods (0)

No public methods.

New fields (5)
  • channel_type Selection
    ondelete={'pec': 'cascade'} selection_add=[('pec', 'PEC')]
  • email_exchange_system Char
    help='The first time you send a PEC to SDI, you must use the address sdi01@pec.fatturapa.it.\nOdoo will automatically set this address the first time you send an e-invoice to SdI using this channel.\nThe system, with the first response or notification, communicates the PEC address to be used for future messages' args: 'Exchange System Email Address'
  • fetch_pec_server_id Many2one → fetchmail.server
    domain=[('is_fatturapa_pec', '=', True)] required=False string='Incoming PEC server' args: 'fetchmail.server'
  • first_invoice_sent Boolean
    help='This is set after having sent the first e-invoice to SDI' args: 'SDI already assigned a PEC address to my company'
  • pec_server_id Many2one → ir.mail_server
    domain=[('is_fatturapa_pec', '=', True)] required=False string='Outgoing PEC server' args: 'ir.mail_server'
Public methods (6)
  • check_email_validity(self)
    @api.constrains('email_exchange_system')
  • check_fetch_pec_server_id(self)
    @api.constrains('fetch_pec_server_id')
  • check_first_pec_sending(self)
  • check_pec_server_id(self)
    @api.constrains('pec_server_id')
  • send_via_pec(self, attachment_out_ids)
  • update_after_first_pec_sending(self)

Loading…

Loading…

Loading…

Loading…

Loading…