Vietnam - E-invoicing

l10n_vn_edi_viettel
REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/19.0/l10n_vn_edi_viettel
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Localizations/EDI
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo S.A.
MAINTAINERS
MAINTAINERSOdoo S.A.
COMMITTERS
COMMITTERSOdoo Translation Bot, Xavier Morel, Laurent Smet, Julien Castiaux, Gorash, Miquel Raïch, luvi, Roy Le, jbw-odoo, Maximilien (malb), Ali Alfie (alal), Dylan Kiss (dyki), Nguyễn Đại Dương, Nicolas Viseur (vin), reka-odoo, Tran Thanh Phuc, Claire (clbr), Antoine Dupuis, Vincent Sevestre, Krzysztof Magusiak (krma), hisi-odoo, daiduongnguyen-odoo, jand-odoo, shzi-odoo
WEBSITE
WEBSITEhttps://www.odoo.com/documentation/latest/applications/finance/fiscal_localizations/vietnam.html
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:51:44
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - l10n_vn
    - account_qr_code_emv
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Vietnam - E-invoicing
=====================
Using SInvoice by Viettel
    

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
l10n_vn_edi_cancellation_form l10n_vn_edi_viettel.cancellation.form l10n_vn_edi_viettel.cancellation form New
res_config_settings_view_form_inherit_l10n_vn_edi res.config.settings.form.inherit.l10n_vn_edi res.config.settings xpath Inherits account.res_config_settings_view_form
res_partner_view_from_inherit_l10n_vn_edi res.partner.form.inherit.l10n_vn_edi res.partner group Inherits account.view_partner_property_form
view_account_invoice_filter_inherit_l10n_vn_edi account.invoice.select.inherit.l10n_vn_edi account.move filter Inherits account.view_account_invoice_filter
view_account_move_reversal_inherit_l10n_vn_edi account.move.reversal.form.inherit.l10n_vn_edi account.move.reversal xpath Inherits account.view_account_move_reversal
view_invoice_form_inherit_l10n_vn_edi account.move.form.inherit.l10n_vn_edi account.move xpath Inherits account.view_move_form
view_invoice_tree_inherit_l10n_vn_edi account.invoice.list.inherit.l10n_vn_edi account.move field Inherits account.view_invoice_tree
Models touched (9)

New fields (17)
  • l10n_vn_edi_adjustment_type Selection
    copy=False selection=[('1', 'Money adjustment'), ('2', 'Information adjustment')] string='Adjustment type'
  • l10n_vn_edi_agreement_document_date Datetime
    copy=False string='Agreement Date'
  • l10n_vn_edi_agreement_document_name Char
    copy=False string='Agreement Name'
  • l10n_vn_edi_invoice_number Char
    copy=False help='Invoice Number as appearing on SInvoice.' readonly=True string='SInvoice Number'
  • l10n_vn_edi_invoice_state Selection
    compute='_compute_l10n_vn_edi_invoice_state' copy=False readonly=False selection=[('ready_to_send', 'Ready to send'), ('sent', 'Sent'), ('payment_state_to_update', 'Payment status to update'), ('canceled', 'Canceled'), ('adjusted', 'Adjusted'), ('replaced', 'Replaced')] store=True string='Sinvoice Status'
  • l10n_vn_edi_invoice_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' compute='_compute_l10n_vn_edi_invoice_symbol' readonly=False store=True string='Invoice Symbol'
  • l10n_vn_edi_invoice_transaction_id Char
    copy=False export_string_translation=False help='Technical field to store the transaction ID if needed' string='SInvoice Transaction ID'
  • l10n_vn_edi_issue_date Datetime
    copy=False help='Date of issue of the invoice on the e-invoicing system.' readonly=True string='Issue Date'
  • l10n_vn_edi_replacement_origin_id Many2one → account.move
    check_company=True comodel_name='account.move' copy=False export_string_translation=False readonly=True string='Replacement of'
  • l10n_vn_edi_reservation_code Char
    copy=False help='Secret code that can be used by a customer to lookup an invoice on SInvoice.' readonly=True string='Secret Code'
  • l10n_vn_edi_reversed_entry_invoice_number Char
    export_string_translation=False related='reversed_entry_id.l10n_vn_edi_invoice_number' string='Revered Entry SInvoice Number'
  • l10n_vn_edi_sinvoice_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice json File'
  • l10n_vn_edi_sinvoice_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_file'] export_string_translation=False readonly=True
  • l10n_vn_edi_sinvoice_pdf_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice pdf File'
  • l10n_vn_edi_sinvoice_pdf_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_pdf_file'] export_string_translation=False readonly=True
  • l10n_vn_edi_sinvoice_xml_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice xml File'
  • l10n_vn_edi_sinvoice_xml_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_xml_file'] export_string_translation=False readonly=True
Public methods (3)
  • action_l10n_vn_edi_update_payment_status(self)
    Send a request to update the payment status of the invoice.
  • button_draft(self)
  • button_request_cancel(self)

New fields (3)
  • l10n_vn_edi_adjustment_type Selection
    default='1' required=True selection=[('1', 'Money adjustment'), ('2', 'Information adjustment')] string='Adjustment type'
  • l10n_vn_edi_agreement_document_date Datetime
    string='Agreement Date'
  • l10n_vn_edi_agreement_document_name Char
    string='Agreement Name'
Public methods (1)
  • reverse_moves(self, is_modify=False)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • agreement_document_date Datetime
    string='Agreement Date'
  • agreement_document_name Char
    string='Agreement Name'
  • invoice_id Many2one → account.move
    comodel_name='account.move' string='Invoice to cancel'
  • reason Char
    required=True string='Reason'
Public methods (1)
  • button_request_cancel(self)

New fields (2)
  • invoice_template_id Many2one → l10n_vn_edi_viettel.sinvoice.template
    comodel_name='l10n_vn_edi_viettel.sinvoice.template' index=True required=True
  • name Char
    required=True string='Symbol'
Public methods (0)

No public methods.

New fields (3)
  • invoice_symbols_ids One2many → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' inverse_name='invoice_template_id'
  • name Char
    required=True string='Template Code'
  • template_invoice_type Selection
    required=True selection=[('1', '1 - Value-added invoice'), ('2', '2 - Sales invoice'), ('3', '3 - Public assets sales'), ('4', '4 - National reserve sales'), ('5', '5 - Invoice for national reserve sales'), ('6', '6 - Warehouse release note')]
Public methods (0)

No public methods.

New fields (4)
  • l10n_vn_edi_password Char
    groups='base.group_system' string='Sinvoice Password'
  • l10n_vn_edi_token Char
    groups='base.group_system' readonly=True string='Sinvoice Access Token'
  • l10n_vn_edi_token_expiry Datetime
    groups='base.group_system' readonly=True string='Sinvoice Access Token Expiration Date'
  • l10n_vn_edi_username Char
    groups='base.group_system' string='SInvoice Username'
Public methods (0)

No public methods.

New fields (3)
  • l10n_vn_edi_default_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' compute='_compute_l10n_vn_edi_default_symbol' groups='base.group_system' help='This is the symbol that will be used on partners that do not have a specific symbol on them.' inverse='_inverse_l10n_vn_edi_default_symbol' string='Default Symbol'
  • l10n_vn_edi_password Char
    readonly=False related='company_id.l10n_vn_edi_password'
  • l10n_vn_edi_username Char
    readonly=False related='company_id.l10n_vn_edi_username'
Public methods (0)

No public methods.

New fields (2)
  • invoice_edi_format Selection
    selection_add=[('vn_sinvoice', 'Vietnam (SInvoice)')]
  • l10n_vn_edi_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' company_dependent=True copy=False help='If set, this symbol will be used as the default symbol for all invoices of this customer.' string='Default Symbol'
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_vn_edi_viettel
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Localizations/EDI
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORS
MAINTAINERS
MAINTAINERS
COMMITTERS
COMMITTERSOdoo Translation Bot, Laurent Smet, Jairo Llopis, Gorash, Miquel Raïch, Ali Alfie (alal), Claire Bretton (clbr), Dylan Kiss (dyki), Chong Wang (cwg), Nguyễn Đại Dương, Nicolas Viseur (vin), reka-odoo, Tran Thanh Phuc, Claire (clbr), Vincent Sevestre, hisi-odoo, daiduongnguyen-odoo, jand-odoo, shzi-odoo
WEBSITE
WEBSITEhttps://www.odoo.com/documentation/master/applications/finance/fiscal_localizations/vietnam.html
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:25:57
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - l10n_vn
    - account_qr_code_emv
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Vietnam - E-invoicing
=====================
Using SInvoice by Viettel
    

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
l10n_vn_edi_cancellation_form l10n_vn_edi_viettel.cancellation.form l10n_vn_edi_viettel.cancellation form New
res_config_settings_view_form_inherit_l10n_vn_edi res.config.settings.form.inherit.l10n_vn_edi res.config.settings xpath Inherits account.res_config_settings_view_form
res_partner_view_from_inherit_l10n_vn_edi res.partner.form.inherit.l10n_vn_edi res.partner group Inherits account.view_partner_property_form
view_account_invoice_filter_inherit_l10n_vn_edi account.invoice.select.inherit.l10n_vn_edi account.move filter Inherits account.view_account_invoice_filter
view_account_move_reversal_inherit_l10n_vn_edi account.move.reversal.form.inherit.l10n_vn_edi account.move.reversal xpath Inherits account.view_account_move_reversal
view_invoice_form_inherit_l10n_vn_edi account.move.form.inherit.l10n_vn_edi account.move xpath Inherits account.view_move_form
view_invoice_tree_inherit_l10n_vn_edi account.invoice.list.inherit.l10n_vn_edi account.move field Inherits account.view_invoice_tree
Models touched (9)

New fields (17)
  • l10n_vn_edi_adjustment_type Selection
    copy=False selection=[('1', 'Money adjustment'), ('2', 'Information adjustment')] string='Adjustment type'
  • l10n_vn_edi_agreement_document_date Datetime
    copy=False string='Agreement Date'
  • l10n_vn_edi_agreement_document_name Char
    copy=False string='Agreement Name'
  • l10n_vn_edi_invoice_number Char
    copy=False help='Invoice Number as appearing on SInvoice.' readonly=True string='SInvoice Number'
  • l10n_vn_edi_invoice_state Selection
    compute='_compute_l10n_vn_edi_invoice_state' copy=False readonly=False selection=[('ready_to_send', 'Ready to send'), ('sent', 'Sent'), ('payment_state_to_update', 'Payment status to update'), ('canceled', 'Canceled'), ('adjusted', 'Adjusted'), ('replaced', 'Replaced')] store=True string='Sinvoice Status'
  • l10n_vn_edi_invoice_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' compute='_compute_l10n_vn_edi_invoice_symbol' readonly=False store=True string='Invoice Symbol'
  • l10n_vn_edi_invoice_transaction_id Char
    copy=False export_string_translation=False help='Technical field to store the transaction ID if needed' string='SInvoice Transaction ID'
  • l10n_vn_edi_issue_date Datetime
    copy=False help='Date of issue of the invoice on the e-invoicing system.' readonly=True string='Issue Date'
  • l10n_vn_edi_replacement_origin_id Many2one → account.move
    check_company=True comodel_name='account.move' copy=False export_string_translation=False readonly=True string='Replacement of'
  • l10n_vn_edi_reservation_code Char
    copy=False help='Secret code that can be used by a customer to lookup an invoice on SInvoice.' readonly=True string='Secret Code'
  • l10n_vn_edi_reversed_entry_invoice_number Char
    export_string_translation=False related='reversed_entry_id.l10n_vn_edi_invoice_number' string='Revered Entry SInvoice Number'
  • l10n_vn_edi_sinvoice_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice json File'
  • l10n_vn_edi_sinvoice_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_file'] export_string_translation=False readonly=True
  • l10n_vn_edi_sinvoice_pdf_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice pdf File'
  • l10n_vn_edi_sinvoice_pdf_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_pdf_file'] export_string_translation=False readonly=True
  • l10n_vn_edi_sinvoice_xml_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice xml File'
  • l10n_vn_edi_sinvoice_xml_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_xml_file'] export_string_translation=False readonly=True
Public methods (3)
  • action_l10n_vn_edi_update_payment_status(self)
    Send a request to update the payment status of the invoice.
  • button_draft(self)
  • button_request_cancel(self)

New fields (3)
  • l10n_vn_edi_adjustment_type Selection
    default='1' required=True selection=[('1', 'Money adjustment'), ('2', 'Information adjustment')] string='Adjustment type'
  • l10n_vn_edi_agreement_document_date Datetime
    string='Agreement Date'
  • l10n_vn_edi_agreement_document_name Char
    string='Agreement Name'
Public methods (1)
  • reverse_moves(self, is_modify=False)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • agreement_document_date Datetime
    string='Agreement Date'
  • agreement_document_name Char
    string='Agreement Name'
  • invoice_id Many2one → account.move
    comodel_name='account.move' string='Invoice to cancel'
  • reason Char
    required=True string='Reason'
Public methods (1)
  • button_request_cancel(self)

New fields (2)
  • invoice_template_id Many2one → l10n_vn_edi_viettel.sinvoice.template
    comodel_name='l10n_vn_edi_viettel.sinvoice.template' required=True
  • name Char
    required=True string='Symbol'
Public methods (0)

No public methods.

New fields (3)
  • invoice_symbols_ids One2many → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' inverse_name='invoice_template_id'
  • name Char
    required=True string='Template Code'
  • template_invoice_type Selection
    required=True selection=[('1', '1 - Value-added invoice'), ('2', '2 - Sales invoice'), ('3', '3 - Public assets sales'), ('4', '4 - National reserve sales'), ('5', '5 - Invoice for national reserve sales'), ('6', '6 - Warehouse release note')]
Public methods (0)

No public methods.

New fields (4)
  • l10n_vn_edi_password Char
    groups='base.group_system' string='Sinvoice Password'
  • l10n_vn_edi_token Char
    groups='base.group_system' readonly=True string='Sinvoice Access Token'
  • l10n_vn_edi_token_expiry Datetime
    groups='base.group_system' readonly=True string='Sinvoice Access Token Expiration Date'
  • l10n_vn_edi_username Char
    groups='base.group_system' string='SInvoice Username'
Public methods (0)

No public methods.

New fields (3)
  • l10n_vn_edi_default_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' compute='_compute_l10n_vn_edi_default_symbol' groups='base.group_system' help='This is the symbol that will be used on partners that do not have a specific symbol on them.' inverse='_inverse_l10n_vn_edi_default_symbol' string='Default Symbol'
  • l10n_vn_edi_password Char
    readonly=False related='company_id.l10n_vn_edi_password'
  • l10n_vn_edi_username Char
    readonly=False related='company_id.l10n_vn_edi_username'
Public methods (0)

No public methods.

New fields (2)
  • invoice_edi_format Selection
    selection_add=[('vn_sinvoice', 'Vietnam (SInvoice)')]
  • l10n_vn_edi_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' company_dependent=True copy=False help='If set, this symbol will be used as the default symbol for all invoices of this customer.' string='Default Symbol'
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_vn_edi_viettel
VERSION
VERSION 1.0
CATEGORY
CATEGORYAccounting/Localizations/EDI
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORS
MAINTAINERS
MAINTAINERS
COMMITTERS
COMMITTERSOdoo Translation Bot, Dylan Kiss (dyki), Nguyễn Đại Dương, Nicolas Viseur (vin), reka-odoo, Tran Thanh Phuc, daiduongnguyen-odoo
WEBSITE
WEBSITEhttps://www.odoo.com/documentation/master/applications/finance/fiscal_localizations/vietnam.html
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 01:02:08
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - l10n_vn
    - account_qr_code_emv
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Vietnam - E-invoicing
=====================
Using SInvoice by Viettel
    

Code Analysis

Views touched (8)
XML IDNameModelTypeStatus
account_move_send_inherit_l10n_vn_edi account.move.send.form.inherit.l10n_vn_edi account.move.send xpath Inherits account.account_move_send_form
l10n_vn_edi_cancellation_form l10n_vn_edi_viettel.cancellation.form l10n_vn_edi_viettel.cancellation form New
res_config_settings_view_form_inherit_l10n_vn_edi res.config.settings.form.inherit.l10n_vn_edi res.config.settings xpath Inherits account.res_config_settings_view_form
res_partner_view_from_inherit_l10n_vn_edi res.partner.form.inherit.l10n_vn_edi res.partner group Inherits account.view_partner_property_form
view_account_invoice_filter_inherit_l10n_vn_edi account.invoice.select.inherit.l10n_vn_edi account.move filter Inherits account.view_account_invoice_filter
view_account_move_reversal_inherit_l10n_vn_edi account.move.reversal.form.inherit.l10n_vn_edi account.move.reversal xpath Inherits account.view_account_move_reversal
view_invoice_form_inherit_l10n_vn_edi account.move.form.inherit.l10n_vn_edi account.move xpath Inherits account.view_move_form
view_invoice_tree_inherit_l10n_vn_edi account.invoice.tree.inherit.l10n_vn_edi account.move field Inherits account.view_invoice_tree
Models touched (9)

New fields (17)
  • l10n_vn_edi_adjustment_type Selection
    copy=False selection=[('1', 'Money adjustment'), ('2', 'Information adjustment')] string='Adjustment type'
  • l10n_vn_edi_agreement_document_date Datetime
    copy=False string='Agreement Date'
  • l10n_vn_edi_agreement_document_name Char
    copy=False string='Agreement Name'
  • l10n_vn_edi_invoice_number Char
    copy=False help='Invoice Number as appearing on SInvoice.' readonly=True string='SInvoice Number'
  • l10n_vn_edi_invoice_state Selection
    compute='_compute_l10n_vn_edi_invoice_state' copy=False readonly=False selection=[('ready_to_send', 'Ready to send'), ('sent', 'Sent'), ('payment_state_to_update', 'Payment status to update'), ('canceled', 'Canceled'), ('adjusted', 'Adjusted'), ('replaced', 'Replaced')] store=True string='Sinvoice Status'
  • l10n_vn_edi_invoice_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' compute='_compute_l10n_vn_edi_invoice_symbol' readonly=False store=True string='Invoice Symbol'
  • l10n_vn_edi_invoice_transaction_id Char
    copy=False export_string_translation=False help='Technical field to store the transaction ID if needed' string='SInvoice Transaction ID'
  • l10n_vn_edi_issue_date Datetime
    copy=False help='Date of issue of the invoice on the e-invoicing system.' readonly=True string='Issue Date'
  • l10n_vn_edi_replacement_origin_id Many2one → account.move
    check_company=True comodel_name='account.move' copy=False export_string_translation=False readonly=True string='Replacement of'
  • l10n_vn_edi_reservation_code Char
    copy=False help='Secret code that can be used by a customer to lookup an invoice on SInvoice.' readonly=True string='Secret Code'
  • l10n_vn_edi_reversed_entry_invoice_number Char
    export_string_translation=False related='reversed_entry_id.l10n_vn_edi_invoice_number' string='Revered Entry SInvoice Number'
  • l10n_vn_edi_sinvoice_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice json File'
  • l10n_vn_edi_sinvoice_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_file'] export_string_translation=False readonly=True
  • l10n_vn_edi_sinvoice_pdf_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice pdf File'
  • l10n_vn_edi_sinvoice_pdf_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_pdf_file'] export_string_translation=False readonly=True
  • l10n_vn_edi_sinvoice_xml_file Binary
    copy=False export_string_translation=False readonly=True string='SInvoice xml File'
  • l10n_vn_edi_sinvoice_xml_file_id Many2one → ir.attachment
    comodel_name='ir.attachment' compute=<expr> copy=False depends=['l10n_vn_edi_sinvoice_xml_file'] export_string_translation=False readonly=True
Public methods (3)
  • action_l10n_vn_edi_update_payment_status(self)
    Send a request to update the payment status of the invoice.
  • button_draft(self)
  • button_request_cancel(self)

New fields (3)
  • l10n_vn_edi_adjustment_type Selection
    default='1' required=True selection=[('1', 'Money adjustment'), ('2', 'Information adjustment')] string='Adjustment type'
  • l10n_vn_edi_agreement_document_date Datetime
    string='Agreement Date'
  • l10n_vn_edi_agreement_document_name Char
    string='Agreement Name'
Public methods (1)
  • reverse_moves(self, is_modify=False)

New fields (3)
  • l10n_vn_edi_enable Boolean
    compute='_compute_l10n_vn_edi_enable'
  • l10n_vn_edi_generate_file_checkbox Boolean
    compute='_compute_l10n_vn_edi_generate_file_checkbox' readonly=False store=True string='Generate SInvoice file'
  • l10n_vn_edi_send_checkbox Boolean
    compute='_compute_l10n_vn_edi_send_checkbox' readonly=False store=True string='Send to SInvoice'
Public methods (0)

No public methods.

New fields (4)
  • agreement_document_date Datetime
    string='Agreement Date'
  • agreement_document_name Char
    string='Agreement Name'
  • invoice_id Many2one → account.move
    comodel_name='account.move' string='Invoice to cancel'
  • reason Char
    required=True string='Reason'
Public methods (1)
  • button_request_cancel(self)

New fields (2)
  • invoice_template_id Many2one → l10n_vn_edi_viettel.sinvoice.template
    comodel_name='l10n_vn_edi_viettel.sinvoice.template' required=True
  • name Char
    required=True string='Symbol'
Public methods (0)

No public methods.

New fields (3)
  • invoice_symbols_ids One2many → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' inverse_name='invoice_template_id'
  • name Char
    required=True string='Template Code'
  • template_invoice_type Selection
    required=True selection=[('1', '1 - Value-added invoice'), ('2', '2 - Sales invoice'), ('3', '3 - Public assets sales'), ('4', '4 - National reserve sales'), ('5', '5 - Invoice for national reserve sales'), ('6', '6 - Warehouse release note')]
Public methods (0)

No public methods.

New fields (4)
  • l10n_vn_edi_password Char
    groups='base.group_system' string='Sinvoice Password'
  • l10n_vn_edi_token Char
    groups='base.group_system' readonly=True string='Sinvoice Access Token'
  • l10n_vn_edi_token_expiry Datetime
    groups='base.group_system' readonly=True string='Sinvoice Access Token Expiration Date'
  • l10n_vn_edi_username Char
    groups='base.group_system' string='SInvoice Username'
Public methods (0)

No public methods.

New fields (3)
  • l10n_vn_edi_default_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' compute='_compute_l10n_vn_edi_default_symbol' groups='base.group_system' help='This is the symbol that will be used on partners that do not have a specific symbol on them.' inverse='_inverse_l10n_vn_edi_default_symbol' string='Default Symbol'
  • l10n_vn_edi_password Char
    readonly=False related='company_id.l10n_vn_edi_password'
  • l10n_vn_edi_username Char
    readonly=False related='company_id.l10n_vn_edi_username'
Public methods (0)

No public methods.

New fields (1)
  • l10n_vn_edi_symbol Many2one → l10n_vn_edi_viettel.sinvoice.symbol
    comodel_name='l10n_vn_edi_viettel.sinvoice.symbol' company_dependent=True copy=False help='If set, this symbol will be used as the default symbol for all invoices of this customer.' string='Default Symbol'
Public methods (0)

No public methods.