Repository
OCA/l10n-venezuela · module folder · Try on Runboat
Module version
1.0.0
Category
Accounting/Localizations
Folder size
0.09 MB
License
LGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/l10n-venezuela
Last tracking update
2026-09-04 23:27:44
Authors
Odoo Community Association (OCA), BWEALTHICS LLC
Maintainers
Odoo Community Association (OCA), BWEALTHICS LLC
Committers
OCA-git-bot, oca-ci, Alejandro Fernandez
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
None
Description
This addon provides a provider-neutral electronic invoicing workflow for
Venezuelan customer documents issued through digital billing.

It defines a neutral document payload, a four-method provider contract, an
outbound state machine, asynchronous control-number fetching, cancellation,
scheduled processing, and an immutable audit log. Concrete provider adapters
can be installed separately without changing the fiscal payload builder.

A dummy provider is included for testing. It does not contact an external
service and must not be selected in production.

The addon relies on `l10n_ve_fiscal_document` for the emission-medium snapshot
and its trusted, in-process control-number assignment API.

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
account_move_view_form account.move.form.l10n.ve.edoc account.move form Inherits l10n_ve_fiscal_document.account_move_view_form
l10n_ve_edoc_cancel_wizard_view_form l10n.ve.edoc.cancel.wizard.form l10n.ve.edoc.cancel.wizard form New
l10n_ve_edoc_log_view_form l10n.ve.edoc.log.form l10n.ve.edoc.log form New
l10n_ve_edoc_log_view_list l10n.ve.edoc.log.list l10n.ve.edoc.log list New
res_config_settings_view_form res.config.settings.view.form.l10n.ve.edoc res.config.settings form Inherits account.res_config_settings_view_form
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (8)

New fields (3)
  • l10n_ve_edoc_error Text
    copy=False readonly=True string='Last Provider Error'
  • l10n_ve_edoc_external_id Char
    copy=False readonly=True string='Provider Document ID'
  • l10n_ve_edoc_state Selection
    copy=False readonly=True selection=[('to_send', 'To Send'), ('sent', 'Sent, Awaiting Control Number'), ('assigned', 'Control Number Assigned'), ('error', 'Error'), ('cancelled', 'Cancelled by Provider')] string='Electronic Document Status' tracking=True
Public methods (3)
  • action_l10n_ve_edoc_cancel(self)
  • action_l10n_ve_edoc_fetch(self)
  • action_l10n_ve_edoc_send(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • move_id Many2one → account.move
    comodel_name='account.move' readonly=True required=True string='Document'
  • reason Text
    required=True string='Cancellation Reason'
Public methods (1)
  • action_confirm(self)

New fields (6)
  • company_id Many2one → res.company
    comodel_name='res.company' index=True related='move_id.company_id' store=True
  • endpoint Char
    required=True string='Operation'
  • move_id Many2one → account.move
    comodel_name='account.move' index=True ondelete='cascade' required=True string='Document'
  • ok Boolean
    string='Successful'
  • request Text
  • response Text
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 (7)
  • l10n_ve_edoc_password Char
    groups='base.group_system' string='Provider Password'
  • l10n_ve_edoc_provider Selection
    help='Technical model name of the provider adapter used by this company.' selection=[('l10n.ve.edoc.provider.dummy', 'Dummy (testing only)')] string='Electronic Document Provider'
  • l10n_ve_edoc_serie Char
    string='Series'
  • l10n_ve_edoc_sucursal Char
    string='Branch'
  • l10n_ve_edoc_test Boolean
    default=True help='Use the test environment exposed by the selected provider adapter.' string='Test Environment'
  • l10n_ve_edoc_url Char
    groups='base.group_system' string='Provider URL'
  • l10n_ve_edoc_user Char
    groups='base.group_system' string='Provider User'
Public methods (0)

No public methods.

New fields (7)
  • l10n_ve_edoc_password Char
    groups='base.group_system' readonly=False related='company_id.l10n_ve_edoc_password'
  • l10n_ve_edoc_provider Selection
    readonly=False related='company_id.l10n_ve_edoc_provider'
  • l10n_ve_edoc_serie Char
    readonly=False related='company_id.l10n_ve_edoc_serie'
  • l10n_ve_edoc_sucursal Char
    readonly=False related='company_id.l10n_ve_edoc_sucursal'
  • l10n_ve_edoc_test Boolean
    readonly=False related='company_id.l10n_ve_edoc_test'
  • l10n_ve_edoc_url Char
    groups='base.group_system' readonly=False related='company_id.l10n_ve_edoc_url'
  • l10n_ve_edoc_user Char
    groups='base.group_system' readonly=False related='company_id.l10n_ve_edoc_user'
Public methods (0)

No public methods.