Repository
OCA/l10n-italy · module folder · Try on Runboat
Module version
1.0.0
Category
Account
Folder size
0.55 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/l10n-italy
Last tracking update
2026-08-07 08:42:51
Authors
Odoo Community Association (OCA), Agile Business Group, Openforce, Link IT srl
Maintainers
Odoo Community Association (OCA), Agile Business Group, Openforce, Link IT srl
Committers
tafaRU, OCA-git-bot, oca-ci
Odoo dependencies
Python dependencies
openupgradelib
System dependencies
None
Required by
None
Description
**Italiano**

Questo modulo si occupa di generare la dichiarazione Intrastat e le
relative stampe.

Le specifiche per tali stampe e i file da inviare sono in
<https://www.adm.gov.it/portale/-/determinazione-n-c2-b0-493869-del-23-dicembre-2021-nuovi-modelli-degli-elenchi-riepilogativi-delle-cessioni-e-degli-acquisti-intracomunitari-di-beni-e-delle-prestazioni-di-servizio-rese-e-ricevute-in-ambito-comunitario-periodi-di-riferimento-decorrenti-da>.

Code Analysis

Views touched (31)
XML IDNameModelTypeStatus
account_intrastat_custom_view_form account.intrastat.custom.view.form account.intrastat.custom form New
account_intrastat_custom_view_tree account.intrastat.custom.view.tree account.intrastat.custom list New
account_intrastat_statement_form_view account.intrastat.statement.form.view account.intrastat.statement form New
account_intrastat_statement_tree_view account.intrastat.statement.tree.view account.intrastat.statement list New
report_intrastat_mod1 report_intrastat_mod1 ir.ui.view qweb New
report_intrastat_mod1_bis report_intrastat_mod1_bis ir.ui.view qweb New
report_intrastat_mod1_quater report_intrastat_mod1_quater ir.ui.view qweb New
report_intrastat_mod1_quinquies report_intrastat_mod1_quinquies ir.ui.view qweb New
report_intrastat_mod1_ter report_intrastat_mod1_ter ir.ui.view qweb New
report_intrastat_mod2 report_intrastat_mod2 ir.ui.view qweb New
report_intrastat_mod2_bis report_intrastat_mod2_bis ir.ui.view qweb New
report_intrastat_mod2_quater report_intrastat_mod2_quater ir.ui.view qweb New
report_intrastat_mod2_quinquies report_intrastat_mod2_quinquies ir.ui.view qweb New
view_form_statement_purchase_section1 views.form.statement.purchase.section1 account.intrastat.statement.purchase.section1 form New
view_form_statement_purchase_section2 views.form.statement.purchase.section2 account.intrastat.statement.purchase.section2 form New
view_form_statement_purchase_section3 views.form.statement.purchase.section3 account.intrastat.statement.purchase.section3 form New
view_form_statement_purchase_section4 views.form.statement.purchase.section4 account.intrastat.statement.purchase.section4 form New
view_form_statement_sale_section1 views.form.statement.sale.section1 account.intrastat.statement.sale.section1 form New
view_form_statement_sale_section2 views.form.statement.sale.section2 account.intrastat.statement.sale.section2 form New
view_form_statement_sale_section3 views.form.statement.sale.section3 account.intrastat.statement.sale.section3 form New
view_form_statement_sale_section4 views.form.statement.sale.section4 account.intrastat.statement.sale.section4 form New
view_intrastat_statement_company_form view_form_intrastat_statement_company res.company form Inherits l10n_it_intrastat.view_intrastat_company_form
view_tree_statement_purchase_section1 views.tree.statement.purchase.section1 account.intrastat.statement.purchase.section1 list New
view_tree_statement_purchase_section2 views.tree.statement.purchase.section2 account.intrastat.statement.purchase.section2 list New
view_tree_statement_purchase_section3 views.tree.statement.purchase.section3 account.intrastat.statement.purchase.section3 list New
view_tree_statement_purchase_section4 views.tree.statement.purchase.section4 account.intrastat.statement.purchase.section4 list New
view_tree_statement_sale_section1 views.tree.statement.sale.section1 account.intrastat.statement.sale.section1 list New
view_tree_statement_sale_section2 views.tree.statement.sale.section2 account.intrastat.statement.sale.section2 list New
view_tree_statement_sale_section3 views.tree.statement.sale.section3 account.intrastat.statement.sale.section3 list New
view_tree_statement_sale_section4 views.tree.statement.sale.section4 account.intrastat.statement.sale.section4 list New
wizard_account_intrastat_export_file Export Intrastat File account.intrastat.export.file form New
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (14)

New fields (3)
  • data Binary
    string='File'
  • name Char
    string='File Name'
  • state Selection
    default='choose' selection=[('choose', 'Choose'), ('get', 'Get')]
Public methods (1)
  • act_getfile(self)

New fields (45)
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> required=True string='Company'
  • content_type Selection
    default='0' required=True selection=[('0', 'Normal Period'), ('8', 'Change Period in quarter: only first month operations'), ('9', 'Change Period in quarter: only first and second month operations')]
  • date Date
    default=fields.Date.today() required=True string='Submission Date'
  • date_start Date
    compute='_compute_dates' store=True string='Start Date'
  • date_stop Date
    compute='_compute_dates' store=True string='Stop Date'
  • exclude_optional_column_sect_1_3 Boolean
    help='Exclude supplier country, TIN and currency amount from statement' args: 'Exclude supplier data'
  • fiscalyear Integer
    default=fields.Date.today().year required=True string='Year'
  • intrastat_code_type Selection
    default='good' required=True selection=[('service', 'Service'), ('good', 'Goods')] string='Code Type'
  • intrastat_custom_id Many2one → account.intrastat.custom
    comodel_name='account.intrastat.custom' default=<expr> required=True string='Customs Section'
  • intrastat_name_delegate Char
    default=<expr> string='Delegate Name'
  • intrastat_type_data Selection
    default='all' required=True selection=[('all', 'All (Fiscal and Statistic)'), ('fiscal', 'Fiscal'), ('statistic', 'Statistic')] string='Data Type'
  • intrastat_vat_delegate Char
    default=<expr> string='Delegate VAT Number'
  • number Integer
    default=_compute_progressive
  • period_number Integer
    default=1 help='Values accepted:\n - Month : From 1 to 12\n - Quarter: From 1 to 4' required=True string='Period'
  • period_type Selection
    default='M' required=True selection=[('M', 'Month'), ('T', 'Quarter')]
  • purchase Boolean
    default=True string='Purchases'
  • purchase_section1_ids One2many → account.intrastat.statement.purchase.section1
    comodel_name='account.intrastat.statement.purchase.section1' inverse_name='statement_id' string='Purchases - Section 1'
  • purchase_section1_operation_amount Integer
    compute='_compute_amount_purchase_s1' store=True string='Operation Amount - Purchases Section 1'
  • purchase_section1_operation_number Integer
    compute='_compute_amount_purchase_s1' store=True string='Operation Count - Purchases Section 1'
  • purchase_section2_ids One2many → account.intrastat.statement.purchase.section2
    comodel_name='account.intrastat.statement.purchase.section2' inverse_name='statement_id' string='Purchases - Section 2'
  • purchase_section2_operation_amount Integer
    compute='_compute_amount_purchase_s2' store=True string='Operation Amount - Purchases Section 2'
  • purchase_section2_operation_number Integer
    compute='_compute_amount_purchase_s2' store=True string='Operation Count - Purchases Section 2'
  • purchase_section3_ids One2many → account.intrastat.statement.purchase.section3
    comodel_name='account.intrastat.statement.purchase.section3' inverse_name='statement_id' string='Purchases - Section 3'
  • purchase_section3_operation_amount Integer
    compute='_compute_amount_purchase_s3' store=True string='Operation Amount - Purchases Section 3'
  • purchase_section3_operation_number Integer
    compute='_compute_amount_purchase_s3' store=True string='Operation Count - Purchases Section 3'
  • purchase_section4_ids One2many → account.intrastat.statement.purchase.section4
    comodel_name='account.intrastat.statement.purchase.section4' inverse_name='statement_id' string='Purchases - Section 4'
  • purchase_section4_operation_amount Integer
    compute='_compute_amount_purchase_s4' store=True string='Operation Amount - Purchases Section 4'
  • purchase_section4_operation_number Integer
    compute='_compute_amount_purchase_s4' store=True string='Operation Count - Purchases Section 4'
  • purchase_statement_sequence Integer
    default=_get_sequence string='Purchases Statement Sequence'
  • sale Boolean
    default=True string='Sales'
  • sale_section1_ids One2many → account.intrastat.statement.sale.section1
    comodel_name='account.intrastat.statement.sale.section1' inverse_name='statement_id' string='Sales - Section 1'
  • sale_section1_operation_amount Integer
    compute='_compute_amount_sale_s1' store=True string='Operation Amount - Sales Section 1'
  • sale_section1_operation_number Integer
    compute='_compute_amount_sale_s1' store=True string='Operation Count - Sales Section 1'
  • sale_section2_ids One2many → account.intrastat.statement.sale.section2
    comodel_name='account.intrastat.statement.sale.section2' inverse_name='statement_id' string='Sales - Section 2'
  • sale_section2_operation_amount Integer
    compute='_compute_amount_sale_s2' store=True string='Operation Amount - Sales Section 2'
  • sale_section2_operation_number Integer
    compute='_compute_amount_sale_s2' store=True string='Operation Count - Sales Section 2'
  • sale_section3_ids One2many → account.intrastat.statement.sale.section3
    comodel_name='account.intrastat.statement.sale.section3' inverse_name='statement_id' string='Sales - Section 3'
  • sale_section3_operation_amount Integer
    compute='_compute_amount_sale_s3' store=True string='Operation Amount - Sales Section 3'
  • sale_section3_operation_number Integer
    compute='_compute_amount_sale_s3' store=True string='Operation Count - Sales Section 3'
  • sale_section4_ids One2many → account.intrastat.statement.sale.section4
    comodel_name='account.intrastat.statement.sale.section4' inverse_name='statement_id' string='Sales - Section 4'
  • sale_section4_operation_amount Integer
    compute='_compute_amount_sale_s4' store=True string='Operation Amount - Sales Section 4'
  • sale_section4_operation_number Integer
    compute='_compute_amount_sale_s4' store=True string='Operation Count - Sales Section 4'
  • sale_statement_sequence Integer
    default=_get_sequence string='Sales Statement Sequence'
  • special_cases Selection
    default='0' required=True selection=[('7', 'First Statement Submitted'), ('8', 'Ceasing Activity or Changing VAT Number'), ('9', 'First Statement in Ceasing Activity or Changing VAT Number'), ('0', 'None of the above cases')]
  • vat_taxpayer Char
    default=<expr> required=True string='Taxpayer VAT Number'
Public methods (11)
  • change_company_id(self)
    @api.onchange('company_id')
  • compute_statement(self)
  • create(self, vals_list)
    @api.model_create_multi
  • generate_file_export(self)
  • get_dates_start_stop(self)
  • get_section_field_name(section_type, section_number)
    @staticmethod
  • get_section_model(section_type, section_number)
    @staticmethod
  • recompute_sequence_lines(self)
  • refund_line(self, line, to_ref_obj)
    Refund line into sale if period ref is the same of the statement
  • round_min_amount(self, amount, company=None, prec_digits=None, truncate=False)
    Return an integer representing `amount`, ready for usage in the statement. :param amount: Amount to be edited :param company: Company to be used for fetching minimal value, if not present the statement's company is used :param prec_digits: Digits to be used for rounding, if not present it is rounded to the unit :param truncate: True if the float number has to be truncated, otherwise it is rounded :return: An integer representing `amount`
  • write(self, vals)

New fields (1)
  • amount_currency Integer
    string='Amount in Currency'
Public methods (1)
  • get_section_type(self)
    @api.model

New fields (12)
  • additional_units Integer
  • additional_units_required Boolean
    related='intrastat_code_id.additional_unit_required' store=True string='Additional Unit Required'
  • additional_units_uom Char
    related='intrastat_code_id.additional_unit_uom_id.name' string='Additional Unit of Measure'
  • country_good_origin_id Many2one → res.country
    comodel_name='res.country' string='Goods Origin Country'
  • country_origin_id Many2one → res.country
    comodel_name='res.country' string='Provenance Country'
  • delivery_code_id Many2one → account.incoterms
    comodel_name='account.incoterms' string='Delivery Terms'
  • province_destination_id Many2one → res.country.state
    comodel_name='res.country.state' string='Destination Province'
  • statistic_amount_euro Integer
    string='Statistic Value in Euro'
  • transaction_nature_b_id Many2one → account.intrastat.transaction.nature.b
    comodel_name='account.intrastat.transaction.nature.b' default=<expr> string='Transaction Nature B'
  • transaction_nature_id Many2one → account.intrastat.transaction.nature
    comodel_name='account.intrastat.transaction.nature' default=<expr> string='Transaction Nature'
  • transport_code_id Many2one → account.intrastat.transport
    comodel_name='account.intrastat.transport' string='Transport Mode'
  • weight_kg Integer
    string='Net Mass (kg)'
Public methods (3)
  • apply_partner_data(self, partner_data)
  • change_weight_kg(self)
    @api.onchange('weight_kg')
  • get_section_number(self)
    @api.model

New fields (6)
  • month Integer
    string='Ref. Month'
  • quarterly Integer
    string='Ref. Quarter'
  • sign_variation Selection
    selection=[('+', '+'), ('-', '-')] string='Adjustment Sign'
  • statistic_amount_euro Integer
    string='Statistic Value in Euro'
  • transaction_nature_id Many2one → account.intrastat.transaction.nature
    comodel_name='account.intrastat.transaction.nature' default=<expr> string='Transaction Nature'
  • year_id Integer
    string='Ref. Year'
Public methods (2)
  • get_amount_euro(self)
  • get_section_number(self)
    @api.model

New fields (5)
  • country_payment_id Many2one → res.country
    comodel_name='res.country' string='Payment Country'
  • invoice_date Date
  • invoice_number Char
  • payment_method Selection
    selection=[('B', 'Bank Transfer'), ('A', 'Credit'), ('X', 'Other')]
  • supply_method Selection
    selection=[('I', 'Instant'), ('R', 'Repeated')]
Public methods (3)
  • get_payment_method_key(self)
  • get_section_number(self)
    @api.model
  • get_supply_method_key(self)

New fields (11)
  • country_payment_id Many2one → res.country
    comodel_name='res.country' string='Payment Country'
  • intrastat_custom_id Many2one → account.intrastat.custom
    comodel_name='account.intrastat.custom' string='Customs Section'
  • invoice_date Date
  • invoice_number Char
  • month Integer
    string='Ref. Month'
  • payment_method Selection
    selection=[('B', 'Bank Transfer'), ('A', 'Credit'), ('X', 'Other')]
  • progressive_to_modify Integer
    string='Progressive to Adjust'
  • protocol Integer
    string='Protocol Number'
  • quarterly Integer
    string='Ref. Quarter'
  • supply_method Selection
    selection=[('I', 'Instant'), ('R', 'Repeated')]
  • year_id Integer
    string='Ref. Year'
Public methods (3)
  • get_payment_method_key(self)
  • get_section_number(self)
    @api.model
  • get_supply_method_key(self)

New fields (0)

No new fields.

Public methods (1)
  • get_section_type(self)
    @api.model

New fields (13)
  • additional_units Integer
  • additional_units_required Boolean
    related='intrastat_code_id.additional_unit_required' store=True string='Additional Unit Required'
  • additional_units_uom Char
    related='intrastat_code_id.additional_unit_uom_id.name' string='Additional Unit of Measure'
  • country_destination_id Many2one → res.country
    comodel_name='res.country' string='Destination Country'
  • country_origin_id Many2one → res.country
    comodel_name='res.country' string='Origin Country'
  • delivery_code_id Many2one → account.incoterms
    comodel_name='account.incoterms' string='Delivery Terms'
  • province_origin_id Many2one → res.country.state
    comodel_name='res.country.state' string='Origin Province'
  • statistic_amount_euro Integer
    string='Statistic Value in Euro'
  • transaction_nature_b_id Many2one → account.intrastat.transaction.nature.b
    comodel_name='account.intrastat.transaction.nature.b' string='Transaction Nature B'
  • transaction_nature_id Many2one → account.intrastat.transaction.nature
    comodel_name='account.intrastat.transaction.nature' default=<expr> string='Transaction Nature'
  • transport_code_id Many2one → account.intrastat.transport
    comodel_name='account.intrastat.transport' string='Transport Mode'
  • triangulation Boolean
    default=False
  • weight_kg Integer
    string='Net Mass (kg)'
Public methods (3)
  • apply_partner_data(self, partner_data)
  • change_weight_kg(self)
    @api.onchange('weight_kg')
  • get_section_number(self)
    @api.model

New fields (6)
  • month Integer
    string='Ref. Month'
  • quarterly Integer
    string='Ref. Quarter'
  • sign_variation Selection
    selection=[('+', '+'), ('-', '-')] string='Adjustment Sign'
  • statistic_amount_euro Integer
    string='Statistic Value in Euro'
  • transaction_nature_id Many2one → account.intrastat.transaction.nature
    comodel_name='account.intrastat.transaction.nature' default=<expr> string='Transaction Nature'
  • year_id Integer
    string='Ref. Year'
Public methods (2)
  • get_amount_euro(self)
  • get_section_number(self)
    @api.model

New fields (5)
  • country_payment_id Many2one → res.country
    comodel_name='res.country' string='Payment Country'
  • invoice_date Date
  • invoice_number Char
  • payment_method Selection
    selection=[('B', 'Bank Transfer'), ('A', 'Credit'), ('X', 'Other')]
  • supply_method Selection
    selection=[('I', 'Instant'), ('R', 'Repeated')]
Public methods (3)
  • get_payment_method_key(self)
  • get_section_number(self)
    @api.model
  • get_supply_method_key(self)

New fields (12)
  • cancellation Boolean
    help='The Adjustment is intended for cancellation'
  • country_payment_id Many2one → res.country
    comodel_name='res.country' string='Payment Country'
  • intrastat_custom_id Many2one → account.intrastat.custom
    comodel_name='account.intrastat.custom' string='Customs Section'
  • invoice_date Date
  • invoice_number Char
  • month Integer
    string='Ref. Month'
  • payment_method Selection
    selection=[('B', 'Bank Transfer'), ('A', 'Credit'), ('X', 'Other')]
  • progressive_to_modify Integer
    string='Progressive to Adjust'
  • protocol Integer
    string='Protocol Number'
  • quarterly Integer
    string='Ref. Quarter'
  • supply_method Selection
    selection=[('I', 'Instant'), ('R', 'Repeated')]
  • year_id Integer
    string='Ref. Year'
Public methods (3)
  • get_payment_method_key(self)
  • get_section_number(self)
    @api.model
  • get_supply_method_key(self)

New fields (8)
  • amount_euro Integer
    string='Amount in Euro'
  • country_partner_id Many2one → res.country
    comodel_name='res.country' string='Partner State'
  • intrastat_code_id Many2one → report.intrastat.code
    comodel_name='report.intrastat.code'
  • invoice_id Many2one → account.move
    comodel_name='account.move' string='Invoice'
  • partner_id Many2one → res.partner
    comodel_name='res.partner'
  • sequence Integer
    string='Progr.'
  • statement_id Many2one → account.intrastat.statement
    comodel_name='account.intrastat.statement' ondelete='cascade' string='Statement'
  • vat_code Char
Public methods (5)
  • apply_partner_data(self, partner_data)
  • change_partner_id(self)
    @api.onchange('partner_id')
  • get_amount_euro(self)
  • get_section_number(self)
    @api.model
  • get_section_type(self)
    @api.model

New fields (1)
  • intrastat_custom_id Many2one → account.intrastat.custom
    comodel_name='account.intrastat.custom' string='Customs Section'
Public methods (0)

No public methods.

Loading…

Loading…

Loading…

Loading…

Status
Open migration PR — not merged yet for this version
CI status
checks failing
Open since
196 days ago
Last activity
180 days ago
Repository
OCA/l10n-italy
Pull request
[19.0][MIG] l10n_it_intrastat_statement_oca: Migration to 19.0 (#5088)