Portugal - IVA

l10n_pt_vat
REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/19.0/l10n_pt_vat
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators, Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Open Source Integrators, Sossia
COMMITTERS
COMMITTERSDaniel Reis, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:40:51
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_pt
    - base_vat
    - account_edi_ubl_cii
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This modules extends the base localization modules with a few VAT
specific functions that are required by the Portuguese Tax Authorities,
including:

- The use of pre-defined legally accepted reasons for issuing credit
  notes, as required for fields 40/41 of the VAT statement (Portaria nº
  255/2013).

NOTE: scheduled to replaced by the future core module `l10n_pt_certification`.

Code Analysis

Views touched (8)
XML IDNameModelTypeStatus
account_invoice_form Invoice: add l10_pt account.move data Inherits account.view_move_form
account_journal_form Account Journal: add l10_pt_vat account.journal data Inherits account.view_account_journal_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.list account.vat.adjustment_norm list New
vat_exempt_reason_form VAT Exempt Reason Form account.l10n_pt.vat.exempt.reason form New
vat_exempt_reason_tree VAT Exempt Reason List account.l10n_pt.vat.exempt.reason list New
view_account_tax_form Account Tax: add Fiscal Zone account.tax field Inherits account.view_tax_form
Models touched (5)

New fields (1)
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
Public methods (0)

No public methods.

New fields (4)
  • active Boolean
    default=True
  • code Char
    required=True
  • name Char
    required=True translate=True
  • note Text
    string='Description'
Public methods (0)

No public methods.

New fields (4)
  • is_l10npt_vat_enabled Boolean
    compute='_compute_is_l10npt_vat_enabled'
  • l10npt_has_tax_exempt_lines Boolean
    compute='_compute_l10npt_has_tax_exempt_lines'
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    compute='_compute_l10npt_vat_exempt_reason' readonly=False store=True string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    help='Fields 40/41 of the VAT Statement' ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (1)
  • action_post(self)
    VAT Exemption reason is required if there are lines without tax

New fields (1)
  • l10n_pt_fiscal_zone Selection
    default='PT' string='Fiscal Zone' args: [('PT', 'Portugal Continental'), ('PT-AC', 'Açores'), ('PT-MA', 'Madeira')]
Public methods (0)

No public methods.

New fields (6)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • move_type Selection
    compute='_compute_move_type' selection=[('out_refund', 'Customer Credit Note'), ('in_refund', 'Vendor Credit Note')] store=True
  • name Char
    required=True
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/18.0/l10n_pt_vat
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators, Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Open Source Integrators, Sossia
COMMITTERS
COMMITTERSDaniel Reis, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:19
ODOO DEPENDENCIES
ODOO DEPENDENCIES 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
    - l10n_pt
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This modules extends the base localization modules with a few VAT
specific functions that are required by the Portuguese Tax Authorities,
including:

- The use of pre-defined legally accepted reasons for issuing credit
  notes, as required for fields 40/41 of the VAT statement (Portaria nº
  255/2013).

NOTE: scheduled to replaced by the future core module `l10n_pt_certification`.

Code Analysis

Views touched (8)
XML IDNameModelTypeStatus
account_invoice_form Invoice: add l10_pt account.move data Inherits account.view_move_form
account_journal_form Account Journal: add l10_pt_vat account.journal data Inherits account.view_account_journal_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.list account.vat.adjustment_norm list New
vat_exempt_reason_form VAT Exempt Reason Form account.l10n_pt.vat.exempt.reason form New
vat_exempt_reason_tree VAT Exempt Reason List account.l10n_pt.vat.exempt.reason list New
view_account_tax_form Account Tax: add Fiscal Zone account.tax field Inherits account.view_tax_form
Models touched (5)

New fields (1)
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
Public methods (0)

No public methods.

New fields (4)
  • active Boolean
    default=True
  • code Char
    required=True
  • name Char
    required=True translate=True
  • note Text
    string='Description'
Public methods (0)

No public methods.

New fields (4)
  • is_l10npt_vat_enabled Boolean
    compute='_compute_is_l10npt_vat_enabled'
  • l10npt_has_tax_exempt_lines Boolean
    compute='_compute_l10npt_has_tax_exempt_lines'
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    compute='_compute_l10npt_vat_exempt_reason' readonly=False store=True string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    help='Fields 40/41 of the VAT Statement' ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (1)
  • action_post(self)
    VAT Exemption reason is required if there are lines without tax

New fields (1)
  • l10n_pt_fiscal_zone Selection
    default='PT' string='Fiscal Zone' args: [('PT', 'Portugal Continental'), ('PT-AC', 'Açores'), ('PT-MA', 'Madeira')]
Public methods (0)

No public methods.

New fields (6)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • move_type Selection
    compute='_compute_move_type' selection=[('out_refund', 'Customer Credit Note'), ('in_refund', 'Vendor Credit Note')] store=True
  • name Char
    required=True
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/17.0/l10n_pt_vat
VERSION
VERSION 1.2.0
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators, Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Open Source Integrators, Sossia
COMMITTERS
COMMITTERSDaniel Reis, Weblate, OCA-git-bot, oca-ci, EmilioPascual
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:11
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_pt
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This modules extends the base localization modules with a few VAT
specific functions that are required by the Portuguese Tax Authorities,
including:

- The use of pre-defined legally accepted reasons for issuing credit
  notes, as required for fields 40/41 of the VAT statement (Portaria nº
  255/2013).

Code Analysis

Views touched (8)
XML IDNameModelTypeStatus
account_invoice_form Invoice: add l10_pt account.move data Inherits account.view_move_form
account_journal_form Account Journal: add l10_pt_vat account.journal data Inherits account.view_account_journal_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.tree account.vat.adjustment_norm tree New
vat_exempt_reason_form VAT Exempt Reason Form account.l10n_pt.vat.exempt.reason form New
vat_exempt_reason_tree VAT Exempt Reason List account.l10n_pt.vat.exempt.reason tree New
view_account_tax_form Account Tax: add Fiscal Zone account.tax field Inherits account.view_tax_form
Models touched (5)

New fields (1)
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
Public methods (0)

No public methods.

New fields (4)
  • active Boolean
    default=True
  • code Char
    required=True
  • name Char
    required=True translate=True
  • note Text
    string='Description'
Public methods (0)

No public methods.

New fields (3)
  • l10npt_has_tax_exempt_lines Boolean
    compute='_compute_l10npt_has_tax_exempt_lines'
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    compute='_compute_l10npt_vat_exempt_reason' readonly=False store=True string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    help='Fields 40/41 of the VAT Statement' ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (1)
  • action_post(self)
    VAT Exemption reason is required if there are lines without tax

New fields (1)
  • l10n_pt_fiscal_zone Selection
    default='PT' string='Fiscal Zone' args: [('PT', 'Portugal Continental'), ('PT-AC', 'Açores'), ('PT-MA', 'Madeira')]
Public methods (0)

No public methods.

New fields (6)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • move_type Selection
    compute='_compute_move_type' selection=[('out_refund', 'Customer Credit Note'), ('in_refund', 'Vendor Credit Note')] store=True
  • name Char
    required=True
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/16.0/l10n_pt_vat
VERSION
VERSION 1.3.0
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators, Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Open Source Integrators, Sossia
COMMITTERS
COMMITTERSDaniel Reis, Weblate, OCA-git-bot, oca-ci, EmilioPascual, Francisco Martins
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:59
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_pt
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (8)
XML IDNameModelTypeStatus
account_invoice_form Invoice: add l10_pt account.move data Inherits account.view_move_form
account_journal_form Account Journal: add l10_pt_vat account.journal data Inherits account.view_account_journal_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.tree account.vat.adjustment_norm tree New
vat_exempt_reason_form VAT Exempt Reason Form account.l10n_pt.vat.exempt.reason form New
vat_exempt_reason_tree VAT Exempt Reason List account.l10n_pt.vat.exempt.reason tree New
view_account_tax_form Account Tax: add Fiscal Zone account.tax field Inherits account.view_tax_form
Models touched (5)

New fields (1)
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
Public methods (0)

No public methods.

New fields (4)
  • active Boolean
    default=True
  • code Char
    required=True
  • name Char
    required=True translate=True
  • note Text
    string='Description'
Public methods (1)
  • name_get(self)

New fields (3)
  • l10npt_has_tax_exempt_lines Boolean
    compute='_compute_l10npt_has_tax_exempt_lines'
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    compute='_compute_l10npt_vat_exempt_reason' readonly=False store=True string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    help='Fields 40/41 of the VAT Statement' ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (1)
  • action_post(self)
    VAT Exemption reason is required if there are lines without tax

New fields (1)
  • l10n_pt_fiscal_zone Selection
    default='PT' string='Fiscal Zone' args: [('PT', 'Portugal Continental'), ('PT-AC', 'Açores'), ('PT-MA', 'Madeira')]
Public methods (0)

No public methods.

New fields (6)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • move_type Selection
    compute='_compute_move_type' selection=[('out_refund', 'Customer Credit Note'), ('in_refund', 'Vendor Credit Note')] store=True
  • name Char
    required=True
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/15.0/l10n_pt_vat
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators, Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Open Source Integrators, Sossia
COMMITTERS
COMMITTERSDaniel Reis, Weblate, OCA-git-bot, oca-ci, heliaktiv
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:43
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_pt
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
account_invoice_form Invoice: add l10_pt account.move data Inherits account.view_move_form
account_journal_form Account Journal: add l10_pt_vat account.journal data Inherits account.view_account_journal_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.tree account.vat.adjustment_norm tree New
vat_exempt_reason_tree VAT Exempt Reason List account.l10n_pt.vat.exempt.reason tree New
view_account_tax_form Account Tax: add Fiscal Zone account.tax field Inherits account.view_tax_form
Models touched (5)

New fields (1)
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
Public methods (0)

No public methods.

New fields (4)
  • active Boolean
    default=True
  • code Char
    required=True
  • name Char
    required=True translate=True
  • note Text
    string='Description'
Public methods (1)
  • name_get(self)

New fields (3)
  • l10npt_has_tax_exempt_lines Boolean
    compute='_compute_l10npt_has_tax_exempt_lines'
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    compute='_compute_l10npt_vat_exempt_reason' readonly=False store=True string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    help='Fields 40/41 of the VAT Statement' ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (1)
  • action_post(self)
    VAT Exemption reason is required if there are lines without tax

New fields (1)
  • l10n_pt_fiscal_zone Selection
    default='PT' string='Fiscal Zone' args: [('PT', 'Portugal Continental'), ('PT-AC', 'Açores'), ('PT-MA', 'Madeira')]
Public methods (0)

No public methods.

New fields (6)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • move_type Selection
    compute='_compute_move_type' selection=[('out_refund', 'Customer Credit Note'), ('in_refund', 'Vendor Credit Note')] store=True
  • name Char
    required=True
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/14.0/l10n_pt_vat
VERSION
VERSION 1.0.5
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators, Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Open Source Integrators, Sossia
COMMITTERS
COMMITTERSDaniel Reis, OCA Transbot, oca-travis, Weblate, OCA-git-bot, oca-ci, Simon COLLIN
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:12
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_pt
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
account_invoice_form Invoice: add l10_pt account.move data Inherits account.view_move_form
account_journal_form Account Journal: add l10_pt_vat account.journal data Inherits account.view_account_journal_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.tree account.vat.adjustment_norm tree New
vat_exempt_reason_tree VAT Exempt Reason List account.l10n_pt.vat.exempt.reason tree New
view_account_tax_form Account Tax: add Fiscal Zone account.tax field Inherits account.view_tax_form
Models touched (5)

New fields (1)
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
Public methods (0)

No public methods.

New fields (4)
  • active Boolean
    default=True
  • code Char
    required=True
  • name Char
    required=True translate=True
  • note Text
    string='Description'
Public methods (1)
  • name_get(self)

New fields (3)
  • l10npt_has_tax_exempt_lines Boolean
    compute='_compute_l10npt_has_tax_exempt_lines'
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    compute='_compute_l10npt_vat_exempt_reason' readonly=False store=True string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    help='Fields 40/41 of the VAT Statement' ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (1)
  • action_post(self)
    VAT Exemption reason is required if there are lines without tax

New fields (1)
  • l10n_pt_fiscal_zone Selection
    default='PT' string='Fiscal Zone' args: [('PT', 'Portugal Continental'), ('PT-AC', 'Açores'), ('PT-MA', 'Madeira')]
Public methods (0)

No public methods.

New fields (6)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • move_type Selection
    compute='_compute_move_type' selection=[('out_refund', 'Customer Credit Note'), ('in_refund', 'Vendor Credit Note')] store=True
  • name Char
    required=True
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/12.0/l10n_pt_vat
VERSION
VERSION 0.3.0
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Sossia
COMMITTERS
COMMITTERSDaniel Reis, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:25
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - http_routing
    - digest
    - l10n_pt
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
account_invoice_form Account Invoice account.invoice data Inherits account.invoice_form
account_invoice_supplier_form Account Invoice account.invoice data Inherits account.invoice_supplier_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.tree account.vat.adjustment_norm tree New
Models touched (4)

New fields (1)
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    help='Fields 40/41 of the VAT Statement' ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (0)

No public methods.

New fields (1)
  • l10npt_vat_exempt_reason Many2one → account.l10n_pt.vat.exempt.reason
    string='VAT Exempt Reason' args: 'account.l10n_pt.vat.exempt.reason'
Public methods (0)

No public methods.

New fields (1)
  • l10n_pt_fiscal_zone Selection
    default='PT' string='Fiscal Zone' args: [('PT', 'Portugal Continental'), ('PT-AC', 'Açores'), ('PT-MA', 'Madeira')]
Public methods (0)

No public methods.

New fields (5)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • name Char
    required=True
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-portugal
GIT
GIThttps://github.com/OCA/l10n-portugal.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-portugal/tree/8.0/l10n_pt_vat
VERSION
VERSION 0.0.3
CATEGORY
CATEGORYLocalisation/Portugal
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Sossia
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Sossia
COMMITTERS
COMMITTERSStéphane Bidoul (ACSONE), Pedro Castro Silva
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-portugal
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:11:27
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - report
    - analytic
    - board
    - edi
    - email_template
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
account_invoice_form Account Invoice account.invoice data Inherits account.invoice_form
account_invoice_supplier_form Account Invoice account.invoice data Inherits account.invoice_supplier_form
vat_adjustment_norm_view_form account.vat.adjustment_norm.form account.vat.adjustment_norm form New
vat_adjustment_norm_view_search account.vat.adjustment_norm.search account.vat.adjustment_norm search New
vat_adjustment_norm_view_tree account.vat.adjustment_norm.tree account.vat.adjustment_norm tree New
Models touched (2)

New fields (1)
  • vat_adjustment_norm_id Many2one → account.vat.adjustment_norm
    ondelete='restrict' string='VAT Adjustment Norm' args: 'account.vat.adjustment_norm'
Public methods (0)

No public methods.

New fields (5)
  • active Boolean
    default=True help='If the active field is set to False, it will allow you to hide the adjustment norm without removing it.' string='Active'
  • in_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to third party companies refunds.' string='Use on third party refunds'
  • name Char
    required=True string='Name'
  • note Text
    string='Description' translate=True
  • out_refunds Boolean
    help='If True, it will allow you to apply the adjustment norm to your company refunds.' string='Use on company refunds'
Public methods (0)

No public methods.