| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/19.0/l10n_dk_nemhandel |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Accounting/Localizations/EDI |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | Yes |
| AUTHORS | |
| AUTHORS | Odoo S.A. |
| MAINTAINERS | |
| MAINTAINERS | Odoo S.A. |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, william-andre, Florian Gilbert, Pierrot (prro), Gauthier Wala (gawa), Dylan Kiss (dyki), Sven Fuehr, Claire (clbr), Léo Gizard, dvsh-odoo, igbe, Mongy (abmn), Laurent Smet (LAS), matd-odoo, steji, smjo-odoo, Adham Abdeltawab |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:51:40 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account_edi_proxy_client - account - base_setup - base - web - onboarding - product - bus - web_tour - html_editor - uom - analytic - portal - http_routing - auth_signup - digest - resource - certificate - account_edi_ubl_cii - l10n_dk - base_iban - base_vat |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
- Send and receive documents via Nemhandel network in OIOUBL 2.1 format
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_journal_dashboard_kanban_view |
account.journal.dashboard.kanban | account.journal | data | Inherits account.account_journal_dashboard_kanban_view |
l10n_dk_nemhandel_view_move_form |
l10n.dk.nemhandel.view.move.form | account.move | header | Inherits account.view_move_form |
nemhandel_registration_form |
nemhandel.registration.form | nemhandel.registration | form | New |
nemhandel_view_account_invoice_filter |
account.invoice.select.inherit | account.move | xpath | Inherits account.view_account_invoice_filter |
nemhandel_view_out_credit_note_tree_inherit |
account.move.credit.note.tree.inherit | account.move | field | Inherits account.view_out_credit_note_tree |
nemhandel_view_out_invoice_tree_inherit |
account.move.out.invoice.tree.inherit | account.move | field | Inherits account.view_out_invoice_tree |
res_config_settings_view_form |
res.config.settings.view.form.inherit.proxy.user | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
res_partner_form_l10n_dk_nemhandel |
res.partner.form.l10n.dk.nemhandel | res.partner | data | Inherits account_edi_ubl_cii.view_partner_property_form |
No new fields.
Public methods (0)No public methods.
is_nemhandel_journal
Boolean
string='Journal used for Nemhandel'
l10n_dk_nemhandel_proxy_state
Selection
related='company_id.l10n_dk_nemhandel_proxy_state'
button_fetch_in_einvoices(self)
button_refresh_out_einvoices_status(self)
nemhandel_message_uuid
Char
copy=False
string='Nemhandel message ID'
nemhandel_move_state
Selection
compute='_compute_nemhandel_move_state'
copy=False
selection=[('ready', 'Ready to send'), ('to_send', 'Queued'), ('processing', 'Pending Reception'), ('done', 'Done'), ('error', 'Error')]
store=True
string='Nemhandel status'
action_cancel_nemhandel_documents(self)
action_send_and_print(self)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)action_send_and_print(self, force_synchronous=False, allow_fallback_pdf=False)
No new fields.
Public methods (1)action_send_and_print(self, allow_fallback_pdf=False)
nemhandel_verification_code
Char
string='Nemhandel SMS verification code'
proxy_type
Selection
ondelete={'nemhandel': 'cascade'}
selection_add=[('nemhandel', 'Nemhandel')]
No public methods.
company_id
Many2one → res.company
comodel_name='res.company'
default=<expr>
required=True
contact_email
Char
readonly=False
related='company_id.nemhandel_contact_email'
required=True
edi_mode
Selection
compute='_compute_edi_mode'
inverse='_inverse_edi_mode'
readonly=False
selection=[('demo', 'Demo'), ('test', 'Test'), ('prod', 'Live')]
string='EDI mode'
edi_user_id
Many2one → account_edi_proxy_client.user
comodel_name='account_edi_proxy_client.user'
compute='_compute_edi_user_id'
string='EDI user'
identifier_type
Selection
readonly=False
related='company_id.nemhandel_identifier_type'
required=True
identifier_value
Char
readonly=False
related='company_id.nemhandel_identifier_value'
required=True
l10n_dk_nemhandel_proxy_state
Selection
readonly=False
related='company_id.l10n_dk_nemhandel_proxy_state'
phone_number
Char
inverse='_inverse_phone_number'
readonly=False
related='company_id.nemhandel_phone_number'
verification_code
Char
readonly=False
related='edi_user_id.nemhandel_verification_code'
button_check_nemhandel_verification_code(self)
button_deregister_nemhandel_participant(self)
button_nemhandel_receiver_registration(self)
button_nemhandel_registration_sms(self)
button_update_nemhandel_user_data(self)
send_nemhandel_verification_code(self)
l10n_dk_nemhandel_proxy_state
Selection
default='not_registered'
required=True
selection=[('not_registered', 'Not registered'), ('in_verification', 'In verification'), ('receiver', 'Can send and receive'), ('rejected', 'Rejected')]
string='Nemhandel status'
nemhandel_contact_email
Char
compute='_compute_nemhandel_contact_email'
help='Primary contact email for Nemhandel-related communication'
readonly=False
store=True
string='Nemhandel Contact email'
nemhandel_edi_user
Many2one → account_edi_proxy_client.user
comodel_name='account_edi_proxy_client.user'
compute='_compute_nemhandel_edi_user'
nemhandel_identifier_type
Selection
readonly=False
related='partner_id.nemhandel_identifier_type'
nemhandel_identifier_value
Char
readonly=False
related='partner_id.nemhandel_identifier_value'
nemhandel_phone_number
Char
compute='_compute_nemhandel_phone_number'
help='You will receive a verification code to this phone number'
readonly=False
store=True
string='Nemhandel Phone number (for validation)'
nemhandel_purchase_journal_id
Many2one → account.journal
comodel_name='account.journal'
compute='_compute_nemhandel_purchase_journal_id'
domain=[('type', '=', 'purchase')]
readonly=False
store=True
string='Nemhandel Purchase Journal'
No public methods.
l10n_dk_nemhandel_proxy_state
Selection
readonly=False
related='company_id.l10n_dk_nemhandel_proxy_state'
nemhandel_contact_email
Char
readonly=False
related='company_id.nemhandel_contact_email'
nemhandel_edi_identification
Char
related='nemhandel_edi_user.edi_identification'
string='Nemhandel identification'
nemhandel_edi_mode
Selection
related='nemhandel_edi_user.edi_mode'
string='Nemhandel EDI operating mode'
nemhandel_edi_user
Many2one
related='company_id.nemhandel_edi_user'
nemhandel_identifier_type
Selection
readonly=False
related='company_id.nemhandel_identifier_type'
nemhandel_identifier_value
Char
readonly=False
related='company_id.nemhandel_identifier_value'
nemhandel_phone_number
Char
readonly=False
related='company_id.nemhandel_phone_number'
nemhandel_purchase_journal_id
Many2one
readonly=False
related='company_id.nemhandel_purchase_journal_id'
action_open_nemhandel_form(self)
button_deregister_nemhandel_participant(self)
button_update_nemhandel_user_data(self)
invoice_edi_format
Selection
selection_add=[('oioubl_21', 'OIOUBL 2.1')]
invoice_sending_method
Selection
selection_add=[('nemhandel', 'By Nemhandel')]
is_using_nemhandel
Boolean
compute='_compute_is_using_nemhandel'
nemhandel_identifier_type
Selection
compute='_compute_nemhandel_identifier_type'
help='Unique identifier used by OIOUBL and Nemhandel'
readonly=False
selection=[('0088', 'EAN/GLN'), ('0184', 'CVR'), ('9918', 'IBAN'), ('0198', 'SE')]
store=True
string='Nemhandel Endpoint Type'
tracking=True
nemhandel_identifier_value
Char
compute='_compute_nemhandel_identifier_value'
help='Code used to identify the Endpoint on Nemhandel'
readonly=False
store=True
string='Nemhandel Endpoint'
tracking=True
nemhandel_verification_state
Selection
company_dependent=True
selection=[('not_verified', 'Not verified yet'), ('not_valid', 'Not on Nemhandel'), ('valid', 'Valid')]
string='Nemhandel endpoint verification'
button_nemhandel_check_partner_endpoint(self, company=None)
create(self, vals_list)
write(self, vals)
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/18.0/l10n_dk_nemhandel |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Accounting/Localizations/EDI |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | Yes |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Jairo Llopis, Miquel Raïch, william-andre, Pierrot (prro), Gauthier Wala (gawa), Dylan Kiss (dyki), Sven Fuehr, Louis Gobert, Claire (clbr), Léo Gizard, dvsh-odoo, igbe, malb, steji, smjo-odoo |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 20:13:50 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account_edi_proxy_client - account - base_setup - base - web - onboarding - product - bus - web_tour - html_editor - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - certificate - account_edi_ubl_cii - l10n_dk - base_iban - base_vat |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
cryptography |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
- Send and receive documents via Nemhandel network in OIOUBL 2.1 format
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_journal_dashboard_kanban_view |
account.journal.dashboard.kanban | account.journal | data | Inherits account.account_journal_dashboard_kanban_view |
l10n_dk_nemhandel_view_move_form |
l10n.dk.nemhandel.view.move.form | account.move | header | Inherits account.view_move_form |
nemhandel_registration_form |
nemhandel.registration.form | nemhandel.registration | form | New |
nemhandel_view_account_invoice_filter |
account.invoice.select.inherit | account.move | xpath | Inherits account.view_account_invoice_filter |
nemhandel_view_out_credit_note_tree_inherit |
account.move.credit.note.tree.inherit | account.move | field | Inherits account.view_out_credit_note_tree |
nemhandel_view_out_invoice_tree_inherit |
account.move.out.invoice.tree.inherit | account.move | field | Inherits account.view_out_invoice_tree |
res_config_settings_view_form |
res.config.settings.view.form.inherit.proxy.user | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
res_partner_form_l10n_dk_nemhandel |
res.partner.form.l10n.dk.nemhandel | res.partner | data | Inherits account_edi_ubl_cii.view_partner_property_form |
No new fields.
Public methods (0)No public methods.
is_nemhandel_journal
Boolean
string='Journal used for Nemhandel'
l10n_dk_nemhandel_proxy_state
Selection
related='company_id.l10n_dk_nemhandel_proxy_state'
nemhandel_get_message_status(self)
nemhandel_get_new_documents(self)
nemhandel_message_uuid
Char
copy=False
string='Nemhandel message ID'
nemhandel_move_state
Selection
compute='_compute_nemhandel_move_state'
copy=False
selection=[('ready', 'Ready to send'), ('to_send', 'Queued'), ('processing', 'Pending Reception'), ('done', 'Done'), ('error', 'Error')]
store=True
string='Nemhandel status'
action_cancel_nemhandel_documents(self)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (1)action_send_and_print(self, force_synchronous=False, allow_fallback_pdf=False)
No new fields.
Public methods (1)action_send_and_print(self, allow_fallback_pdf=False)
nemhandel_verification_code
Char
string='Nemhandel SMS verification code'
proxy_type
Selection
ondelete={'nemhandel': 'cascade'}
selection_add=[('nemhandel', 'Nemhandel')]
No public methods.
company_id
Many2one → res.company
comodel_name='res.company'
default=<expr>
required=True
contact_email
Char
readonly=False
related='company_id.nemhandel_contact_email'
required=True
edi_mode
Selection
compute='_compute_edi_mode'
inverse='_inverse_edi_mode'
readonly=False
selection=[('demo', 'Demo'), ('test', 'Test'), ('prod', 'Live')]
string='EDI mode'
edi_user_id
Many2one → account_edi_proxy_client.user
comodel_name='account_edi_proxy_client.user'
compute='_compute_edi_user_id'
string='EDI user'
identifier_type
Selection
readonly=False
related='company_id.nemhandel_identifier_type'
required=True
identifier_value
Char
readonly=False
related='company_id.nemhandel_identifier_value'
required=True
l10n_dk_nemhandel_proxy_state
Selection
readonly=False
related='company_id.l10n_dk_nemhandel_proxy_state'
phone_number
Char
inverse='_inverse_phone_number'
readonly=False
related='company_id.nemhandel_phone_number'
verification_code
Char
readonly=False
related='edi_user_id.nemhandel_verification_code'
button_check_nemhandel_verification_code(self)
button_deregister_nemhandel_participant(self)
button_nemhandel_receiver_registration(self)
button_nemhandel_registration_sms(self)
button_update_nemhandel_user_data(self)
send_nemhandel_verification_code(self)
l10n_dk_nemhandel_proxy_state
Selection
default='not_registered'
required=True
selection=[('not_registered', 'Not registered'), ('in_verification', 'In verification'), ('receiver', 'Can send and receive'), ('rejected', 'Rejected')]
string='Nemhandel status'
nemhandel_contact_email
Char
compute='_compute_nemhandel_contact_email'
help='Primary contact email for Nemhandel-related communication'
readonly=False
store=True
string='Nemhandel Contact email'
nemhandel_edi_user
Many2one → account_edi_proxy_client.user
comodel_name='account_edi_proxy_client.user'
compute='_compute_nemhandel_edi_user'
nemhandel_identifier_type
Selection
readonly=False
related='partner_id.nemhandel_identifier_type'
nemhandel_identifier_value
Char
readonly=False
related='partner_id.nemhandel_identifier_value'
nemhandel_phone_number
Char
compute='_compute_nemhandel_phone_number'
help='You will receive a verification code to this phone number'
readonly=False
store=True
string='Nemhandel Phone number (for validation)'
nemhandel_purchase_journal_id
Many2one → account.journal
comodel_name='account.journal'
compute='_compute_nemhandel_purchase_journal_id'
domain=[('type', '=', 'purchase')]
readonly=False
store=True
string='Nemhandel Purchase Journal'
No public methods.
l10n_dk_nemhandel_proxy_state
Selection
readonly=False
related='company_id.l10n_dk_nemhandel_proxy_state'
nemhandel_contact_email
Char
readonly=False
related='company_id.nemhandel_contact_email'
nemhandel_edi_identification
Char
related='nemhandel_edi_user.edi_identification'
string='Nemhandel identification'
nemhandel_edi_mode
Selection
related='nemhandel_edi_user.edi_mode'
string='Nemhandel EDI operating mode'
nemhandel_edi_user
Many2one
related='company_id.nemhandel_edi_user'
nemhandel_identifier_type
Selection
readonly=False
related='company_id.nemhandel_identifier_type'
nemhandel_identifier_value
Char
readonly=False
related='company_id.nemhandel_identifier_value'
nemhandel_phone_number
Char
readonly=False
related='company_id.nemhandel_phone_number'
nemhandel_purchase_journal_id
Many2one
readonly=False
related='company_id.nemhandel_purchase_journal_id'
action_open_nemhandel_form(self)
button_deregister_nemhandel_participant(self)
button_update_nemhandel_user_data(self)
invoice_edi_format
Selection
selection_add=[('oioubl_21', 'OIOUBL 2.1')]
invoice_sending_method
Selection
selection_add=[('nemhandel', 'By Nemhandel')]
is_using_nemhandel
Boolean
compute='_compute_is_using_nemhandel'
nemhandel_identifier_type
Selection
compute='_compute_nemhandel_identifier_type'
help='Unique identifier used by OIOUBL and Nemhandel'
readonly=False
selection=[('0088', 'EAN/GLN'), ('0184', 'CVR'), ('9918', 'IBAN'), ('0198', 'SE')]
store=True
string='Nemhandel Endpoint Type'
tracking=True
nemhandel_identifier_value
Char
compute='_compute_nemhandel_identifier_value'
help='Code used to identify the Endpoint on Nemhandel'
readonly=False
store=True
string='Nemhandel Endpoint'
tracking=True
nemhandel_verification_state
Selection
company_dependent=True
selection=[('not_verified', 'Not verified yet'), ('not_valid', 'Not on Nemhandel'), ('valid', 'Valid')]
string='Nemhandel endpoint verification'
button_nemhandel_check_partner_endpoint(self, company=None)
create(self, vals_list)
write(self, vals)