Brazilian Localization Sale

l10n_br_sale
REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/18.0/l10n_br_sale
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSRaphaël Valyi, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-brazil
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:09
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_coa
    - l10n_br_fiscal
    - l10n_br_base
OCA/product-attribute:
    - uom_alias
odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - account_payment
    - account
    - onboarding
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - payment
    - utm
    - base_address_extended
    - contacts
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES erpbrasil.base
email-validator
num2words
phonenumbers
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Este módulo estende o módulo sale do Odoo para adaptá-lo as necessidades
brasileira, com este módulo você tem dados fiscal para faturamento e
geração dos documentos fiscais (NF-e, NFS-e, CF-e, NFC-e e etc.),
cálculo dos impostos e contribuições brasileiros (municipais, estaduais
e federal).

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_order_tree l10n_br_sale.order.form sale.order field Inherits sale.view_order_tree
l10n_br_sale_quotation_tree l10n_br_sale.quotation.form sale.order field Inherits sale.view_quotation_tree
l10n_br_sale_report l10n_br_sale.report sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_res_company_form l10n_br_sale.res.company.form res.company xpath Inherits l10n_br_fiscal.fiscal_res_company_form
l10n_br_sale_res_config_settings_form l10n_br_sale.res.config.settings.form res.config.settings xpath Inherits sale.res_config_settings_view_form
report_saleorder_document_l10n_br_sale report_saleorder_document_l10n_br_sale ir.ui.view qweb Inherits sale.report_saleorder_document
Models touched (5)

New fields (2)
  • copy_note Boolean
    default=False string='Copy Sale note on invoice'
  • sale_fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' string='Standard Sales Fiscal Operation'
Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    readonly=False related='company_id.copy_note' string='Copy notes in Fiscal documents'
Public methods (0)

No public methods.

New fields (6)
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' compute='_compute_comment_ids' relation='sale_order_comment_rel' store=True string='Comments'
  • company_country_id Many2one
    related='company_id.country_id'
  • copy_note Boolean
    default=_default_copy_note string='Copy Sale note on invoice'
  • discount_rate Float
    readonly=True string='Discount'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr> readonly=True
  • ind_pres Selection
    readonly=True
Public methods (0)

No public methods.

New fields (20)
  • cnae_id Many2one → l10n_br_fiscal.cnae
    comodel_name='l10n_br_fiscal.cnae' domain=<expr> string='CNAE Code'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_line_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_line_comment_rel' string='Comments'
  • delivery_costs Selection
    related='company_id.delivery_costs'
  • discount Float
    compute='_compute_discounts' inverse='_inverse_discount' precompute=True store=True
  • discount_fixed Boolean
    string='Fixed Discount?'
  • discount_value Monetary
    compute='_compute_discounts' inverse='_inverse_discount_value' precompute=True store=True
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' domain=<expr>
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' domain="[('fiscal_operation_id', '=', fiscal_operation_id), ('state', '=', 'approved')]" string='Operation Line'
  • fiscal_qty_delivered Float
    compute='_compute_qty_delivered' compute_sudo=True digits='Product Unit of Measure' store=True string='Fiscal Utm Qty Delivered'
  • fiscal_tax_ids Many2many → l10n_br_fiscal.tax
    column1='document_id' column2='fiscal_tax_id' comodel_name='l10n_br_fiscal.tax' relation='fiscal_sale_line_tax_rel' string='Fiscal Taxes'
  • force_compute_delivery_costs_by_total Boolean
    related='order_id.force_compute_delivery_costs_by_total'
  • partner_id Many2one → res.partner
    comodel_name='res.partner' related='order_id.partner_id' string='Partner'
  • price_gross Monetary
    compute='_compute_amount' precompute=True store=True string='Gross Amount'
  • price_subtotal Monetary
    compute_sudo=True
  • price_tax Monetary
    compute_sudo=True
  • quantity Float
    related='product_uom_qty' string='Product Uom Quantity'
  • tax_framework Selection
    related='order_id.company_id.tax_framework' string='Tax Framework'
  • uom_id Many2one
    related='product_uom'
  • user_discount_value Boolean
    compute='_compute_user_discount_value'
  • user_total_discount Boolean
    compute='_compute_user_total_discount'
Public methods (1)
  • need_change_discount_value(self)

New fields (18)
  • cest_id Many2one → l10n_br_fiscal.cest
    comodel_name='l10n_br_fiscal.cest' string='CEST'
  • cfop_id Many2one → l10n_br_fiscal.cfop
    comodel_name='l10n_br_fiscal.cfop' string='CFOP'
  • cofins_value Float
    digits='Account' string='COFINS Value'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' readonly=True string='Fiscal Operation'
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' readonly=True string='Fiscal Operation Line'
  • fiscal_type Selection
    selection=PRODUCT_FISCAL_TYPE string='Product Fiscal Type'
  • freight_value Float
    digits='Account'
  • icms_value Float
    digits='Account' string='ICMS Value'
  • icmsst_value Float
    digits='Account' string='ICMS ST Value'
  • ii_value Float
    digits='Account' string='II Value'
  • ind_pres Selection
    default=NFE_IND_PRES_DEFAULT selection=NFE_IND_PRES string='Buyer Presence'
  • insurance_value Float
    digits='Account'
  • ipi_value Float
    digits='Account' string='IPI Value'
  • nbm_id Many2one → l10n_br_fiscal.nbm
    comodel_name='l10n_br_fiscal.nbm' string='NBM'
  • ncm_id Many2one → l10n_br_fiscal.ncm
    comodel_name='l10n_br_fiscal.ncm' string='NCM'
  • other_value Float
    digits='Account'
  • pis_value Float
    digits='Account' string='PIS Value'
  • total_with_taxes Float
    digits='Account' string='Total with Taxes'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/17.0/l10n_br_sale
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSRaphaël Valyi, Weblate, OCA-git-bot, oca-ci, CristianoMafraJunior
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-brazil
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:03
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_coa
    - l10n_br_fiscal
    - l10n_br_base
OCA/product-attribute:
    - uom_alias
odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - account_payment
    - account
    - onboarding
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - payment
    - utm
    - base_address_extended
    - contacts
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES erpbrasil.base
email-validator
num2words
phonenumbers
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Este módulo estende o módulo sale do Odoo para adaptá-lo as necessidades
brasileira, com este módulo você tem dados fiscal para faturamento e
geração dos documentos fiscais (NF-e, NFS-e, CF-e, NFC-e e etc.),
cálculo dos impostos e contribuições brasileiros (municipais, estaduais
e federal).

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_order_tree l10n_br_sale.order.form sale.order field Inherits sale.view_order_tree
l10n_br_sale_quotation_tree l10n_br_sale.quotation.form sale.order field Inherits sale.view_quotation_tree
l10n_br_sale_report l10n_br_sale.report sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_res_company_form l10n_br_sale.res.company.form res.company xpath Inherits l10n_br_fiscal.fiscal_res_company_form
l10n_br_sale_res_config_settings_form l10n_br_sale.res.config.settings.form res.config.settings xpath Inherits sale.res_config_settings_view_form
report_saleorder_document_l10n_br_sale report_saleorder_document_l10n_br_sale ir.ui.view qweb Inherits sale.report_saleorder_document
Models touched (5)

New fields (2)
  • copy_note Boolean
    default=False string='Copy Sale note on invoice'
  • sale_fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' string='Standard Sales Fiscal Operation'
Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    readonly=False related='company_id.copy_note' string='Copy notes in Fiscal documents'
Public methods (0)

No public methods.

New fields (6)
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' compute='_compute_comment_ids' relation='sale_order_comment_rel' store=True string='Comments'
  • company_country_id Many2one
    related='company_id.country_id'
  • copy_note Boolean
    default=_default_copy_note string='Copy Sale note on invoice'
  • discount_rate Float
    readonly=True string='Discount'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr> readonly=True
  • ind_pres Selection
    readonly=True
Public methods (0)

No public methods.

New fields (20)
  • cnae_id Many2one → l10n_br_fiscal.cnae
    comodel_name='l10n_br_fiscal.cnae' domain=<expr> string='CNAE Code'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_line_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_line_comment_rel' string='Comments'
  • delivery_costs Selection
    related='company_id.delivery_costs'
  • discount Float
    compute='_compute_discounts' inverse='_inverse_discount' precompute=True store=True
  • discount_fixed Boolean
    string='Fixed Discount?'
  • discount_value Monetary
    compute='_compute_discounts' inverse='_inverse_discount_value' precompute=True store=True
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' domain=<expr>
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' domain="[('fiscal_operation_id', '=', fiscal_operation_id), ('state', '=', 'approved')]" string='Operation Line'
  • fiscal_qty_delivered Float
    compute='_compute_qty_delivered' compute_sudo=True digits='Product Unit of Measure' store=True string='Fiscal Utm Qty Delivered'
  • fiscal_tax_ids Many2many → l10n_br_fiscal.tax
    column1='document_id' column2='fiscal_tax_id' comodel_name='l10n_br_fiscal.tax' relation='fiscal_sale_line_tax_rel' string='Fiscal Taxes'
  • force_compute_delivery_costs_by_total Boolean
    related='order_id.force_compute_delivery_costs_by_total'
  • partner_id Many2one → res.partner
    comodel_name='res.partner' related='order_id.partner_id' string='Partner'
  • price_gross Monetary
    compute='_compute_amount' precompute=True store=True string='Gross Amount'
  • price_subtotal Monetary
    compute_sudo=True
  • price_tax Monetary
    compute_sudo=True
  • quantity Float
    related='product_uom_qty' string='Product Uom Quantity'
  • tax_framework Selection
    related='order_id.company_id.tax_framework' string='Tax Framework'
  • uom_id Many2one
    related='product_uom'
  • user_discount_value Boolean
    compute='_compute_user_discount_value'
  • user_total_discount Boolean
    compute='_compute_user_total_discount'
Public methods (1)
  • need_change_discount_value(self)

New fields (18)
  • cest_id Many2one → l10n_br_fiscal.cest
    comodel_name='l10n_br_fiscal.cest' string='CEST'
  • cfop_id Many2one → l10n_br_fiscal.cfop
    comodel_name='l10n_br_fiscal.cfop' string='CFOP'
  • cofins_value Float
    digits='Account' string='COFINS Value'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' readonly=True string='Fiscal Operation'
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' readonly=True string='Fiscal Operation Line'
  • fiscal_type Selection
    selection=PRODUCT_FISCAL_TYPE string='Product Fiscal Type'
  • freight_value Float
    digits='Account'
  • icms_value Float
    digits='Account' string='ICMS Value'
  • icmsst_value Float
    digits='Account' string='ICMS ST Value'
  • ii_value Float
    digits='Account' string='II Value'
  • ind_pres Selection
    default=NFE_IND_PRES_DEFAULT selection=NFE_IND_PRES string='Buyer Presence'
  • insurance_value Float
    digits='Account'
  • ipi_value Float
    digits='Account' string='IPI Value'
  • nbm_id Many2one → l10n_br_fiscal.nbm
    comodel_name='l10n_br_fiscal.nbm' string='NBM'
  • ncm_id Many2one → l10n_br_fiscal.ncm
    comodel_name='l10n_br_fiscal.ncm' string='NCM'
  • other_value Float
    digits='Account'
  • pis_value Float
    digits='Account' string='PIS Value'
  • total_with_taxes Float
    digits='Account' string='Total with Taxes'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/16.0/l10n_br_sale
VERSION
VERSION 8.1.1
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSRaphaël Valyi, Renato Lima, Weblate, OCA-git-bot, oca-ci, Marcel Savegnago, Antonio Neto, Antônio Neto, Wesley Oliveira, kaynnan, Felipe Motter
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-brazil
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:11:56
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_coa
    - l10n_br_fiscal
    - l10n_br_base
OCA/product-attribute:
    - uom_alias
odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - account_payment
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - payment
    - utm
    - base_address_extended
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES erpbrasil.base
email-validator
num2words
phonenumbers
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Este módulo estende o módulo sale do Odoo para adaptá-lo as necessidades
brasileira, com este módulo você tem dados fiscal para faturamento e
geração dos documentos fiscais (NF-e, NFS-e, CF-e, NFC-e e etc.),
cálculo dos impostos e contribuições brasileiros (municipais, estaduais
e federal).

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_order_tree l10n_br_sale.order.form sale.order field Inherits sale.view_order_tree
l10n_br_sale_quotation_tree l10n_br_sale.quotation.form sale.order field Inherits sale.view_quotation_tree
l10n_br_sale_report l10n_br_sale.report sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_res_company_form l10n_br_sale.res.company.form res.company xpath Inherits l10n_br_fiscal.fiscal_res_company_form
l10n_br_sale_res_config_settings_form l10n_br_sale.res.config.settings.form res.config.settings xpath Inherits sale.res_config_settings_view_form
report_saleorder_document_l10n_br_sale report_saleorder_document_l10n_br_sale ir.ui.view qweb Inherits sale.report_saleorder_document
Models touched (5)

New fields (2)
  • copy_note Boolean
    default=False string='Copy Sale note on invoice'
  • sale_fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' string='Standard Sales Fiscal Operation'
Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    readonly=False related='company_id.copy_note' string='Copy notes in Fiscal documents'
Public methods (0)

No public methods.

New fields (6)
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' compute='_compute_comment_ids' relation='sale_order_comment_rel' store=True string='Comments'
  • company_country_id Many2one
    related='company_id.country_id'
  • copy_note Boolean
    default=_default_copy_note string='Copy Sale note on invoice'
  • discount_rate Float
    readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} string='Discount'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr> readonly=True states={'draft': [('readonly', False)]}
  • ind_pres Selection
    readonly=True states={'draft': [('readonly', False)]}
Public methods (0)

No public methods.

New fields (20)
  • cnae_id Many2one → l10n_br_fiscal.cnae
    comodel_name='l10n_br_fiscal.cnae' domain=<expr> string='CNAE Code'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_line_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_line_comment_rel' string='Comments'
  • delivery_costs Selection
    related='company_id.delivery_costs'
  • discount Float
    compute='_compute_discounts' inverse='_inverse_discount' precompute=True store=True
  • discount_fixed Boolean
    string='Fixed Discount?'
  • discount_value Monetary
    compute='_compute_discounts' inverse='_inverse_discount_value' precompute=True store=True
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' domain=<expr>
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' domain="[('fiscal_operation_id', '=', fiscal_operation_id), ('state', '=', 'approved')]" string='Operation Line'
  • fiscal_qty_delivered Float
    compute='_compute_qty_delivered' compute_sudo=True digits='Product Unit of Measure' store=True string='Fiscal Utm Qty Delivered'
  • fiscal_tax_ids Many2many → l10n_br_fiscal.tax
    column1='document_id' column2='fiscal_tax_id' comodel_name='l10n_br_fiscal.tax' relation='fiscal_sale_line_tax_rel' string='Fiscal Taxes'
  • force_compute_delivery_costs_by_total Boolean
    related='order_id.force_compute_delivery_costs_by_total'
  • partner_id Many2one → res.partner
    comodel_name='res.partner' related='order_id.partner_id' string='Partner'
  • price_gross Monetary
    compute='_compute_amount' precompute=True store=True string='Gross Amount'
  • price_subtotal Monetary
    compute_sudo=True
  • price_tax Monetary
    compute_sudo=True
  • quantity Float
    related='product_uom_qty' string='Product Uom Quantity'
  • tax_framework Selection
    related='order_id.company_id.tax_framework' string='Tax Framework'
  • uom_id Many2one
    related='product_uom'
  • user_discount_value Boolean
    compute='_compute_user_discount_value'
  • user_total_discount Boolean
    compute='_compute_user_total_discount'
Public methods (1)
  • need_change_discount_value(self)

New fields (18)
  • cest_id Many2one → l10n_br_fiscal.cest
    comodel_name='l10n_br_fiscal.cest' string='CEST'
  • cfop_id Many2one → l10n_br_fiscal.cfop
    comodel_name='l10n_br_fiscal.cfop' string='CFOP'
  • cofins_value Float
    digits='Account' string='COFINS Value'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' readonly=True string='Fiscal Operation'
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' readonly=True string='Fiscal Operation Line'
  • fiscal_type Selection
    selection=PRODUCT_FISCAL_TYPE string='Product Fiscal Type'
  • freight_value Float
    digits='Account'
  • icms_value Float
    digits='Account' string='ICMS Value'
  • icmsst_value Float
    digits='Account' string='ICMS ST Value'
  • ii_value Float
    digits='Account' string='II Value'
  • ind_pres Selection
    default=NFE_IND_PRES_DEFAULT selection=NFE_IND_PRES string='Buyer Presence'
  • insurance_value Float
    digits='Account'
  • ipi_value Float
    digits='Account' string='IPI Value'
  • nbm_id Many2one → l10n_br_fiscal.nbm
    comodel_name='l10n_br_fiscal.nbm' string='NBM'
  • ncm_id Many2one → l10n_br_fiscal.ncm
    comodel_name='l10n_br_fiscal.ncm' string='NCM'
  • other_value Float
    digits='Account'
  • pis_value Float
    digits='Account' string='PIS Value'
  • total_with_taxes Float
    digits='Account' string='Total with Taxes'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/15.0/l10n_br_sale
VERSION
VERSION 1.6.0
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSRaphaël Valyi, Weblate, OCA-git-bot, oca-ci, Marcel Savegnago
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-brazil
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:31
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-payment:
    - account_due_list
OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_coa
    - l10n_br_fiscal
    - l10n_br_base
    - l10n_br_account_due_list
odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - payment
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - utm
    - base_address_city
    - base_address_extended
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES erpbrasil.base
email-validator
num2words
phonenumbers
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_report l10n_br_sale.report sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_res_company_form l10n_br_sale.res.company.form res.company xpath Inherits l10n_br_fiscal.fiscal_res_company_form
l10n_br_sale_res_config_settings_form l10n_br_sale.res.config.settings.form res.config.settings xpath Inherits sale.res_config_settings_view_form
report_saleorder_document_l10n_br_sale report_saleorder_document_l10n_br_sale ir.ui.view qweb Inherits sale.report_saleorder_document
view_l10n_br_sale_partner_filter l10n_br_sale.partner.filter sale.order field Inherits sale.view_sales_order_filter
Models touched (7)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • fiscal_proxy_partner_shipping_id Many2one
    readonly=False related='partner_shipping_id' string='Fiscal Partner Shipping'
Public methods (0)

No public methods.

New fields (2)
  • copy_note Boolean
    default=False string='Copy Sale note on invoice'
  • sale_fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' string='Standard Sales Fiscal Operation'
Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    readonly=False related='company_id.copy_note' string='Copy notes in Fiscal documents'
Public methods (0)

No public methods.

New fields (13)
  • amount_freight_value Monetary
    inverse='_inverse_amount_freight'
  • amount_insurance_value Monetary
    inverse='_inverse_amount_insurance'
  • amount_other_value Monetary
    inverse='_inverse_amount_other'
  • cnpj_cpf Char
    related='partner_invoice_id.cnpj_cpf' string='CNPJ/CPF'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_comment_rel' string='Comments'
  • company_country_id Many2one
    related='company_id.country_id'
  • copy_note Boolean
    default=_default_copy_note string='Copy Sale note on invoice'
  • discount_rate Float
    readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} string='Discount'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr> readonly=True states={'draft': [('readonly', False)]}
  • ie Char
    related='partner_invoice_id.inscr_est' string='State Tax Number/RG'
  • ind_pres Selection
    readonly=True states={'draft': [('readonly', False)]}
  • legal_name Char
    related='partner_invoice_id.legal_name' string='Legal Name'
  • operation_name Char
    copy=False
Public methods (1)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model

New fields (22)
  • cnae_id Many2one → l10n_br_fiscal.cnae
    comodel_name='l10n_br_fiscal.cnae' domain=<expr> string='CNAE Code'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_line_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_line_comment_rel' string='Comments'
  • delivery_costs Selection
    related='company_id.delivery_costs'
  • discount Float
    compute='_compute_discounts' store=True
  • discount_fixed Boolean
    string='Fixed Discount?'
  • discount_value Monetary
    compute='_compute_discounts' store=True
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr>
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' domain="[('fiscal_operation_id', '=', fiscal_operation_id), ('state', '=', 'approved')]" string='Operation Line'
  • fiscal_qty_delivered Float
    compute='_compute_qty_delivered' compute_sudo=True digits='Product Unit of Measure' store=True string='Fiscal Utm Qty Delivered'
  • fiscal_tax_ids Many2many → l10n_br_fiscal.tax
    column1='document_id' column2='fiscal_tax_id' comodel_name='l10n_br_fiscal.tax' relation='fiscal_sale_line_tax_rel' string='Fiscal Taxes'
  • force_compute_delivery_costs_by_total Boolean
    related='order_id.force_compute_delivery_costs_by_total'
  • ind_final Selection
    related='order_id.ind_final'
  • partner_id Many2one → res.partner
    comodel_name='res.partner' related='order_id.partner_id' string='Partner'
  • price_gross Monetary
    compute='_compute_amount' compute_sudo=True string='Gross Amount'
  • price_subtotal Monetary
    compute_sudo=True
  • price_tax Monetary
    compute_sudo=True
  • price_total Monetary
    compute_sudo=True
  • quantity Float
    depends=['product_uom_qty'] related='product_uom_qty' string='Product Uom Quantity'
  • tax_framework Selection
    related='order_id.company_id.tax_framework' string='Tax Framework'
  • uom_id Many2one
    depends=['product_uom'] related='product_uom'
  • user_discount_value Boolean
    compute='_compute_user_discount_value'
  • user_total_discount Boolean
    compute='_compute_user_total_discount'
Public methods (1)
  • need_change_discount_value(self)

New fields (18)
  • cest_id Many2one → l10n_br_fiscal.cest
    comodel_name='l10n_br_fiscal.cest' string='CEST'
  • cfop_id Many2one → l10n_br_fiscal.cfop
    comodel_name='l10n_br_fiscal.cfop' string='CFOP'
  • cofins_value Float
    digits='Account' string='COFINS Value'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' readonly=True string='Fiscal Operation'
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' readonly=True string='Fiscal Operation Line'
  • fiscal_type Selection
    selection=PRODUCT_FISCAL_TYPE string='Product Fiscal Type'
  • freight_value Float
    digits='Account'
  • icms_value Float
    digits='Account' string='ICMS Value'
  • icmsst_value Float
    digits='Account' string='ICMS ST Value'
  • ii_value Float
    digits='Account' string='II Value'
  • ind_pres Selection
    default=NFE_IND_PRES_DEFAULT selection=NFE_IND_PRES string='Buyer Presence'
  • insurance_value Float
    digits='Account'
  • ipi_value Float
    digits='Account' string='IPI Value'
  • nbm_id Many2one → l10n_br_fiscal.nbm
    comodel_name='l10n_br_fiscal.nbm' string='NBM'
  • ncm_id Many2one → l10n_br_fiscal.ncm
    comodel_name='l10n_br_fiscal.ncm' string='NCM'
  • other_value Float
    digits='Account'
  • pis_value Float
    digits='Account' string='PIS Value'
  • total_with_taxes Float
    digits='Account' string='Total with Taxes'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/14.0/l10n_br_sale
VERSION
VERSION 4.0.0
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSRaphaël Valyi, OCA Transbot, Luis Felipe Miléo, oca-travis, Weblate, OCA-git-bot, Magno Costa, oca-ci, Marcel Savegnago, Neto, felipemotter, Antônio Neto, Felipe, Felipe Motter, Jorge Juarez
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-brazil
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:40:53
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-payment:
    - account_due_list
OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_coa
    - l10n_br_fiscal
    - l10n_br_base
    - l10n_br_account_due_list
odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - payment
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - utm
    - base_address_city
    - base_address_extended
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES erpbrasil.base
email-validator
num2words
phonenumbers
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_report l10n_br_sale.report sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_res_company_form l10n_br_sale.res.company.form res.company xpath Inherits l10n_br_fiscal.fiscal_res_company_form
l10n_br_sale_res_config_settings_form l10n_br_sale.res.config.settings.form res.config.settings xpath Inherits sale.res_config_settings_view_form
report_saleorder_document_l10n_br_sale report_saleorder_document_l10n_br_sale ir.ui.view qweb Inherits sale.report_saleorder_document
view_l10n_br_sale_partner_filter l10n_br_sale.partner.filter sale.order field Inherits sale.view_sales_order_filter
Models touched (7)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • fiscal_proxy_partner_shipping_id Many2one
    readonly=False related='partner_shipping_id' string='Fiscal Proxy Partner Shipping'
Public methods (0)

No public methods.

New fields (2)
  • copy_note Boolean
    default=False string='Copy Sale note on invoice'
  • sale_fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' string='Standard Sales Fiscal Operation'
Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    readonly=False related='company_id.copy_note' string='Copy notes in Fiscal documents'
Public methods (0)

No public methods.

New fields (13)
  • amount_freight_value Monetary
    inverse='_inverse_amount_freight'
  • amount_insurance_value Monetary
    inverse='_inverse_amount_insurance'
  • amount_other_value Monetary
    inverse='_inverse_amount_other'
  • cnpj_cpf Char
    related='partner_invoice_id.cnpj_cpf' string='CNPJ/CPF'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_comment_rel' string='Comments'
  • company_country_id Many2one
    related='company_id.country_id'
  • copy_note Boolean
    default=_default_copy_note string='Copy Sale note on invoice'
  • discount_rate Float
    readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} string='Discount'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr> readonly=True states={'draft': [('readonly', False)]}
  • ie Char
    related='partner_invoice_id.inscr_est' string='State Tax Number/RG'
  • ind_pres Selection
    readonly=True states={'draft': [('readonly', False)]}
  • legal_name Char
    related='partner_invoice_id.legal_name' string='Legal Name'
  • operation_name Char
    copy=False
Public methods (1)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model

New fields (22)
  • cnae_id Many2one → l10n_br_fiscal.cnae
    comodel_name='l10n_br_fiscal.cnae' domain=<expr> string='CNAE Code'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_line_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_line_comment_rel' string='Comments'
  • delivery_costs Selection
    related='company_id.delivery_costs'
  • discount Float
    compute='_compute_discounts' store=True
  • discount_fixed Boolean
    string='Fixed Discount?'
  • discount_value Monetary
    compute='_compute_discounts' store=True
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr>
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' domain="[('fiscal_operation_id', '=', fiscal_operation_id), ('state', '=', 'approved')]" string='Operation Line'
  • fiscal_qty_delivered Float
    compute='_compute_qty_delivered' compute_sudo=True digits='Product Unit of Measure' store=True string='Fiscal Utm Qty Delivered'
  • fiscal_tax_ids Many2many → l10n_br_fiscal.tax
    column1='document_id' column2='fiscal_tax_id' comodel_name='l10n_br_fiscal.tax' relation='fiscal_sale_line_tax_rel' string='Fiscal Taxes'
  • force_compute_delivery_costs_by_total Boolean
    related='order_id.force_compute_delivery_costs_by_total'
  • ind_final Selection
    related='order_id.ind_final'
  • partner_id Many2one → res.partner
    comodel_name='res.partner' related='order_id.partner_id' string='Partner'
  • price_gross Monetary
    compute='_compute_amount' compute_sudo=True string='Gross Amount'
  • price_subtotal Monetary
    compute_sudo=True
  • price_tax Monetary
    compute_sudo=True
  • price_total Monetary
    compute_sudo=True
  • quantity Float
    depends=['product_uom_qty'] related='product_uom_qty' string='Product Uom Quantity'
  • tax_framework Selection
    related='order_id.company_id.tax_framework' string='Tax Framework'
  • uom_id Many2one
    depends=['product_uom'] related='product_uom'
  • user_discount_value Boolean
    compute='_compute_user_discount_value'
  • user_total_discount Boolean
    compute='_compute_user_total_discount'
Public methods (1)
  • need_change_discount_value(self)

New fields (18)
  • cest_id Many2one → l10n_br_fiscal.cest
    comodel_name='l10n_br_fiscal.cest' string='CEST'
  • cfop_id Many2one → l10n_br_fiscal.cfop
    comodel_name='l10n_br_fiscal.cfop' string='CFOP'
  • cofins_value Float
    digits='Account' string='COFINS Value'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' readonly=True string='Fiscal Operation'
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' readonly=True string='Fiscal Operation Line'
  • fiscal_type Selection
    selection=PRODUCT_FISCAL_TYPE string='Product Fiscal Type'
  • freight_value Float
    digits='Account'
  • icms_value Float
    digits='Account' string='ICMS Value'
  • icmsst_value Float
    digits='Account' string='ICMS ST Value'
  • ii_value Float
    digits='Account' string='II Value'
  • ind_pres Selection
    default=NFE_IND_PRES_DEFAULT selection=NFE_IND_PRES string='Buyer Presence'
  • insurance_value Float
    digits='Account'
  • ipi_value Float
    digits='Account' string='IPI Value'
  • nbm_id Many2one → l10n_br_fiscal.nbm
    comodel_name='l10n_br_fiscal.nbm' string='NBM'
  • ncm_id Many2one → l10n_br_fiscal.ncm
    comodel_name='l10n_br_fiscal.ncm' string='NCM'
  • other_value Float
    digits='Account'
  • pis_value Float
    digits='Account' string='PIS Value'
  • total_with_taxes Float
    digits='Account' string='Total with Taxes'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/12.0/l10n_br_sale
VERSION
VERSION 7.1.2
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSRaphaël Valyi, Renato Lima, GitHub, Luis Felipe Mileo, oca-travis, Weblate, OCA-git-bot, Magno Costa, Gabriel Cardoso de Faria, Marcel Savegnago, Luis Malta, Neto, felipemotter, Renan Hiroki Bastos, Ygor Carvalho
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-brazil
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:15
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-payment:
    - account_due_list
OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_coa
    - l10n_br_fiscal
    - l10n_br_base
    - l10n_br_account_due_list
odoo/odoo:
    - sale_management
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - payment
    - account
    - product
    - decimal_precision
    - uom
    - analytic
    - portal
    - http_routing
    - digest
    - account_cancel
    - base_address_city
    - base_address_extended
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES erpbrasil.assinatura
erpbrasil.base
num2words
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_report l10n_br_sale.report sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_res_company_form l10n_br_sale.res.company.form res.company xpath Inherits l10n_br_fiscal.fiscal_res_company_form
l10n_br_sale_res_config_settings_form l10n_br_sale.res.config.settings.form res.config.settings xpath Inherits sale.res_config_settings_view_form
report_saleorder_document_l10n_br_sale report_saleorder_document_l10n_br_sale ir.ui.view qweb Inherits sale.report_saleorder_document
view_l10n_br_sale_partner_filter l10n_br_sale.partner.filter sale.order field Inherits sale.view_sales_order_filter
Models touched (5)

New fields (3)
  • copy_note Boolean
    default=False string='Copy Sale note on invoice'
  • delivery_costs Selection
    default='total' help='Define if costs of Insurance, Freight and Other Costs should be informed in Line or Total.' selection=[('line', _('By Line')), ('total', _('By Total'))] string='Delivery costs should be define in Line or Total.'
  • sale_fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' string='Operação Fiscal Padrão de Vendas'
Public methods (0)

No public methods.

New fields (2)
  • copy_note Boolean
    readonly=False related='company_id.copy_note' string='Copy notes in Fiscal documents'
  • delivery_costs Selection
    readonly=False related='company_id.delivery_costs'
Public methods (0)

No public methods.

New fields (12)
  • amount_freight_value Monetary
    inverse='_inverse_amount_freight'
  • amount_insurance_value Monetary
    inverse='_inverse_amount_insurance'
  • amount_other_value Monetary
    inverse='_inverse_amount_other'
  • cnpj_cpf Char
    related='partner_id.cnpj_cpf' string='CNPJ/CPF'
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_comment_rel' string='Comments'
  • copy_note Boolean
    default=_default_copy_note string='Copiar Observação no documentos fiscal'
  • delivery_costs Selection
    related='company_id.delivery_costs'
  • discount_rate Float
    readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} string='Discount'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr> readonly=True states={'draft': [('readonly', False)]}
  • ie Char
    related='partner_id.inscr_est' string='State Tax Number/RG'
  • ind_pres Selection
    readonly=True states={'draft': [('readonly', False)]}
  • legal_name Char
    related='partner_id.legal_name' string='Legal Name'
Public methods (3)
  • action_invoice_create(self, grouped=False, final=False)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
  • onchange_discount_rate(self)
    @api.onchange('discount_rate')

New fields (13)
  • comment_ids Many2many → l10n_br_fiscal.comment
    column1='sale_line_id' column2='comment_id' comodel_name='l10n_br_fiscal.comment' relation='sale_order_line_comment_rel' string='Comments'
  • delivery_costs Selection
    related='company_id.delivery_costs'
  • discount_fixed Boolean
    string='Fixed Discount?'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' default=_default_fiscal_operation domain=<expr>
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' domain="[('fiscal_operation_id', '=', fiscal_operation_id), ('state', '=', 'approved')]" string='Operation Line'
  • fiscal_qty_delivered Float
    compute='_compute_qty_delivered' compute_sudo=True digits=dp.get_precision('Product Unit of Measure') store=True string='Fiscal Utm Qty Delivered'
  • fiscal_tax_ids Many2many → l10n_br_fiscal.tax
    column1='document_id' column2='fiscal_tax_id' comodel_name='l10n_br_fiscal.tax' relation='fiscal_sale_line_tax_rel' string='Fiscal Taxes'
  • ind_final Selection
    related='order_id.ind_final'
  • partner_id Many2one → res.partner
    comodel_name='res.partner' related='order_id.partner_id' string='Partner'
  • price_gross Monetary
    compute='_compute_amount' string='Gross Amount'
  • quantity Float
    depends=['product_uom_qty'] related='product_uom_qty' string='Product Uom Quantity'
  • tax_framework Selection
    related='order_id.company_id.tax_framework' selection=TAX_FRAMEWORK string='Tax Framework'
  • uom_id Many2one
    depends=['product_uom'] related='product_uom'
Public methods (0)

No public methods.

New fields (18)
  • cest_id Many2one → l10n_br_fiscal.cest
    comodel_name='l10n_br_fiscal.cest' string='CEST'
  • cfop_id Many2one → l10n_br_fiscal.cfop
    comodel_name='l10n_br_fiscal.cfop' string='CFOP'
  • cofins_value Float
    digits=dp.get_precision('Account') string='COFINS Value'
  • fiscal_operation_id Many2one → l10n_br_fiscal.operation
    comodel_name='l10n_br_fiscal.operation' readonly=True string='Fiscal Operation'
  • fiscal_operation_line_id Many2one → l10n_br_fiscal.operation.line
    comodel_name='l10n_br_fiscal.operation.line' readonly=True string='Fiscal Operation Line'
  • fiscal_type Selection
    selection=PRODUCT_FISCAL_TYPE string='Product Fiscal Type'
  • freight_value Float
    digits=dp.get_precision('Account') string='Freight Value'
  • icms_value Float
    digits=dp.get_precision('Account') string='ICMS Value'
  • icmsst_value Float
    digits=dp.get_precision('Account') string='ICMS ST Value'
  • ii_value Float
    digits=dp.get_precision('Account') string='II Value'
  • ind_pres Selection
    default=NFE_IND_PRES_DEFAULT selection=NFE_IND_PRES string='Buyer Presence'
  • insurance_value Float
    digits=dp.get_precision('Account') string='Insurance Value'
  • ipi_value Float
    digits=dp.get_precision('Account') string='IPI Value'
  • nbm_id Many2one → l10n_br_fiscal.nbm
    comodel_name='l10n_br_fiscal.nbm' string='NBM'
  • ncm_id Many2one → l10n_br_fiscal.ncm
    comodel_name='l10n_br_fiscal.ncm' string='NCM'
  • other_value Float
    digits=dp.get_precision('Account') string='Other Value'
  • pis_value Float
    digits=dp.get_precision('Account') string='PIS Value'
  • total_with_taxes Float
    digits=dp.get_precision('Account') string='Total with Taxes'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/10.0/l10n_br_sale
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSRenato Lima, oca-travis, OCA-git-bot, Renato, Magno Costa
WEBSITE
WEBSITEhttp://odoo-brasil.org
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:19:54
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-fiscal-rule:
    - account_fiscal_position_rule_sale
    - account_fiscal_position_rule
OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_generic
    - l10n_br_base
odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - report
    - analytic
    - web_planner
    - l10n_generic_coa
    - sale
    - sales_team
    - procurement
    - account_cancel
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES num2words
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_res_config_form l10n_br_sale.res.config.form sale.config.settings group Inherits sale.view_sales_config
l10n_br_sale_view_order_product_search l10n_br_sale.report.search sale.report filter Inherits sale.view_order_product_search
view_l10n_br_sale_company_form l10n_br_account.company res.company field Inherits base.view_company_form
view_l10n_br_sale_partner_filter l10n_br_sale.partner.filter sale.order field Inherits sale.view_sales_order_filter
Models touched (5)

New fields (1)
  • sale_fiscal_category_id Many2one → l10n_br_account.fiscal.category
    domain="[('journal_type', '=', 'sale')]" args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal Padrão de Vendas'
Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    default=_get_default_copy_note args: 'Copiar Observações nos Documentos Fiscais'
Public methods (1)
  • set_sale_defaults(self)
    @api.multi

New fields (12)
  • amount_discount Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The discount amount.' store=True string='Desconto (-)'
  • amount_gross Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The discount amount.' store=True string='Vlr. Bruto'
  • amount_tax Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The tax amount.' store=True string='Taxes'
  • amount_total Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The total amount.' store=True string='Total'
  • amount_untaxed Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The amount without tax.' store=True string='Untaxed Amount' track_visibility='always'
  • cnpj_cpf Char
    related='partner_id.cnpj_cpf' string='CNPJ/CPF'
  • copy_note Boolean
    args: 'Copiar Observação no documentos fiscal'
  • discount_rate Float
    readonly=True states={'draft': [('readonly', False)]} args: 'Desconto'
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    default=_default_fiscal_category domain="[('type', '=', 'output'), ('journal_type', '=', 'sale'),\n ('state', '=', 'approved')]" readonly=True states={'draft': [('readonly', False)]} args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal'
  • fiscal_position_id Many2one
    domain="[('fiscal_category_id', '=', fiscal_category_id)]" readonly=True states={'draft': [('readonly', False)]}
  • ie Char
    related='partner_id.inscr_est' string='Inscrição Estadual'
  • legal_name Char
    related='partner_id.legal_name' string='Razão Social'
Public methods (3)
  • onchange_discount_rate(self)
    @api.onchange('discount_rate')
  • onchange_fiscal(self)
    @api.multi@api.onchange('fiscal_category_id', 'partner_invoice_id')
    Método chamado ao mudar a categoria fiscal para refinir a posição fiscal de acordo com as regras de posição fiscal
  • onchange_partner_shipping_id(self)
    @api.multi@api.onchange('partner_shipping_id', 'partner_id')
    Trigger the change of fiscal position when the shipping address is modified.

New fields (5)
  • discount_value Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Vlr. Desc. (-)'
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    domain="[('type', '=', 'output'), ('journal_type', '=', 'sale')]" readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal'
  • fiscal_position_id Many2one → account.fiscal.position
    domain="[('fiscal_category_id','=',fiscal_category_id)]" oldname='fiscal_position' readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} args: 'account.fiscal.position', 'Fiscal Position'
  • price_gross Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Vlr. Bruto'
  • price_subtotal Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Subtotal'
Public methods (2)
  • onchange_fiscal(self)
    @api.multi@api.onchange('fiscal_category_id', 'fiscal_position_id')
  • product_id_change(self)
    @api.multi@api.onchange('product_id')

New fields (2)
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    readonly=True args: 'l10n_br_account.fiscal.category', 'Fiscal Category'
  • fiscal_position_id Many2one → account.fiscal.position
    readonly=True args: 'account.fiscal.position', 'Fiscal Position'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/9.0/l10n_br_sale
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSrenato
WEBSITE
WEBSITEhttp://odoo-brasil.org
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:15:19
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-fiscal-rule:
    - account_fiscal_position_rule
    - account_fiscal_position_rule_sale
OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_base
OCA/server-tools:
    - web_context_tunnel
odoo/odoo:
    - l10n_br
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - report
    - analytic
    - web_tip
    - web_planner
    - account_cancel
    - l10n_generic_coa
    - sale
    - sales_team
    - procurement
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES num2words
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_res_config_form l10n_br_sale.res.config.form sale.config.settings separator Inherits sale.view_sales_config
l10n_br_sale_view_order_product_search l10n_br_sale.report.search sale.report filter Inherits sale.view_order_product_search
view_l10n_br_sale_partner_filter l10n_br_sale.partner.filter sale.order field Inherits sale.view_sales_order_filter
Models touched (6)

New fields (1)
  • sale_fiscal_category_id Many2one → l10n_br_account.fiscal.category
    domain="[('journal_type', '=', 'sale')]" args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal Padrão Compras'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    default=_get_default_copy_note args: 'Copiar Observações nos Documentos Fiscais'
Public methods (1)
  • set_sale_defaults(self, cr, uid, ids, context=None)

New fields (13)
  • amount_discount Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The discount amount.' store=True string='Desconto (-)'
  • amount_gross Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The discount amount.' store=True string='Vlr. Bruto'
  • amount_tax Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The tax amount.' store=True string='Taxes'
  • amount_total Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The total amount.' store=True string='Total'
  • amount_untaxed Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The amount without tax.' store=True string='Untaxed Amount' track_visibility='always'
  • cnpj_cpf Char
    related='partner_id.cnpj_cpf' string='CNPJ/CPF'
  • copy_note Boolean
    args: 'Copiar Observação no documentos fiscal'
  • discount_rate Float
    readonly=True states={'draft': [('readonly', False)]} args: 'Desconto'
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    default=_default_fiscal_category domain="[('type', '=', 'output'), ('journal_type', '=', 'sale'),\n ('state', '=', 'approved')]" readonly=True states={'draft': [('readonly', False)]} args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal'
  • fiscal_position Many2one → account.fiscal.position
    domain="[('fiscal_category_id', '=', fiscal_category_id)]" readonly=True states={'draft': [('readonly', False)]} args: 'account.fiscal.position', 'Fiscal Position'
  • ie Char
    related='partner_id.inscr_est' string='Inscrição Estadual'
  • invoiced_rate Float
    compute='_invoiced_rate' string='Invoiced'
  • legal_name Char
    related='partner_id.legal_name' string='Razão Social'
Public methods (2)
  • onchange_discount_rate(self)
    @api.onchange('discount_rate')
  • onchange_fiscal(self)
    @api.onchange('fiscal_category_id')
    Método chamado ao mudar a categoria fiscal para refinir a posição fiscal de acordo com as regras de posição fiscal

New fields (5)
  • discount_value Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Vlr. Desc. (-)'
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    domain="[('type', '=', 'output'), ('journal_type', '=', 'sale')]" readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal'
  • fiscal_position Many2one → account.fiscal.position
    domain="[('fiscal_category_id','=',fiscal_category_id)]" readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} args: 'account.fiscal.position', 'Fiscal Position'
  • price_gross Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Vlr. Bruto'
  • price_subtotal Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Subtotal'
Public methods (2)
  • onchange_fiscal(self)
    @api.onchange('fiscal_category_id', 'fiscal_position')
  • product_id_change(self, pricelist, product, qty=0, uom=False, qty_uos=0, uos=False, name='', partner_id=False, lang=False, update_tax=True, date_order=False, packaging=False, fiscal_position=False, flag=False)
    @api.multi

New fields (2)
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    readonly=True args: 'l10n_br_account.fiscal.category', 'Fiscal Category'
  • fiscal_position Many2one → account.fiscal.position
    readonly=True args: 'account.fiscal.position', 'Fiscal Position'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/8.0/l10n_br_sale
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSStéphane Bidoul, Raphaël Valyi, Renato Lima, Luis Felipe Mileo, Magno Costa - Akretion, renato, Hendrix Costa
WEBSITE
WEBSITEhttp://odoo-brasil.org
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:11:20
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-fiscal-rule:
    - account_fiscal_position_rule
    - account_fiscal_position_rule_sale
OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_base
OCA/server-tools:
    - web_context_tunnel
odoo/odoo:
    - l10n_br
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - report
    - analytic
    - board
    - edi
    - email_template
    - account_chart
    - account_cancel
    - sale
    - sales_team
    - web_kanban_sparkline
    - account_voucher
    - procurement
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES num2words
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order field Inherits sale.view_order_form
l10n_br_sale_res_config_form l10n_br_sale.res.config.form sale.config.settings separator Inherits sale.view_sales_config
l10n_br_sale_view_order_product_search l10n_br_sale.report.search sale.report filter Inherits sale.view_order_product_search
view_l10n_br_sale_partner_filter l10n_br_sale.partner.filter sale.order field Inherits sale.view_sales_order_filter
Models touched (6)

New fields (1)
  • sale_fiscal_category_id Many2one → l10n_br_account.fiscal.category
    domain="[('journal_type', '=', 'sale')]" args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal Padrão Compras'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • copy_note Boolean
    default=_get_default_copy_note args: 'Copiar Observações nos Documentos Fiscais'
Public methods (1)
  • set_sale_defaults(self, cr, uid, ids, context=None)

New fields (13)
  • amount_discount Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The discount amount.' store=True string='Desconto (-)'
  • amount_gross Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The discount amount.' store=True string='Vlr. Bruto'
  • amount_tax Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The tax amount.' store=True string='Taxes'
  • amount_total Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The total amount.' store=True string='Total'
  • amount_untaxed Float
    compute='_amount_all_wrapper' digits=dp.get_precision('Account') help='The amount without tax.' store=True string='Untaxed Amount' track_visibility='always'
  • cnpj_cpf Char
    related='partner_id.cnpj_cpf' string='CNPJ/CPF'
  • copy_note Boolean
    args: 'Copiar Observação no documentos fiscal'
  • discount_rate Float
    readonly=True states={'draft': [('readonly', False)]} args: 'Desconto'
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    default=_default_fiscal_category domain="[('type', '=', 'output'), ('journal_type', '=', 'sale'),\n ('state', '=', 'approved')]" readonly=True states={'draft': [('readonly', False)]} args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal'
  • fiscal_position Many2one → account.fiscal.position
    domain="[('fiscal_category_id', '=', fiscal_category_id)]" readonly=True states={'draft': [('readonly', False)]} args: 'account.fiscal.position', 'Fiscal Position'
  • ie Char
    related='partner_id.inscr_est' string='Inscrição Estadual'
  • invoiced_rate Float
    compute='_invoiced_rate' string='Invoiced'
  • legal_name Char
    related='partner_id.legal_name' string='Razão Social'
Public methods (2)
  • onchange_discount_rate(self)
    @api.onchange('discount_rate')
  • onchange_fiscal(self)
    @api.onchange('fiscal_category_id')
    Método chamado ao mudar a categoria fiscal para refinir a posição fiscal de acordo com as regras de posição fiscal

New fields (5)
  • discount_value Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Vlr. Desc. (-)'
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    domain="[('type', '=', 'output'), ('journal_type', '=', 'sale')]" readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} args: 'l10n_br_account.fiscal.category', 'Categoria Fiscal'
  • fiscal_position Many2one → account.fiscal.position
    domain="[('fiscal_category_id','=',fiscal_category_id)]" readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} args: 'account.fiscal.position', 'Fiscal Position'
  • price_gross Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Vlr. Bruto'
  • price_subtotal Float
    compute='_amount_line' digits=dp.get_precision('Sale Price') string='Subtotal'
Public methods (2)
  • onchange_fiscal(self)
    @api.onchange('fiscal_category_id', 'fiscal_position')
  • product_id_change(self, pricelist, product, qty=0, uom=False, qty_uos=0, uos=False, name='', partner_id=False, lang=False, update_tax=True, date_order=False, packaging=False, fiscal_position=False, flag=False)
    @api.multi

New fields (2)
  • fiscal_category_id Many2one → l10n_br_account.fiscal.category
    readonly=True args: 'l10n_br_account.fiscal.category', 'Fiscal Category'
  • fiscal_position Many2one → account.fiscal.position
    readonly=True args: 'account.fiscal.position', 'Fiscal Position'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/7.0/l10n_br_sale
VERSION
VERSION 7.0
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSAkretion, OpenERP Brasil
MAINTAINERS
MAINTAINERSAkretion, OpenERP Brasil
COMMITTERS
COMMITTERSRaphaël Valyi, Renato Lima, Luis Felipe Mileo, Danimar Ribeiro, mileo, Magno, cma, Jaime A. Sánchez Hidalgo
WEBSITE
WEBSITEhttp://openerpbrasil.org
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:07:13
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-fiscal-rule:
    - account_fiscal_position_rule
    - account_fiscal_position_rule_sale
OCA/l10n-brazil:
    - l10n_br_account
    - l10n_br_base
    - l10n_br_product
OCA/server-tools:
    - web_context_tunnel
odoo/odoo:
    - l10n_br
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - process
    - decimal_precision
    - mail
    - analytic
    - board
    - edi
    - email_template
    - account_chart
    - sale
    - account_voucher
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Brazilian Localization for Sale

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
l10n_br_sale_order_form l10n_br_sale.order.form sale.order group Inherits sale.view_order_form
l10n_br_sale_res_config_form l10n_br_sale.res.config.form sale.config.settings separator Inherits sale.view_sales_config
l10n_br_sale_view_order_product_search l10n_br_sale.report.search sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_view_order_product_tree l10n_br_sale.report.tree sale.report field Inherits sale.view_order_product_tree
l10n_br_sale_view_shop_form l10n_br_sale.sale.shop.form sale.shop field Inherits sale.view_shop_form
view_order_form1 account_fiscal_postion_rule_form_view_order_form1 sale.order field Inherits account_fiscal_position_rule_sale.view_order_form1
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • set_sale_defaults(self, cr, uid, ids, context=None)

New fields (0)

No new fields.

Public methods (4)
  • onchange_address_id(self, cr, uid, ids, partner_invoice_id, partner_shipping_id, partner_id, shop_id=None, context=None, **kwargs)
  • onchange_discount_rate(self, cr, uid, ids, discount_rate)
  • onchange_fiscal_category_id(self, cr, uid, ids, partner_id, partner_invoice_id=False, shop_id=False, fiscal_category_id=False, context=None)
  • onchange_shop_id(self, cr, uid, ids, shop_id=None, context=None, partner_id=None, partner_invoice_id=None, partner_shipping_id=None, **kwargs)

New fields (0)

No new fields.

Public methods (4)
  • l10n_br_sale_prepare_order_line_invoice_line(self, cr, uid, line, result, account_id=False, context=None)
  • onchange_fiscal_category_id(self, cr, uid, ids, partner_id, partner_invoice_id=False, shop_id=False, product_id=False, fiscal_category_id=False, context=None)
  • onchange_fiscal_position(self, cr, uid, ids, partner_id, partner_invoice_id=False, shop_id=False, product_id=False, fiscal_position=False, fiscal_category_id=False)
  • product_id_change(self, cr, uid, ids, pricelist, product, qty=0, uom=False, qty_uos=0, uos=False, name='', partner_id=False, lang=False, update_tax=True, date_order=False, packaging=False, fiscal_position=False, flag=False, context=None)

New fields (0)

No new fields.

Public methods (1)
  • init(self, cr)

New fields (0)

No new fields.

Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-brazil
GIT
GIThttps://github.com/OCA/l10n-brazil.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-brazil/tree/6.1/l10n_br_sale
VERSION
VERSION 0.6
CATEGORY
CATEGORYLocalisation
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSAkretion, OpenERP Brasil
MAINTAINERS
MAINTAINERSAkretion, OpenERP Brasil
COMMITTERS
COMMITTERSRaphaël Valyi, Renato Lima, Leonardo Santagada
WEBSITE
WEBSITEhttp://openerpbrasil.org
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:04:05
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-fiscal-rule:
    - account_fiscal_position_rule_sale
    - account_fiscal_position_rule
    - account_fiscal_position_rule_stock
    - account_product_fiscal_classification
OCA/l10n-brazil:
    - l10n_br_stock
    - l10n_br_account
    - l10n_br_base
odoo/odoo:
    - account
    - base_setup
    - base
    - product
    - process
    - decimal_precision
    - analytic
    - board
    - edi
    - email_template
    - mail
    - base_tools
    - sale
    - stock
    - procurement
    - delivery
    - purchase
    - l10n_br
    - account_chart
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Brazilian Localization for Sale

Code Analysis

Views touched (9)
XML IDNameModelTypeStatus
l10n_br_sale_view_order_form l10n_br_sale.order.form sale.order xpath Inherits sale.view_order_form
l10n_br_sale_view_order_form5 l10n_br_sale.order.form5 sale.order xpath Inherits sale.view_order_form
l10n_br_sale_view_order_product_search l10n_br_sale.report.search sale.report filter Inherits sale.view_order_product_search
l10n_br_sale_view_order_product_tree l10n_br_sale.report.tree sale.report field Inherits sale.view_order_product_tree
l10n_br_sale_view_shop_form l10n_br_sale.sale.shop sale.shop field Inherits sale.view_shop_form
view_l10n_br_sale_order_form1 l10n_br_sale.order.form1 sale.order field Inherits sale.view_order_form
view_l10n_br_sale_order_form2 l10n_br_sale.order.form2 sale.order field Inherits account_fiscal_position_rule_sale.view_order_form3
view_l10n_br_sale_order_form3 l10n_br_sale.order.form3 sale.order field Inherits sale.view_order_form
view_l10n_br_sale_order_form4 l10n_br_sale.order.form4 sale.order field Inherits account_fiscal_position_rule_sale.view_order_form2
Models touched (0)

No models found for this module.