TIP: You can type at any time to perform a new search.
Ponto de venda adaptado a legislação Brasileira
l10n_br_pos · OCA/l10n-brazil
- Repository
- OCA/l10n-brazil · module folder · Try on Runboat
- Module version
- 1.0.1
- Category
- Point Of Sale
- Folder size
- 0.5 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/l10n-brazil
- Last tracking update
- 2026-08-07 08:09:14
- Authors
- Odoo Community Association (OCA), KMEE
- Maintainers
- Odoo Community Association (OCA), KMEE
- Committers
- Renato Lima, OCA-git-bot, oca-ci, Kaynnan Lemes
- Odoo dependencies
- Python dependencies
- erpbrasil.base, email-validator, num2words, phonenumbers, brazilcep
- System dependencies
- None
- Required by
- None
- Description
This module adds brazilian fields, validations and tax calc to point of sale.
Code Analysis ⓘ
Views touched (15)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
l10n_br_pos_cfop_form |
l10n_br_pos.cfop | l10n_br_account_product.cfop | form | Inherits l10n_br_account_product.l10n_br_account_product_cfop_form |
l10n_br_pos_invoice_form |
l10n_br_pos.invoice.form | account.invoice | form | Inherits l10n_br_account_product.l10n_br_account_product_nfe_form |
l10n_br_pos_product_fiscal_map_form_view |
l10n_br_pos.product_fiscal_map.form (in l10n_br_pos) | l10n_br_pos.product_fiscal_map | form | New |
l10n_br_pos_product_fiscal_map_search_view |
l10n_br_pos.product_fiscal_map.search (in l10n_br_pos) | l10n_br_pos.product_fiscal_map | search | New |
l10n_br_pos_product_fiscal_map_tree_view |
l10n_br_pos.product_fiscal_map.tree (in l10n_br_pos) | l10n_br_pos.product_fiscal_map | tree | New |
pos_order_line_devolucao_form_view |
pos.order.line.devolucao.form.view | pos.order.line | form | Inherits point_of_sale.view_pos_order_line_form |
pos_order_line_devolucao_tree_all_sales_line_view |
pos.order.line.devolucao.tree.all.sales.line.view | pos.order.line | tree | Inherits point_of_sale.view_pos_order_tree_all_sales_lines |
pos_order_line_devolucao_tree_view |
pos.order.line.devolucao.tree.view | pos.order.line | tree | Inherits point_of_sale.view_pos_order_line |
view_l10n_br_pos_pos_method_term_form |
l10n_br_pos pos.payment.method.form | pos.payment.method | form | Inherits point_of_sale.pos_payment_method_view_form |
view_l10n_br_pos_search |
l10n_br_pos.order.search | pos.order | search | Inherits point_of_sale.view_pos_order_filter |
view_pos_config_form |
pos.config.form (in l10n_br_pos) | pos.config | form | Inherits point_of_sale.pos_config_view_form |
view_pos_order_tree |
POS Order (hide invoice ID and show simplified fields) | pos.order | tree | Inherits point_of_sale.view_pos_order_tree |
view_pos_pos_form |
POS Order (remove invoice button) | pos.order | form | Inherits point_of_sale.view_pos_pos_form |
view_product_template_from |
product.template in (l10n_br_pos) | product.template | form | Inherits point_of_sale.product_template_form_view |
view_res_company_sat_form |
Res Company SAT | res.company | form | Inherits l10n_br_fiscal.fiscal_res_company_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (13)
New fields (1)
-
is_posBooleanhelp='Check this selection so that the CFOP can be used at the Point of Sale.'string='Allowed at the POS'
No public methods.
New fields (1)
-
pos_related_idMany2one → pos.ordercomodel_name='pos.order'index=Trueondelete='cascade'string='POS Fiscal Document'
-
onchange_pos_related_id(self)@api.onchange('pos_related_id')
New fields (17)
-
cfop_codeCharrelated='cfop_id.code' -
comment_idsMany2many → l10n_br_fiscal.commentcolumn1='pos_fiscal_map_id'column2='comment_id'comodel_name='l10n_br_fiscal.comment'relation='pos_fiscal_map_comment_rel'string='Comments' -
company_idMany2onerelated='pos_config_id.company_id' -
company_tax_frameworkSelectionrelated='company_id.tax_framework' -
fiscal_operation_idMany2onerelated='pos_config_id.out_pos_fiscal_operation_id' -
fiscal_tax_idsMany2many → l10n_br_fiscal.taxcolumn1='pos_fiscal_map_id'column2='fiscal_tax_id'comodel_name='l10n_br_fiscal.tax'relation='pos_fiscal_map_tax_rel'string='Fiscal Taxes' -
ind_finalSelectionrelated='partner_id.ind_final' -
nameChar -
ncm_codeCharrelated='ncm_id.code_unmasked' -
ncm_code_exceptionCharrelated='ncm_id.exception' -
partner_idMany2one → res.partnercomodel_name='res.partner' -
pos_config_idMany2one → pos.configcomodel_name='pos.config' -
price_unitFloatdefault=1readonly=True -
product_idMany2onerelated='product_tmpl_id.product_variant_id' -
product_tmpl_idMany2one → product.templatecomodel_name='product.template' -
quantityFloatdefault=1readonly=True -
tax_frameworkSelectionrelated='company_id.tax_framework'string='Tax Framework'
No public methods.
New fields (0)
No new fields.
Public methods (1)-
message_post_with_view(self, views_or_xmlid, **kwargs)
New fields (30)
-
activation_codeChar -
additional_dataTextstring='Aditional Information' -
anonymous_simplified_limitFloatdefault=10000digits='Account'help='Over this amount is not legally posible to create a Anonymous NFC-E / CF-e' -
ask_identityBooleandefault=Falsestring='Ask Identity on Payment' -
cashier_numberIntegercopy=False -
certificate_nfe_idMany2one → l10n_br_fiscal.certificatecomodel_name='l10n_br_fiscal.certificate'string='Digital certificate' -
cfop_idsOne2many → l10n_br_fiscal.cfopcomodel_name='l10n_br_fiscal.cfop'compute='_compute_allowed_tax'readonly=Truestring='Allowed CFOPs' -
cnpj_homologationCharsize=18 -
cnpj_software_houseCharsize=18 -
detailed_document_typeCharrelated='detailed_document_type_id.code'store=Truestring='Detailed document type' -
detailed_document_type_idMany2one → l10n_br_fiscal.document.typecomodel_name='l10n_br_fiscal.document.type' -
fiscal_printer_typeSelectionselection=[('BluetoothConnection', 'Bluetooth'), ('DummyConnection', 'Dummy'), ('FileConnection', 'File'), ('NetworkConnection', 'Network'), ('SerialConnection', 'Serial'), ('USBConnection', 'USB'), ('CupsConnection', 'Cups')] -
ie_homologationCharsize=16 -
iface_fiscal_via_proxyBooleanstring='Fiscal via IOT' -
iface_nfce_via_proxyBooleanhelp='NFC-E can be issued by cloud or IoT, not requiring Odoo server\n to be turned on'string='NFC-e via IOT' -
out_pos_fiscal_operation_idMany2one → l10n_br_fiscal.operationcomodel_name='l10n_br_fiscal.operation'default=<expr>string='Default Sales Operation' -
out_pos_fiscal_operation_line_idsOne2many → l10n_br_fiscal.operation.linecomodel_name='l10n_br_fiscal.operation.line'compute='_compute_allowed_tax'readonly=Truestring='Sales Operation Lines' -
partner_idMany2one → res.partnercomodel_name='res.partner' -
pos_fiscal_map_idsOne2many → l10n_br_pos.product_fiscal_mapcomodel_name='l10n_br_pos.product_fiscal_map'inverse_name='pos_config_id' -
printerSelectionselection=PRINTER -
printer_paramsCharstring='Printer parameters' -
refund_pos_fiscal_operation_idMany2one → l10n_br_fiscal.operationcomodel_name='l10n_br_fiscal.operation'default=<expr>string='Default Return Operation' -
sat_environmentSelectionrelated='company_id.environment_sat'store=True -
sat_pathChar -
save_identity_automaticBooleandefault=Falsehelp='Activating will create a new identity customer to the partners data'string='Save new client' -
session_satIntegerdefault=1string='Last Session Value' -
signature_satCharargs: 'Signature in CFe' -
simplified_document_typeCharrelated='simplified_document_type_id.code'store=Truestring='Simplified document type' -
simplified_document_type_idMany2one → l10n_br_fiscal.document.typecomodel_name='l10n_br_fiscal.document.type' -
simplified_invoice_limitFloatdefault=200000digits='Account'help='Over this amount is not legally posible to create a simplified invoice'
-
update_pos_fiscal_map(self) -
update_session_sat(self, config_id)@api.model
New fields (39)
-
additional_dataText -
authorization_dateDatetimecopy=False -
authorization_fileBinaryreadonly=True -
authorization_protocolCharreadonly=True -
cancel_dateDatetimecopy=False -
cancel_document_file_idMany2one → ir.attachmentcomodel_name='ir.attachment'copy=Falsereadonly=Truestring='Cancel XML' -
cancel_document_keyCharcopy=Falseindex=Truereadonly=Truestates={'draft': [('readonly', False)]}string='Cancel Key' -
cancel_document_session_numberCharcopy=Falsereadonly=Truestates={'draft': [('readonly', False)]}string='Cancel Session identifier number' -
cancel_fileBinaryreadonly=True -
cancel_protocolCharreadonly=True -
cnpj_cpfCharreadonly=Truerelated=Falsestates={'draft': [('readonly', False)]}string='CNPJ/CPF' -
comment_idsMany2many → l10n_br_fiscal.commentcolumn1='pos_order_id'column2='comment_id'comodel_name='l10n_br_fiscal.comment'relation='pos_order_fiscal_comment_rel'string='Comments' -
date_in_outDatetimecopy=Falsestring='Date Move' -
document_dateDatestring='Date' -
document_electronicBooleanrelated='document_type_id.electronic'store=Truestring='Electronic?' -
document_file_idMany2one → ir.attachmentcomodel_name='ir.attachment'copy=Falsereadonly=Truestring='XML' -
document_idMany2one → l10n_br_fiscal.documentcomodel_name='l10n_br_fiscal.document'copy=Falsereadonly=Truestring='Fiscal Document' -
document_keyCharcopy=Falseindex=Truereadonly=Truestates={'draft': [('readonly', False)]}string='Key' -
document_numberCharcopy=Falseindex=Truereadonly=Truestates={'draft': [('readonly', False)]} -
document_qrcode_signatureCharcopy=Falsestring='QrCode Signature' -
document_qrcode_urlCharcopy=Falsestring='QrCode URL' -
document_rps_numberCharcopy=Falseindex=Truereadonly=Truestates={'draft': [('readonly', False)]}string='Document Number' -
document_serieCharreadonly=Truestates={'draft': [('readonly', False)]}string='Serie Number' -
document_serie_idMany2one → l10n_br_fiscal.document.seriecomodel_name='l10n_br_fiscal.document.serie'domain="[('active', '=', True),('document_type_id', '=', document_type_id)]"readonly=Truestates={'draft': [('readonly', False)]} -
document_session_numberCharcopy=Falsestring='Session identifier number' -
document_typeCharrelated='document_type_id.code'store=True -
document_type_idMany2one → l10n_br_fiscal.document.typecomodel_name='l10n_br_fiscal.document.type'readonly=Truestates={'draft': [('readonly', False)]} -
edoc_purposeSelectiondefault='1'readonly=Trueselection=[('1', 'Normal'), ('2', 'Complementary'), ('3', 'Adjustment'), ('4', 'Goods return')]states={'draft': [('readonly', False)]}string='Goal' -
fiscal_coupon_dateDatetimeindex=Truereadonly=Truestring='Coupon Fiscal Date' -
fiscal_operation_idMany2one → l10n_br_fiscal.operationcomodel_name='l10n_br_fiscal.operation'default=_default_fiscal_operationdomain=<expr>readonly=Truestates={'draft': [('readonly', False)]} -
ieCharrelated='partner_id.inscr_est'string='State Tax Number/RG' -
ind_presSelectiondefault=NFCE_IND_PRES_DEFAULTreadonly=Truestates={'draft': [('readonly', False)]} -
legal_nameCharrelated='partner_id.legal_name'string='Legal Name' -
operation_nameCharcopy=False -
partner_shipping_idMany2one → res.partnercomodel_name='res.partner'string='Shipping Address' -
state_edocSelectioncopy=Falseindex=Trueselection=SITUACAO_EDOCstring='e-doc Status' -
status_codeCharcopy=False -
status_descriptionCharcopy=Falsestring='Status Name' -
status_nameCharcopy=False
-
cancel_order(self, result)@api.model -
refund(self) -
search_paid_order_ids(self, config_id, domain, limit, offset)@api.modelSearch for 'paid' orders that satisfy the given domain, limit and offset.
New fields (5)
-
comment_idsMany2many → l10n_br_fiscal.commentcolumn1='pos_order_line_id'column2='comment_id'comodel_name='l10n_br_fiscal.comment'relation='pos_order_line_fiscal_comment_rel'string='Comments' -
document_idMany2one → l10n_br_fiscal.documentcomodel_name='l10n_br_fiscal.document'readonly=Truerelated='order_id.document_id'store=True -
fiscal_tax_idsMany2many → l10n_br_fiscal.taxcolumn1='pos_order_line_id'column2='order_line_id'comodel_name='l10n_br_fiscal.tax'relation='pos_order_line_tax_rel'string='Fiscal Taxes' -
quantityFloatdepends=['qty']related='qty'string='Product Uom Quantity' -
uom_idMany2onedepends=['product_uom_id']related='product_uom_id'
No public methods.
New fields (0)
No new fields.
Public methods (1)-
update_pos_fiscal_map(self)@api.depends_context('company')
New fields (1)
-
pos_fiscal_map_idsOne2many → l10n_br_pos.product_fiscal_mapcomodel_name='l10n_br_pos.product_fiscal_map'inverse_name='product_tmpl_id'
-
create(self, vals_list)@api.model_create_multi -
update_pos_fiscal_map(self)@api.depends_context('company') -
write(self, vals)
New fields (5)
-
cnpj_software_houseCharsize=18string='CNPJ software house' -
environment_satSelectiondefault='homologation'selection=[('homologation', 'Homologation'), ('production', 'Production')]string='SAT environment' -
out_pos_fiscal_operation_idMany2one → l10n_br_fiscal.operationcomodel_name='l10n_br_fiscal.operation'string='Pos Out Fiscal Operation' -
refund_pos_fiscal_operation_idMany2one → l10n_br_fiscal.operationcomodel_name='l10n_br_fiscal.operation'string='Pos Refund Fiscal Operation' -
sign_software_houseTextstring='Software House Signature'
No public methods.
New fields (0)
No new fields.
Public methods (1)-
create_from_ui(self, partner)@api.model
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
Loading…