Bulgaria localization Configuration

l10n_bg_config
REPOSITORY
REPOSITORYOCA/l10n-bulgaria
GIT
GIThttps://github.com/OCA/l10n-bulgaria.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-bulgaria/tree/18.0/l10n_bg_config
VERSION
VERSION 8.0.5
CATEGORY
CATEGORYLocalization
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo Community Association (OCA), Rosen Vladimirov
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Rosen Vladimirov
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, rosenvladimirov
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-bulgaria
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:20
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/l10n-bulgaria:
    - l10n_bg_tariff_code
odoo/odoo:
    - base
    - account
    - base_setup
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_vat
    - l10n_bg
    - l10n_bg_ledger
    - stock_delivery
    - sale_stock
    - sale
    - sales_team
    - account_payment
    - payment
    - utm
    - stock_account
    - stock
    - barcodes_gs1_nomenclature
    - barcodes
    - delivery
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES xmltodict
requests
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
The **l10n_bg_config** module in Odoo simplifies the setup of Bulgarian localization by automatically installing all necessary modules, such as **l10n_bg**, **l10n_bg_reports_audit**, and **l10n_bg_report_theme**. It ensures a quick and seamless configuration, making the system ready for compliance with Bulgarian accounting and legal standards.

Code Analysis

Views touched (11)
XML IDNameModelTypeStatus
account_tag_view_form_code account.tag.view.form.code account.account.tag field Inherits account.account_tag_view_form
account_tag_view_tree_code account.tag.view.tree.code account.account.tag field Inherits account.account_tag_view_tree
l10n_bg_move_view_form account.move.form account.move xpath Inherits l10n_bg_ledger.l10n_bg_move_view_form
res_config_settings_view_form res.config.settings.view.form.inherit.account res.config.settings xpath Inherits base.res_config_settings_view_form
view_account_plugins_wizard_form account.plugins.wizard.form account.plugins.wizard form New
view_account_settings_preview_xml_file_form account.settings.preview.xml.file.form account.settings.preview.xml.file form New
view_account_settings_xml_file_form account.settings.xml.file.form account.settings.xml.file form New
view_company_form res.company.form.inherit.l10n_bg res.company xpath Inherits base.view_company_form
view_move_form account.move.form account.move xpath Inherits account.view_move_form
view_partner_form res.partner.property.form.l10n_bg res.partner xpath Inherits base.view_partner_form
view_res_partner_form_api_key res.partner.form.api_key res.partner xpath Inherits base.view_partner_form
Models touched (13)

New fields (1)
  • description Text
    translate=True
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (5)
  • l10n_bg_date Date
    copy=False args: 'Date of locale document'
  • l10n_bg_deal_date Date
    compute='_compute_l10n_bg_deal_date' copy=False store=True args: 'Date of deal'
  • l10n_bg_document_number Char
    compute='_compute_l10n_bg_document_number' copy=False index='trigram' inverse='_inverse_l10n_bg_document_number' search='_search_l10n_bg_document_number' store=True string='Document Number (BG)' tracking=True
  • l10n_bg_name Char
    readonly=False related='l10n_bg_document_number' store=True string='Number of locale document'
  • l10n_bg_name_value Char
    copy=False args: 'Number of locale document (stored)'
Public methods (0)

No public methods.

New fields (3)
  • company_id Many2one → res.company
    default=<expr> args: 'res.company', 'Company'
  • force_update Boolean
    help='Force update of plugins even if they are already installed'
  • plugin_line_ids One2many → account.plugins.wizard.line
    string='Plugins' args: 'account.plugins.wizard.line', 'wizard_id'
Public methods (2)
  • action_apply(self)
    Processes the installation and uninstallation of plugins based on the user's selection. The method identifies plugins marked for installation, as well as plugins marked for uninstallation and processes them accordingly. It performs the installation or uninstallation actions immediately. If force updating is enabled, it reloads the template settings. The method ensures at least one plugin is selected for installation or uninstallation. If no plugins are selected, an exception is raised. It returns an action to reload the client interface upon successful execution. :raises UserError: If no plugins are selected for installation or uninstallation or if an error occurs during processing. :return: A dictionary containing the action of type 'ir.actions.client' with a 'reload' tag. :rtype: dict
  • default_get(self, fields_list)
    @api.model

New fields (6)
  • name Text
    readonly=True
  • plugin_id Many2one → ir.module.module
    readonly=True string='Plugin' args: 'ir.module.module'
  • state Selection
    readonly=True args: [('uninstalled', 'Not installed'), ('installed', 'Installed'), ('to install', 'For installation'), ('to remove', 'To remove')]
  • to_install Boolean
    help='Mark for installation' string='Install'
  • to_uninstall Boolean
    help='Mark for uninstallation' string='Uninstall'
  • wizard_id Many2one → account.plugins.wizard
    string='Wizard' args: 'account.plugins.wizard'
Public methods (0)

No public methods.

New fields (2)
  • l10n_bg_config_file Binary
    string='Config xml File'
  • l10n_bg_config_file_preview Html
    sanitize=True sanitize_tags=True string='XML Preview'
Public methods (2)
  • default_get(self, fields_list)
    @api.model
  • save_xml(self)
    Save formatted XML as a downloadable file

New fields (1)
  • l10n_bg_config_file Binary
    string='Config xml File'
Public methods (1)
  • action_process_config_file(self)
    Process the uploaded XML config file from the binary field.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • is_l10n_bg_record Boolean
    compute='_compute_is_l10n_bg_record' readonly=False string='Is Bulgaria Record'
Public methods (1)
  • get_view(self, view_id=None, view_type='form', **options)
    @api.model

New fields (10)
  • is_l10n_bg_multilanguage Json
    compute='_compute_is_l10n_bg_multilanguage' help='Allows to set multilanguage in Bulgaria accounting' inverse='_inverse_is_l10n_bg_multilanguage' store=True string='Bulgaria - Multilanguage'
  • is_l10n_bg_record Boolean
    compute='_compute_is_l10n_bg_record' default=True inverse='_inverse_is_l10n_bg_record' store=True string='Bulgaria - Use Bulgaria Accounting'
  • is_l10n_bg_tax_report Boolean
    help='Allows to set tax report in Bulgaria accounting' string='Bulgaria - Tax Report'
  • is_l10n_bg_tax_report_with_vat Boolean
    string='Bulgaria - Tax Report with VAT'
  • l10n_bg_config_template Binary
    attachment=False args: 'Config Template'
  • l10n_bg_departament_code Integer
    args: 'Departament code'
  • l10n_bg_key Char
    readonly=False related='partner_id.l10n_bg_key'
  • l10n_bg_represent_contact_id Many2one → res.partner
    compute='_compute_l10n_bg_represent_contact_id' inverse='_inverse_l10n_bg_represent_contact_id' store=True string='Representative' args: 'res.partner'
  • l10n_bg_uic Char
    readonly=True related='partner_id.l10n_bg_uic'
  • l10n_bg_uic_type Selection
    readonly=True related='partner_id.l10n_bg_uic_type'
Public methods (2)
  • action_process_config_file(self)
  • xml_to_dict(self, xml_text)

New fields (20)
  • is_l10n_bg_multilanguage Json
    readonly=False related='company_id.is_l10n_bg_multilanguage'
  • is_l10n_bg_multilanguage_text Text
    compute='_compute_multilanguage_text' string='Multilanguage Settings'
  • is_l10n_bg_record Boolean
    readonly=False related='company_id.is_l10n_bg_record'
  • l10n_bg_config_template Binary
    readonly=False related='company_id.l10n_bg_config_template'
  • l10n_bg_key Char
    readonly=False related='company_id.partner_id.l10n_bg_key'
  • module_currency_rate_live_fix Boolean
    help='Live Currency Rate Fix for Bulgaria (EE) module' args: 'Live Currency Rate Fix (EE)'
  • module_currency_rate_update_bg_bnb Boolean
    help='Central currency rates downloaded from National Bank of Bulgaria' args: 'Download currency rates from Bulgaria National Bank (OCA)'
  • module_l10n_bg_address_extended Boolean
    help='Additional data in address like ' args: 'Additional data in address'
  • module_l10n_bg_assets Boolean
    help='Add rules for tax desperation base Bulgarian law (EE)' args: 'Bulgaria - Assets'
  • module_l10n_bg_city Boolean
    help='Upload cites, municipalities, states, villages and manastiries' args: 'Upload Bulgaria city'
  • module_l10n_bg_intrastat Boolean
    help='Generate XML files for Bulgaria intrastat (EE)' args: 'Bulgaria - Intrastat'
  • module_l10n_bg_intrastat_product Boolean
    help='Provide Intrastat Product Declaration. (OCA)' args: 'Bulgaria - Intrastat Product Declaration'
  • module_l10n_bg_multilang Boolean
    help='Change to multilingual support for fields without native configurations' args: 'Switch on multilanguage support'
  • module_l10n_bg_report_theme Boolean
    help='Add theme for Bulgaria reports' args: 'Bulgaria - Report Theme'
  • module_l10n_bg_report_vat Boolean
    help='Add tax reports and exports files for Bulgaria base on OCA report engine' args: 'Bulgaria - Tax Report export files (OCA)'
  • module_l10n_bg_reports_audit Boolean
    help='Provide base for Accounting TAX Audit reports for Bulgarian - NRA.' args: 'Bulgaria - Accounting TAX Audit reports'
  • module_l10n_bg_tax_offices Boolean
    help='Address and department of NRA Bulgaria added like partners to use when make a payment ot taxes.' args: 'NRA Bulgaria, tax offices and departments'
  • module_l10n_bg_uic_id_number Boolean
    help='Bulgarian registration codes base on OCA module partner_identification' args: 'Bulgarian multi register codes'
  • module_l10n_bg_vat_reports Boolean
    help='Add VAT reports and exports files for Bulgaria base on EE report engine' args: 'Bulgaria - VAT Reports export files (EE)'
  • module_partner_multilang Boolean
    help='Transliterate partner, city, street names ISO9 and other' args: 'Partner transliterate names'
Public methods (0)

No public methods.

New fields (1)
  • title_format Text
    default='%(title)s %(partner)s %(academic_title_display)s' help="Display format to use for partner belonging to this country.\n\nYou can use python-style string pattern with all the fields of the title (for example, use '%(title)s' to display the field 'title') plus\n%(partner)s: use the partner name\n%(academic_title_display)s: the code of the academic_title_display" string='Layout in Name views'
Public methods (1)
  • get_title_fields(self)

New fields (6)
  • l10n_bg_crypt_key Binary
    attachment=False help='Enter the key to decrypt the data. If not entered, a random key will be generated.' args: 'Crypt Key'
  • l10n_bg_key Char
    help='Enter the key to encrypt the data. If not entered, a random key will be generated.' args: 'Api Key'
  • l10n_bg_represent_contact_id Many2one → res.partner
    compute='_compute_l10n_bg_represent_contact_id' inverse='_inverse_l10n_bg_represent_contact_id' store=True string='Representative' args: 'res.partner'
  • l10n_bg_uic Char
    help='Unique identification code for the Bulgaria received from trade registry' string='Unique identification code'
  • l10n_bg_uic_type Selection
    help='Choice type of Bulgaria UID.' selection=_l10n_bg_uic_type() string='Type of Bulgaria UID'
  • type Selection
    ondelete={'represent': 'set null', 'agent': 'set null', 'tax': 'set null'} selection_add=[('represent', 'Company represent/manager'), ('agent', 'Company agent'), ('tax', 'Tax agent')]
Public methods (2)
  • get_api_key(self)
  • write(self, values)