Romania - E-invoicing

l10n_ro_edi
REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/19.0/l10n_ro_edi
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Localizations/EDI
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo
MAINTAINERS
MAINTAINERSOdoo
COMMITTERS
COMMITTERSOdoo Translation Bot, Anh Thao Pham (pta), Gorash, Ruben Gomes, luvi, Maximilien (malb), Yosua Nicolaus, Antoine Boonen, Dylan Kiss (dyki), Jinane Maksoud, Harsh Modi, asno-odoo, Claire (clbr), Antoine Dupuis, aizu-odoo, Smit Patel, Anton Romanova (roan), MaximeNoirhomme, Krzysztof Magusiak (krma), nape-odoo, mojem, Yassien Ghoniem, igbe, Laurent Smet (LAS), Ai Lin Zuccarello (aizu), shzi-odoo, Mauricio Rubio Haro
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:51:43
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account_edi_ubl_cii
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_ro
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
E-invoice implementation for Romania
    

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
account_move_form_inherit_l10n_ro_edi account.move.form.inherit.l10n_ro_edi account.move xpath Inherits account.view_move_form
in_invoice_tree_inherit_l10n_ro_edi in.invoice.list.inherit.l10n_ro_edi account.move field Inherits account.view_in_invoice_tree
l10n_ro_edi_view_account_invoice_filter account.invoice.select.inherit.l10n.ro.edi account.move xpath Inherits account.view_account_invoice_filter
out_credit_note_tree_inherit_l10n_ro_edi out.credit.note.list.inherit.l10n_ro_edi account.move field Inherits account.view_out_credit_note_tree
out_invoice_tree_inherit_l10n_ro_edi out.invoice.list.inherit.l10n_ro_edi account.move field Inherits account.view_out_invoice_tree
res_config_settings_form_inherit_l10n_ro_edi res.config.settings.form.inherit.l10n.ro.edi res.config.settings xpath Inherits account.res_config_settings_view_form
Models touched (8)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (3)
  • l10n_ro_edi_document_ids One2many → l10n_ro_edi.document
    comodel_name='l10n_ro_edi.document' inverse_name='invoice_id'
  • l10n_ro_edi_index Char
    copy=False readonly=True string='E-Factura Index'
  • l10n_ro_edi_state Selection
    compute='_compute_l10n_ro_edi_state' help='- Not indexed: Invoice index was not received on time due to a server timeout\n - Sent: Successfully sent to the SPV, waiting for validation\n - Validated: Sent & validated by the SPV\n - Refused: Validation error from the SPV\n ' selection=[('invoice_not_indexed', 'Not indexed'), ('invoice_sent', 'Sent'), ('invoice_refused', 'Refused'), ('invoice_validated', 'Validated')] store=True string='E-Factura Status'
Public methods (1)
  • action_l10n_ro_edi_fetch_invoices(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (9)
  • attachment Binary
    readonly=True
  • datetime Datetime
    default=fields.Datetime.now readonly=True required=True
  • invoice_id Many2one → account.move
    comodel_name='account.move' readonly=True required=True
  • key_certificate Char
    readonly=True
  • key_download Char
    readonly=True string='Document download key'
  • key_signature Char
    readonly=True
  • message Char
    readonly=True
  • show_fetch_status_button Boolean
    compute='_compute_show_fetch_status_button'
  • state Selection
    help='Sent -> Successfully sent to the SPV, waiting for validation.\n Validated -> Sent & validated by the SPV.\n Refused -> Sent & refused by the SPV.\n ' readonly=True required=True selection=[('invoice_sent', 'Sent'), ('invoice_refused', 'Error'), ('invoice_validated', 'Validated')] string='E-Factura Status'
Public methods (2)
  • action_l10n_ro_edi_download_attachment(self)
    Download the sent attachment in case if no status have been received from ANAF. Otherwise, download the received successful signature XML file from E-Factura.
  • action_l10n_ro_edi_fetch_status(self)
    Fetch the latest response from E-Factura about the XML sent

New fields (9)
  • l10n_ro_edi_access_expiry_date Date
    string='Access Token Expiry Date'
  • l10n_ro_edi_access_token Char
    string='Access Token'
  • l10n_ro_edi_anaf_imported_inv_journal_id Many2one → account.journal
    comodel_name='account.journal' compute='_compute_l10n_ro_edi_anaf_imported_inv_journal' domain="[('type', '=', 'purchase')]" readonly=False store=True string='Select journal for SPV imported bills'
  • l10n_ro_edi_callback_url Char
    compute='_compute_l10n_ro_edi_callback_url'
  • l10n_ro_edi_client_id Char
    string='eFactura Client ID'
  • l10n_ro_edi_client_secret Char
    string='Client Secret'
  • l10n_ro_edi_refresh_expiry_date Date
    string='Refresh Token Expiry Date'
  • l10n_ro_edi_refresh_token Char
    string='Refresh Token'
  • l10n_ro_edi_test_env Boolean
    default=True string='Use Test Environment'
Public methods (0)

No public methods.

New fields (9)
  • l10n_ro_edi_access_expiry_date Date
    readonly=False related='company_id.l10n_ro_edi_access_expiry_date'
  • l10n_ro_edi_access_token Char
    readonly=False related='company_id.l10n_ro_edi_access_token'
  • l10n_ro_edi_anaf_imported_inv_journal_id Many2one
    readonly=False related='company_id.l10n_ro_edi_anaf_imported_inv_journal_id'
  • l10n_ro_edi_callback_url Char
    related='company_id.l10n_ro_edi_callback_url'
  • l10n_ro_edi_client_id Char
    readonly=False related='company_id.l10n_ro_edi_client_id'
  • l10n_ro_edi_client_secret Char
    readonly=False related='company_id.l10n_ro_edi_client_secret'
  • l10n_ro_edi_refresh_expiry_date Date
    readonly=False related='company_id.l10n_ro_edi_refresh_expiry_date'
  • l10n_ro_edi_refresh_token Char
    readonly=False related='company_id.l10n_ro_edi_refresh_token'
  • l10n_ro_edi_test_env Boolean
    readonly=False related='company_id.l10n_ro_edi_test_env'
Public methods (1)
  • button_l10n_ro_edi_generate_token(self)
    Redirects to controllers/main.py ~ `authorize` method

New fields (1)
  • invoice_edi_format Selection
    selection_add=[('ciusro', 'Romania (CIUS RO)')]
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/18.0/l10n_ro_edi
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Localizations/EDI
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo
MAINTAINERS
MAINTAINERSOdoo
COMMITTERS
COMMITTERSOdoo Translation Bot, Xavier Morel, Jairo Llopis, Moens Alexandre, Anh Thao Pham (pta), Gorash, odoo, Jigar Vaghela, Maximilien (malb), Gauthier Wala (gawa), Claire Bretton (clbr), Yosua Nicolaus, Antoine Boonen, Dylan Kiss (dyki), Jinane Maksoud, Mohamed GadAlrab, Louis (wil), asno-odoo, Claire (clbr), Antoine Dupuis, aizu-odoo, Smit Patel, MaximeNoirhomme, nape-odoo, mojem, Laurent Smet (LAS), Ai Lin Zuccarello (aizu), shzi-odoo, Mauricio Rubio Haro
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:25:56
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account_edi_ubl_cii
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_ro
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
E-invoice implementation for Romania
    

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
account_move_form_inherit_l10n_ro_edi account.move.form.inherit.l10n_ro_edi account.move xpath Inherits account.view_move_form
in_invoice_tree_inherit_l10n_ro_edi in.invoice.list.inherit.l10n_ro_edi account.move field Inherits account.view_in_invoice_tree
l10n_ro_edi_view_account_invoice_filter account.invoice.select.inherit.l10n.ro.edi account.move xpath Inherits account.view_account_invoice_filter
out_credit_note_tree_inherit_l10n_ro_edi out.credit.note.list.inherit.l10n_ro_edi account.move field Inherits account.view_out_credit_note_tree
out_invoice_tree_inherit_l10n_ro_edi out.invoice.list.inherit.l10n_ro_edi account.move field Inherits account.view_out_invoice_tree
res_config_settings_form_inherit_l10n_ro_edi res.config.settings.form.inherit.l10n.ro.edi res.config.settings xpath Inherits account.res_config_settings_view_form
Models touched (8)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • l10n_ro_edi_attachment_id Many2one → ir.attachment
    comodel_name='ir.attachment' copy=False
  • l10n_ro_edi_document_ids One2many → l10n_ro_edi.document
    comodel_name='l10n_ro_edi.document' inverse_name='invoice_id'
  • l10n_ro_edi_index Char
    copy=False readonly=True string='E-Factura Index'
  • l10n_ro_edi_state Selection
    compute='_compute_l10n_ro_edi_state' help='- Sent: Successfully sent to the SPV, waiting for validation\n - Validated: Sent & validated by the SPV\n - Error: Sending error or validation error from the SPV' selection=[('invoice_sent', 'Sent'), ('invoice_validated', 'Validated')] store=True string='E-Factura Status'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (8)
  • attachment_id Many2one → ir.attachment
    comodel_name='ir.attachment'
  • datetime Datetime
    default=fields.Datetime.now required=True
  • invoice_id Many2one → account.move
    comodel_name='account.move' required=True
  • key_certificate Char
  • key_loading Char
    string='E-Factura Index'
  • key_signature Char
  • message Char
  • state Selection
    help='Sent -> Successfully sent to the SPV, waiting for validation.\n Validated -> Sent & validated by the SPV.\n Error -> Sending error or validation error from the SPV.' required=True selection=[('invoice_sent', 'Sent'), ('invoice_sending_failed', 'Error'), ('invoice_validated', 'Validated')] string='E-Factura Status'
Public methods (2)
  • action_l10n_ro_edi_download_signature(self)
    Download the received successful signature XML file from E-Factura
  • action_l10n_ro_edi_fetch_status(self)
    Fetch the latest response from E-Factura about the XML sent

New fields (9)
  • l10n_ro_edi_access_expiry_date Date
    string='Access Token Expiry Date'
  • l10n_ro_edi_access_token Char
    string='Access Token'
  • l10n_ro_edi_callback_url Char
    compute='_compute_l10n_ro_edi_callback_url'
  • l10n_ro_edi_client_id Char
    string='eFactura Client ID'
  • l10n_ro_edi_client_secret Char
    string='Client Secret'
  • l10n_ro_edi_oauth_error Char
  • l10n_ro_edi_refresh_expiry_date Date
    string='Refresh Token Expiry Date'
  • l10n_ro_edi_refresh_token Char
    string='Refresh Token'
  • l10n_ro_edi_test_env Boolean
    default=True string='Use Test Environment'
Public methods (0)

No public methods.

New fields (9)
  • l10n_ro_edi_access_expiry_date Date
    readonly=False related='company_id.l10n_ro_edi_access_expiry_date'
  • l10n_ro_edi_access_token Char
    readonly=False related='company_id.l10n_ro_edi_access_token'
  • l10n_ro_edi_callback_url Char
    related='company_id.l10n_ro_edi_callback_url'
  • l10n_ro_edi_client_id Char
    readonly=False related='company_id.l10n_ro_edi_client_id'
  • l10n_ro_edi_client_secret Char
    readonly=False related='company_id.l10n_ro_edi_client_secret'
  • l10n_ro_edi_oauth_error Char
    related='company_id.l10n_ro_edi_oauth_error'
  • l10n_ro_edi_refresh_expiry_date Date
    readonly=False related='company_id.l10n_ro_edi_refresh_expiry_date'
  • l10n_ro_edi_refresh_token Char
    readonly=False related='company_id.l10n_ro_edi_refresh_token'
  • l10n_ro_edi_test_env Boolean
    readonly=False related='company_id.l10n_ro_edi_test_env'
Public methods (1)
  • button_l10n_ro_edi_generate_token(self)
    Redirects to controllers/main.py ~ `authorize` method

New fields (1)
  • invoice_edi_format Selection
    selection_add=[('ciusro', 'Romania (CIUS RO)')]
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/17.0/l10n_ro_edi
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Localizations/EDI
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLEYes
AUTHORS
AUTHORSOdoo
MAINTAINERS
MAINTAINERSOdoo
COMMITTERS
COMMITTERSOdoo Translation Bot, Martin Trigaux, Xavier Morel, Anh Thao Pham (pta), Brice bib Bartoletti, Julien Van Roy, Maximilien (malb), Claire Bretton (clbr), Yosua Nicolaus, Antoine Boonen, Dylan Kiss (dyki), Mohamed GadAlrab, Claire (clbr), Antoine Dupuis
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:02:07
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account_edi_ubl_cii
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - l10n_ro
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
E-invoice implementation for Romania
    

Code Analysis

Views touched (0)

No views found for this module.

Models touched (2)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • ubl_cii_format Selection
    selection_add=[('ciusro', 'CIUSRO')]
Public methods (0)

No public methods.