Netherlands BTW Statement

l10n_nl_tax_statement
REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/19.0/l10n_nl_tax_statement
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSRonald Portier, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:40:48
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/reporting-engine:
    - report_xlsx
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES xlrd
xlsxwriter
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module provides you with the Tax Statement in the Dutch format.

The Tax Statement can be generated in two ways, according to the chosen
Dutch accounting system:

- Kasstelsel
- Factuurstelsel

By default the Tax Statement is generated according to the
*Factuurstelsel* system. It means that, when validating an invoice, the
system uses the invoice date instead of accounting date to determine the
date of the move line for tax lines. See
<https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/zakelijk/btw/btw_aangifte_doen_en_betalen/bereken_het_bedrag/hoe_berekent_u_het_btw_bedrag/factuurstelsel>

About the *Kasstelsel* system instead, more information can be found in:
<https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/zakelijk/btw/btw_aangifte_doen_en_betalen/bereken_het_bedrag/hoe_berekent_u_het_btw_bedrag/kasstelsel/kasstelsel>

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
res_config_settings_view_form res.config.settings setting Inherits account.res_config_settings_view_form
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement list New
Models touched (7)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    copy=False args: 'l10n.nl.vat.statement'
  • l10n_nl_vat_statement_include Boolean
    copy=False args: 'Include in VAT Statement'
Public methods (3)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)
  • write(self, values)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (1)
  • write(self, values)

New fields (20)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_update Datetime
    readonly=True
  • display_button_add_all_undeclared_invoices Boolean
    compute='_compute_display_button_add_all_undeclared_invoices'
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    required=True
  • is_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    compute='_compute_name' readonly=False required=True store=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • to_date Date
    required=True
  • unreported_move_from_date Date
    compute='_compute_unreported_move_from_date' readonly=False store=True
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' search='_search_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (7)
  • add_all_undeclared_invoices(self)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • post(self)
  • reset(self)
  • statement_update(self)
  • write(self, values)

New fields (11)
  • btw Monetary
    string='VAT'
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
    string='Turnover'
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement'
Public methods (3)
  • get_lines_action(self, tax_or_base='tax')
  • view_base_lines(self)
  • view_tax_lines(self)

New fields (0)

No new fields.

Public methods (2)
  • format_line_from_obj(self, line, report_data, is_pair_line)
    Write statement line on current row
  • generate_xlsx_report(self, workbook, data, objects)

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    default=True string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    readonly=False related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/18.0/l10n_nl_tax_statement
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, andrea
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:13
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/reporting-engine:
    - report_xlsx
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module provides you with the Tax Statement in the Dutch format.

The Tax Statement can be generated in two ways, according to the chosen
Dutch accounting system:

- Kasstelsel
- Factuurstelsel

By default the Tax Statement is generated according to the
*Factuurstelsel* system. It means that, when validating an invoice, the
system uses the invoice date instead of accounting date to determine the
date of the move line for tax lines. See
<https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/zakelijk/btw/btw_aangifte_doen_en_betalen/bereken_het_bedrag/hoe_berekent_u_het_btw_bedrag/factuurstelsel>

About the *Kasstelsel* system instead, more information can be found in:
<https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/zakelijk/btw/btw_aangifte_doen_en_betalen/bereken_het_bedrag/hoe_berekent_u_het_btw_bedrag/kasstelsel/kasstelsel>

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
res_config_settings_view_form res.config.settings setting Inherits account.res_config_settings_view_form
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement list New
Models touched (7)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    copy=False args: 'l10n.nl.vat.statement'
  • l10n_nl_vat_statement_include Boolean
    copy=False args: 'Include in VAT Statement'
Public methods (3)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)
  • write(self, values)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (1)
  • write(self, values)

New fields (20)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_update Datetime
    readonly=True
  • display_button_add_all_undeclared_invoices Boolean
    compute='_compute_display_button_add_all_undeclared_invoices'
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    required=True
  • is_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    compute='_compute_name' readonly=False required=True store=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • to_date Date
    required=True
  • unreported_move_from_date Date
    compute='_compute_unreported_move_from_date' readonly=False store=True
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' search='_search_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (8)
  • add_all_undeclared_invoices(self)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • post(self)
  • reset(self)
  • statement_update(self)
  • unlink(self)
  • write(self, values)

New fields (11)
  • btw Monetary
    string='VAT'
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
    string='Turnover'
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
  • view_base_lines(self)
  • view_tax_lines(self)

New fields (0)

No new fields.

Public methods (2)
  • format_line_from_obj(self, line, report_data, is_pair_line)
    Write statement line on current row
  • generate_xlsx_report(self, workbook, data, objects)

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    default=True string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    readonly=False related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/17.0/l10n_nl_tax_statement
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSHolger Brunn, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:06
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/reporting-engine:
    - report_xlsx
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES xlrd
xlsxwriter
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module provides you with the Tax Statement in the Dutch format.

The Tax Statement can be generated in two ways, according to the chosen
Dutch accounting system:

- Kasstelsel
- Factuurstelsel

By default the Tax Statement is generated according to the
*Factuurstelsel* system. It means that, when validating an invoice, the
system uses the invoice date instead of accounting date to determine the
date of the move line for tax lines. See
<https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/zakelijk/btw/btw_aangifte_doen_en_betalen/bereken_het_bedrag/hoe_berekent_u_het_btw_bedrag/factuurstelsel>

About the *Kasstelsel* system instead, more information can be found in:
<https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/zakelijk/btw/btw_aangifte_doen_en_betalen/bereken_het_bedrag/hoe_berekent_u_het_btw_bedrag/kasstelsel/kasstelsel>

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
res_config_settings_view_form res.config.settings setting Inherits account.res_config_settings_view_form
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (7)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    copy=False args: 'l10n.nl.vat.statement'
  • l10n_nl_vat_statement_include Boolean
    copy=False args: 'Include in VAT Statement'
Public methods (3)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)
  • write(self, values)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (1)
  • write(self, values)

New fields (20)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_update Datetime
    readonly=True
  • display_button_add_all_undeclared_invoices Boolean
    compute='_compute_display_button_add_all_undeclared_invoices'
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    required=True
  • is_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    compute='_compute_name' readonly=False required=True store=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • to_date Date
    required=True
  • unreported_move_from_date Date
    compute='_compute_unreported_move_from_date' readonly=False store=True
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' search='_search_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (8)
  • add_all_undeclared_invoices(self)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • post(self)
  • reset(self)
  • statement_update(self)
  • unlink(self)
  • write(self, values)

New fields (11)
  • btw Monetary
    string='VAT'
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
    string='Turnover'
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
  • view_base_lines(self)
  • view_tax_lines(self)

New fields (0)

No new fields.

Public methods (2)
  • format_line_from_obj(self, line, report_data, is_pair_line)
    Write statement line on current row
  • generate_xlsx_report(self, workbook, data, objects)

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    default=True string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    readonly=False related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/16.0/l10n_nl_tax_statement
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSHolger Brunn, Weblate, OCA-git-bot, Andrea Stirpe, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:48
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/reporting-engine:
    - report_xlsx
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
res_config_settings_view_form res.config.settings div Inherits account.res_config_settings_view_form
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (7)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    copy=False args: 'l10n.nl.vat.statement'
  • l10n_nl_vat_statement_include Boolean
    copy=False args: 'Include in VAT Statement'
Public methods (3)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)
  • write(self, values)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (1)
  • write(self, values)

New fields (20)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_update Datetime
    readonly=True
  • display_button_add_all_undeclared_invoices Boolean
    compute='_compute_display_button_add_all_undeclared_invoices'
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    required=True
  • is_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    compute='_compute_name' readonly=False required=True store=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • to_date Date
    required=True
  • unreported_move_from_date Date
    compute='_compute_unreported_move_from_date' readonly=False store=True
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' search='_search_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (8)
  • add_all_undeclared_invoices(self)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • post(self)
  • reset(self)
  • statement_update(self)
  • unlink(self)
  • write(self, values)

New fields (11)
  • btw Monetary
    string='VAT'
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
    string='Turnover'
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
  • view_base_lines(self)
  • view_tax_lines(self)

New fields (0)

No new fields.

Public methods (2)
  • format_line_from_obj(self, line, report_data, is_pair_line)
    Write statement line on current row
  • generate_xlsx_report(self, workbook, data, objects)

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    default=True string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    readonly=False related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/15.0/l10n_nl_tax_statement
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, tarteo, Andrea Stirpe, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:35
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/reporting-engine:
    - report_xlsx
OCA/server-ux:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES xlrd
xlsxwriter
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
res_config_settings_view_form res.config.settings div Inherits account.res_config_settings_view_form
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (7)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    copy=False args: 'l10n.nl.vat.statement'
  • l10n_nl_vat_statement_include Boolean
    copy=False args: 'Include in VAT Statement'
Public methods (3)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)
  • write(self, values)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (1)
  • write(self, values)

New fields (21)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_range_id Many2one → date.range
    args: 'date.range', 'Date range'
  • date_update Datetime
    readonly=True
  • display_button_add_all_undeclared_invoices Boolean
    compute='_compute_display_button_add_all_undeclared_invoices'
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    compute='_compute_date_range' readonly=False required=True store=True
  • is_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    compute='_compute_name' readonly=False required=True store=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • to_date Date
    compute='_compute_date_range' readonly=False required=True store=True
  • unreported_move_from_date Date
    compute='_compute_unreported_move_from_date' readonly=False store=True
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' search='_search_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (8)
  • add_all_undeclared_invoices(self)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • post(self)
  • reset(self)
  • statement_update(self)
  • unlink(self)
  • write(self, values)

New fields (11)
  • btw Monetary
    string='VAT'
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
    string='Turnover'
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
  • view_base_lines(self)
  • view_tax_lines(self)

New fields (0)

No new fields.

Public methods (2)
  • format_line_from_obj(self, line, report_data, is_pair_line)
    Write statement line on current row
  • generate_xlsx_report(self, workbook, data, objects)

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    default=True string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/14.0/l10n_nl_tax_statement
VERSION
VERSION 1.2.0
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSHolger Brunn, Andrea, OCA Transbot, oca-travis, Weblate, OCA-git-bot, Giovanni Francesco Capalbo, oca-ci, oca-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:01
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/server-ux:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
assets_common l10n_nl_tax_statement pdf assets ir.ui.view qweb Inherits web.report_assets_common
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
res_config_settings_view_form res.config.settings div Inherits account.res_config_settings_view_form
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (6)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    copy=False args: 'l10n.nl.vat.statement'
  • l10n_nl_vat_statement_include Boolean
    copy=False args: 'Include in VAT Statement'
Public methods (3)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)
  • write(self, values)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (2)
  • check_field_is_equal(self, changed_protected_field, values)
  • write(self, values)

New fields (21)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_range_id Many2one → date.range
    args: 'date.range', 'Date range'
  • date_update Datetime
    readonly=True
  • display_button_add_all_undeclared_invoices Boolean
    compute='_compute_display_button_add_all_undeclared_invoices'
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    compute='_compute_date_range' readonly=False required=True store=True
  • is_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    compute='_compute_name' readonly=False required=True store=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • to_date Date
    compute='_compute_date_range' readonly=False required=True store=True
  • unreported_move_from_date Date
    compute='_compute_unreported_move_from_date' readonly=False store=True
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' search='_search_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (8)
  • add_all_undeclared_invoices(self)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • post(self)
  • reset(self)
  • statement_update(self)
  • unlink(self)
  • write(self, values)

New fields (11)
  • btw Monetary
    string='VAT'
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
    string='Turnover'
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
  • view_base_lines(self)
  • view_tax_lines(self)

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    default=True string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

New fields (1)
  • l10n_nl_tax_invoice_basis Boolean
    related='company_id.l10n_nl_tax_invoice_basis' string='NL Tax Invoice Basis'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/13.0/l10n_nl_tax_statement
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSAndrea, OCA Transbot, oca-travis, Weblate, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:34:14
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/server-ux:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
assets_common l10n_nl_tax_statement pdf assets ir.ui.view qweb Inherits web.report_assets_common
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (4)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    copy=False args: 'l10n.nl.vat.statement', 'Statement'
  • l10n_nl_vat_statement_include Boolean
    copy=False args: 'Include in VAT Statement'
Public methods (3)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)
  • write(self, values)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (1)
  • write(self, values)

New fields (21)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_range_id Many2one → date.range
    args: 'date.range', 'Date range'
  • date_update Datetime
    readonly=True
  • display_button_add_all_undeclared_invoices Boolean
    compute='_compute_display_button_add_all_undeclared_invoices'
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    compute='_compute_date_range' readonly=False required=True store=True
  • is_invoice_basis Boolean
    compute='_compute_is_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    compute='_compute_name' readonly=False required=True store=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • to_date Date
    compute='_compute_date_range' readonly=False required=True store=True
  • unreported_move_from_date Date
    compute='_compute_unreported_move_from_date' readonly=False store=True
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' search='_search_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (8)
  • add_all_undeclared_invoices(self)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • post(self)
  • reset(self)
  • statement_update(self)
  • unlink(self)
  • write(self, values)

New fields (11)
  • btw Monetary
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
  • view_base_lines(self)
  • view_tax_lines(self)
REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/12.0/l10n_nl_tax_statement
VERSION
VERSION 2.0.4
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSStefan Rijnhart, Holger Brunn, Andrea, Weblate, OCA-git-bot, Tom Blauwendraat, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:19
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-financial-reporting:
    - account_tax_balance
OCA/server-ux:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - http_routing
    - digest
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
assets_common l10n_nl_tax_statement pdf assets ir.ui.view qweb Inherits web.report_assets_common
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
view_account_vat_statement_nl_config l10n.nl.vat.statement.config.wizard form New
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (7)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement', 'Statement'
  • l10n_nl_vat_statement_include Boolean
    args: 'Include in VAT Statement'
Public methods (2)
  • l10n_nl_add_move_in_statement(self)
  • l10n_nl_unlink_move_from_statement(self)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    index=True related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    index=True related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (4)
  • get_balance_domain(self, state_list, type_list)
  • get_base_balance_domain(self, state_list, type_list)
  • get_move_line_partial_domain(self, from_date, to_date, company_id)
  • get_move_line_partial_domain(self, from_date, to_date, company_id)

New fields (21)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    readonly=True related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_range_id Many2one → date.range
    args: 'date.range', 'Date range'
  • date_update Datetime
    readonly=True
  • display_multicompany_fiscal_unit Boolean
    compute='_compute_display_multicompany_fiscal_unit'
  • fiscal_unit_company_ids Many2many → res.company
    args: 'res.company'
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    required=True
  • is_invoice_basis Boolean
    compute='_compute_is_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • multicompany_fiscal_unit Boolean
  • name Char
    required=True string='Tax Statement'
  • parent_id Many2one → l10n.nl.vat.statement
    compute='_compute_parent_statement_id' args: 'l10n.nl.vat.statement', 'Parent Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • target_move Selection
    default='posted' readonly=True required=True args: [('posted', 'All Posted Entries'), ('all', 'All Entries')], 'Target Moves'
  • to_date Date
    required=True
  • unreported_move_from_date Date
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (11)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
  • onchange_date(self)
    @api.onchange('from_date', 'to_date')
  • onchange_date_from_date(self)
    @api.onchange('from_date')
  • onchange_date_range_id(self)
    @api.onchange('date_range_id')
  • onchange_unreported_move_from_date(self)
    @api.onchange('unreported_move_from_date')
  • post(self)
  • reset(self)
  • statement_update(self)
  • unlink(self)
  • write(self, values)

New fields (21)
  • company_id Many2one → res.company
    required=True args: 'res.company', 'Company'
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet_d Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (0)

No public methods.

New fields (20)
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet_d Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (2)
  • default_get(self, fields_list)
    @api.model
  • execute(self)

New fields (11)
  • btw Monetary
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement', 'Statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
  • view_base_lines(self)
  • view_tax_lines(self)
REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/11.0/l10n_nl_tax_statement
VERSION
VERSION 2.1.1
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSStefan Rijnhart, Ronald Portier, Holger Brunn, GitHub, Andrea, OCA Transbot, oca-travis, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:23:58
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-financial-reporting:
    - account_tax_balance
OCA/server-ux:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - analytic
    - web_planner
    - portal
    - http_routing
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
assets_common l10n_nl_tax_statement pdf assets ir.ui.view qweb Inherits web.report_assets_common
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
view_account_vat_statement_nl_config l10n.nl.vat.statement.config.wizard form New
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (7)

New fields (2)
  • l10n_nl_vat_statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement', 'Statement'
  • l10n_nl_vat_statement_include Boolean
    args: 'Include in VAT Statement'
Public methods (2)
  • add_move_in_statement(self)
  • unlink_move_from_statement(self)

New fields (2)
  • l10n_nl_vat_statement_id Many2one
    readonly=True related='move_id.l10n_nl_vat_statement_id' store=True string='Related Move Statement'
  • l10n_nl_vat_statement_include Boolean
    readonly=True related='move_id.l10n_nl_vat_statement_include' store=True
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (3)
  • get_balance_domain(self, state_list, type_list)
  • get_base_balance_domain(self, state_list, type_list)
  • get_move_line_partial_domain(self, from_date, to_date, company_id)

New fields (17)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    readonly=True related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_range_id Many2one → date.range
    args: 'date.range', 'Date range'
  • date_update Datetime
    readonly=True
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    required=True
  • is_invoice_basis Boolean
    compute='_compute_is_invoice_basis' string='NL Tax Invoice Basis'
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • move_line_ids One2many → account.move.line
    readonly=True string='Entry Lines' args: 'account.move.line', 'l10n_nl_vat_statement_id'
  • name Char
    required=True string='Tax Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted'), ('final', 'Final')]
  • target_move Selection
    default='posted' readonly=True required=True args: [('posted', 'All Posted Entries'), ('all', 'All Entries')], 'Target Moves'
  • to_date Date
    required=True
  • unreported_move_from_date Date
  • unreported_move_ids One2many → account.move
    compute='_compute_unreported_move_ids' string='Unreported Journal Entries' args: 'account.move'
Public methods (11)
  • default_get(self, fields_list)
    @api.model
  • finalize(self)
    @api.multi
  • onchange_date(self)
    @api.onchange('from_date', 'to_date')
  • onchange_date_from_date(self)
    @api.onchange('from_date')
  • onchange_date_range_id(self)
    @api.onchange('date_range_id')
  • onchange_unreported_move_from_date(self)
    @api.onchange('unreported_move_from_date')
  • post(self)
    @api.multi
  • reset(self)
    @api.multi
  • statement_update(self)
    @api.multi
  • unlink(self)
    @api.multi
  • write(self, values)
    @api.multi

New fields (21)
  • company_id Many2one → res.company
    required=True args: 'res.company', 'Company'
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet_d Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (0)

No public methods.

New fields (20)
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet_d Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (2)
  • default_get(self, fields_list)
    @api.model
  • execute(self)
    @api.multi

New fields (11)
  • btw Monetary
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' readonly=True related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • is_total Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement', 'Statement'
Public methods (4)
  • get_lines_action(self, tax_or_base='tax')
  • unlink(self)
    @api.multi
  • view_base_lines(self)
    @api.multi
  • view_tax_lines(self)
    @api.multi
REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/10.0/l10n_nl_tax_statement
VERSION
VERSION 1.2.0
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSHolger Brunn, OCA Transbot, oca-travis, OCA-git-bot
WEBSITE
WEBSITEhttp://www.onestein.eu
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:19:57
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-financial-reporting:
    - account_tax_balance
OCA/server-tools:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - report
    - analytic
    - web_planner
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
assets_specific assets_specific ir.ui.view qweb Inherits report.assets_common
l10n_nl_tax_statement.internal_layout l10n_nl_tax_statement.internal_layout ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
view_account_vat_statement_nl_config l10n.nl.vat.statement.config.wizard form New
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (4)

New fields (13)
  • btw_total Monetary
    compute='_compute_btw_total' string='5g. Total (5c + 5d)'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    readonly=True related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_range_id Many2one → date.range
    args: 'date.range', 'Date range'
  • date_update Datetime
    readonly=True
  • format_btw_total Char
    compute='_compute_amount_format_btw_total' string='5g - Total'
  • from_date Date
    required=True
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • name Char
    required=True string='Tax Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted')]
  • target_move Selection
    default='posted' readonly=True required=True args: [('posted', 'All Posted Entries'), ('all', 'All Entries')], 'Target Moves'
  • to_date Date
    required=True
Public methods (8)
  • default_get(self, fields_list)
    @api.model
  • onchange_date(self)
    @api.onchange('from_date', 'to_date')
  • onchange_date_range_id(self)
    @api.onchange('date_range_id')
  • post(self)
    @api.multi
  • reset(self)
    @api.multi
  • statement_update(self)
    @api.multi
  • unlink(self)
    @api.multi
  • write(self, values)
    @api.multi

New fields (21)
  • company_id Many2one → res.company
    required=True args: 'res.company', 'Company'
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw_bis Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (0)

No public methods.

New fields (20)
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw_bis Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (2)
  • default_get(self, fields_list)
    @api.model
  • execute(self)
    @api.multi

New fields (11)
  • btw Monetary
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' readonly=True related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format'
  • format_omzet Char
    compute='_compute_amount_format'
  • is_group Boolean
    compute='_compute_is_group'
  • is_readonly Boolean
    compute='_compute_is_readonly'
  • name Char
  • omzet Monetary
  • state Selection
    related='statement_id.state'
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement', 'Statement'
Public methods (1)
  • unlink(self)
    @api.multi
REPOSITORY
REPOSITORYOCA/l10n-netherlands
GIT
GIThttps://github.com/OCA/l10n-netherlands.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-netherlands/tree/9.0/l10n_nl_tax_statement
VERSION
VERSION 2.0.0
CATEGORY
CATEGORYLocalization
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Onestein
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Onestein
COMMITTERS
COMMITTERSRonald Portier, Holger Brunn, OCA Transbot, oca-travis, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-netherlands
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:15:21
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-financial-reporting:
    - account_tax_balance
OCA/server-tools:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - report
    - analytic
    - web_tip
    - web_planner
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
assets_specific assets_specific ir.ui.view qweb Inherits report.assets_common
l10n_nl_tax_statement.internal_layout l10n_nl_tax_statement.internal_layout ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement l10n_nl_tax_statement.report_tax_statement ir.ui.view qweb New
l10n_nl_tax_statement.report_tax_statement_filters l10n_nl_tax_statement.report_tax_statement_filters ir.ui.view qweb New
view_account_vat_statement_nl_config l10n.nl.vat.statement.config.wizard form New
view_l10n_nl_vat_report_form l10n.nl.vat.statement form New
view_l10n_nl_vat_report_tree l10n.nl.vat.statement tree New
Models touched (4)

New fields (11)
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True args: 'res.company', 'Company'
  • currency_id Many2one → res.currency
    readonly=True related='company_id.currency_id' args: 'res.currency'
  • date_posted Datetime
    readonly=True
  • date_range_id Many2one → date.range
    args: 'date.range', 'Date range'
  • date_update Datetime
    readonly=True
  • from_date Date
    required=True
  • line_ids One2many → l10n.nl.vat.statement.line
    args: 'l10n.nl.vat.statement.line', 'statement_id', 'Lines'
  • name Char
    required=True string='Tax Statement'
  • state Selection
    copy=False default='draft' readonly=True string='Status' args: [('draft', 'Draft'), ('posted', 'Posted')]
  • target_move Selection
    default='posted' readonly=True required=True args: [('posted', 'All Posted Entries'), ('all', 'All Entries')], 'Target Moves'
  • to_date Date
    required=True
Public methods (8)
  • default_get(self, fields_list)
    @api.model
  • onchange_date(self)
    @api.onchange('from_date', 'to_date')
  • onchange_date_range_id(self)
    @api.onchange('date_range_id')
  • post(self)
    @api.multi
  • reset(self)
    @api.multi
  • statement_update(self)
    @api.multi
  • unlink(self)
    @api.multi
  • write(self, values)
    @api.multi

New fields (21)
  • company_id Many2one → res.company
    required=True args: 'res.company', 'Company'
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw_bis Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (0)

No public methods.

New fields (20)
  • tag_1a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1d_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_1e_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_2a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_3c_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4a_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_4b_omzet Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw Many2one → account.account.tag
    args: 'account.account.tag'
  • tag_5b_btw_bis Many2one → account.account.tag
    args: 'account.account.tag'
Public methods (2)
  • default_get(self, fields_list)
    @api.model
  • execute(self)
    @api.multi

New fields (9)
  • btw Monetary
  • code Char
  • currency_id Many2one → res.currency
    help='Utility field to express amount currency' readonly=True related='statement_id.company_id.currency_id' args: 'res.currency'
  • format_btw Char
    compute='_compute_amount_format' string='BTW'
  • format_omzet Char
    compute='_compute_amount_format' string='Omzet'
  • is_group Boolean
    compute='_compute_is_group'
  • name Char
  • omzet Monetary
  • statement_id Many2one → l10n.nl.vat.statement
    args: 'l10n.nl.vat.statement', 'Statement'
Public methods (1)
  • unlink(self)
    @api.multi