TIP: You can type at any time to perform a new search.
Brazilian Localization Base
l10n_br_base · OCA/l10n-brazil
- Repository
- OCA/l10n-brazil · module folder · Try on Runboat
- Module version
- 1.1.0
- Category
- Localization
- Folder size
- 2.34 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/l10n-brazil
- Last tracking update
- 2026-08-07 09:06:24
- Authors
- Akretion, Odoo Community Association (OCA)
- Maintainers
- Akretion, Odoo Community Association (OCA)
- Committers
- Raphaël Valyi, Weblate, OCA-git-bot, oca-ci, Marcel Savegnago
- Odoo dependencies
- Python dependencies
- email-validator, erpbrasil.base, num2words, phonenumbers
- System dependencies
- None
- Required by
- l10n_br_crm, l10n_br_fiscal, l10n_br_hr, l10n_br_resource, l10n_br_zip
- Description
Este é o módulo 'raiz' da localização brasileira. Ele traz adaptações nos modelos do módulo `base` do Odoo como Parceiros, Empresas e Endereços: - Campo CNPJ e CPF com formatação e validação destes campos; - Campo de Inscrição Estadual com validação; - Formatação dos campos de endereço; - Código do Banco Central e Siscomex para países; - Código do IBGE para estados e municípios; - Lista dos Bancos brasileiros; - Contas bancarias e chaves PIX dos parceiros; - Lista dos municípios brasileiros. Se trata de um módulo muito simples e maduro. Existem alguns outros módulos simples que dependem apenas desse módulo ou quase como `l10n_br_crm` ou `l10n_br_portal`. Mas se você quiser emitir ou apenas gerenciar algum tipo de documento fiscal como NF-e ou NFS-e, o próximo módulo que você deve olhar é o `l10n_br_fiscal` que é porém um módulo muito mais complexo.
Code Analysis ⓘ
Views touched (14)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
l10n_br_base_bank_form |
l10n_br_base.bank.form | res.bank | form | Inherits base.view_res_bank_form |
l10n_br_base_bank_tree |
l10n_br_base.bank.tree | res.bank | tree | Inherits base.view_res_bank_tree |
l10n_br_base_partner_contact_form |
l10n_br_base.res.partner.contact.form | res.partner | form | Inherits base.view_partner_form |
l10n_br_base_partner_form |
l10n_br_base.res.partner.form | res.partner | form | Inherits base.view_partner_form |
l10n_br_base_res_city_tree |
l10n_br_base.res.city.tree | res.city | tree | Inherits base_address_extended.view_city_tree |
l10n_br_base_res_company_form |
l10n_br_base.res.company.form | res.company | form | Inherits base.view_company_form |
l10n_br_base_res_company_tree |
l10n_br_base.res.company.tree | res.company | tree | Inherits base.view_company_tree |
l10n_br_base_res_config_settings_form |
res.config.settings.form | res.config.settings | form | Inherits base_setup.res_config_settings_view_form |
l10n_br_base_res_partner_address |
l10n_br_base.res.partner.address | res.partner | form | New |
l10n_br_base_res_partner_filter |
l10n_br_base.res.partner.filter | res.partner | Inherits base.view_res_partner_filter | |
view_l10n_br_base_partner_bank_form |
view_l10n_br_base.partner.bank.form | res.partner.bank | form | Inherits base.view_partner_bank_form |
view_l10n_br_base_partner_bank_tree |
view_l10n_br_base.partner.bank.tree | res.partner.bank | tree | Inherits base.view_partner_bank_tree |
view_l10n_br_country_form |
res.country | res.country | form | Inherits base.view_country_form |
view_l10n_br_country_state_form |
res.country.state | res.country.state | form | Inherits base.view_country_state_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (12)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (10)
-
city_idMany2one → res.citycomodel_name='res.city'domain="[('state_id', '=', state_id)]"string='City of Address' -
cnpj_cpf_strippedCharcompute='_compute_cnpj_cpf_stripped'help='CNPJ/CPF without special characters'index=Truestore=Truestring='CNPJ/CPF Stripped' -
country_idMany2one → res.countrycomodel_name='res.country'default=<expr> -
districtCharsize=32 -
l10n_br_ie_codeCharsize=17string='State Tax Number' -
l10n_br_im_codeCharsize=18string='Municipal Tax Number' -
l10n_br_isuf_codeCharsize=18string='Suframa' -
legal_nameCharhelp='Used in fiscal documents'size=128 -
state_tax_number_idsOne2many → state.tax.numberscomodel_name='state.tax.numbers'inverse_name='partner_id'string='Others State Tax Number' -
vatChar
-
search(self, domain, offset=0, limit=None, order=None, count=False)@api.modelin the case of a simple search with only OR terms and a vat ilike condition, inject the possibility to match the cnpj_cpf_stripped field.
New fields (4)
-
code_bcCharhelp='Brazilian Bank Code ex.: 001 is the code of Banco do Brasil'size=3string='Brazilian Bank Code' -
compe_memberBooleandefault=Falsestring='COMPE Member' -
ispb_numberCharsize=8string='ISPB Number' -
short_nameChar
No public methods.
New fields (3)
-
anp_codeCharsize=4string='ANP Code' -
ibge_codeCharindex=Truesize=7string='IBGE Code' -
siafi_codeCharsize=4string='SIAFI Code'
No public methods.
New fields (10)
-
city_idMany2onecompute='_compute_address'domain="[('state_id', '=', state_id)]"inverse='_inverse_city_id' -
country_idMany2onedefault=<expr> -
districtCharcompute='_compute_address'inverse='_inverse_district' -
l10n_br_ie_codeCharcompute='_compute_address'inverse='_inverse_l10n_br_ie_code' -
l10n_br_im_codeCharcompute='_compute_address'inverse='_inverse_l10n_br_im_code' -
l10n_br_isuf_codeCharcompute='_compute_address'inverse='_inverse_l10n_br_isuf_code' -
legal_nameCharcompute='_compute_address'inverse='_inverse_legal_name' -
state_tax_number_idsOne2many → state.tax.numberscomodel_name='state.tax.numbers'compute='_compute_address'inverse='_inverse_state_tax_number_ids'inverse_name='company_id'string='State Tax Numbers' -
street_nameCharcompute='_compute_address'inverse='_inverse_street_name' -
street_numberCharcompute='_compute_address'inverse='_inverse_street_number'
-
write(self, values)Overriden so we can change the currency_id of base.main_company and specific demo companies even if constraints would normally prevent it.
New fields (4)
-
allow_cnpj_multi_ieBooleanconfig_parameter='l10n_br_base.allow_cnpj_multi_ie'default=Falsestring='Multiple partners with the same CNPJ' -
disable_cpf_cnpj_validationBooleanconfig_parameter='l10n_br_base.disable_cpf_cnpj_validation'default=False args: 'Disable CPF and CNPJ validation' -
disable_ie_validationBooleanconfig_parameter='l10n_br_base.disable_ie_validation'default=False args: 'Disable IE validation' -
module_l10n_br_zipBooleanstring='Use Brazilian postal service API'
No public methods.
New fields (4)
-
bc_codeCharsize=4string='BC Code' -
ibge_codeCharsize=4string='IBGE Code' -
nationality_codeCharsize=2 -
siscomex_codeCharsize=3
No public methods.
New fields (1)
-
ibge_codeCharsize=2string='IBGE Code'
No public methods.
New fields (4)
-
is_br_partnerBooleancompute='_compute_br_partner'help='Is it a Brazilian partner?' -
l10n_br_rg_codeCharstring='RG' -
pix_key_idsOne2many → res.partner.pixcomodel_name='res.partner.pix'help='Keys for Brazilian instant payment (pix)'inverse_name='partner_id'string='Pix Keys' -
show_l10n_brBooleancompute='_compute_show_l10n_br'help='Should display Brazilian localization fields?'
-
copy(self, default=None) -
create_company(self)
New fields (9)
-
acc_numberCharrequired=Falsesize=64string='Account Number' -
acc_number_digCharsize=8string='Account Digit' -
bank_account_typeSelectiondefault='01'selection=BANK_ACCOUNT_TYPE -
bra_bank_bicCharhelp='Last part of BIC/Swift Code.'size=3string='BIC/Swift Final Code.' -
bra_numberCharsize=8string='Bank Branch' -
bra_number_digCharsize=8string='Bank Branch Digit' -
company_country_idMany2one → res.countrycomodel_name='res.country'related='company_id.country_id'string='Company Country' -
partner_pix_idsOne2many → res.partner.pixcomodel_name='res.partner.pix'inverse_name='partner_bank_id'string='Pix Keys' -
transactional_acc_typeSelectionhelp='Type of transactional account, classification used in the Brazilian instant payment system (PIX)'selection=TRANSACTIONAL_ACCOUNT_TYPEstring='Account Type'
No public methods.
New fields (5)
-
keyCharhelp='PIX Addressing key'required=True -
key_typeSelectionrequired=Trueselection=KEY_TYPESstring='Type' -
partner_bank_idMany2one → res.partner.bankcomodel_name='res.partner.bank'domain="[('partner_id', '=', partner_id)]"string='Bank Account' -
partner_idMany2one → res.partnercomodel_name='res.partner'ondelete='cascade'required=Truestring='Partner' -
sequenceIntegerdefault=10
-
check_vals(self, vals) -
create(self, vals_list)@api.model_create_multi -
write(self, vals)
New fields (4)
-
company_idMany2one → res.companycomodel_name='res.company'ondelete='cascade'string='Company' -
l10n_br_ie_codeCharrequired=Truesize=16string='State Tax Number' -
partner_idMany2one → res.partnercomodel_name='res.partner'ondelete='cascade'string='Partner' -
state_idMany2one → res.country.statecomodel_name='res.country.state'required=Truestring='State'
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…