| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/19.0/account_peppol_response |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Accounting/Accounting |
| 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, Florian Gilbert, Pierrot (prro), Gauthier Wala (gawa), Dylan Kiss (dyki), Sven Fuehr |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:51:45 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account_peppol - 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 |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
phonenumbers |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
In addition to the PEPPOL module, this enable the business level response mechanism for PEPPOL documents.
When sending a document, and if the counterpart also handles business responses, you will be able to
see if your document has been accepted or rejected.
When receiving a document, you will be able to send a rejection or approval of the received document.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_peppol_rejection_wizard_view_form |
account.peppol.rejection.wizard.view.form | account.peppol.rejection.wizard | form | New |
account_peppol_response_view_form |
account.peppol.response.view.form | account.peppol.response | form | New |
account_peppol_response_view_list |
account.peppol.response.view.list | account.peppol.response | list | New |
account_peppol_response_view_move_form |
account.peppol.response.view.move.form | account.move | xpath | Inherits account_peppol.account_peppol_view_move_form |
res_partner_form_account_peppol_response |
res.partner.form.account.peppol.response | res.partner | data | Inherits account_peppol.res_partner_form_account_peppol |
peppol_can_send_response
Boolean
compute='_compute_peppol_can_send_response'
peppol_move_state
Selection
selection_add=[('AB', 'Received'), ('AP', 'Approved'), ('RE', 'Rejected')]
peppol_response_ids
One2many → account.peppol.response
action_open_peppol_reponses(self)
action_peppol_open_rejection_wizard(self)
action_peppol_send_approval_response(self)
button_cancel(self)
code
Char
description
Char
list_identifier
Selection
string='List identifier'
args: [('OPStatusReason', 'OPStatusReason'), ('OPStatusAction', 'OPStatusAction')]
name
Char
No public methods.
action_ids
Many2many → account.peppol.clarification
comodel_name='account.peppol.clarification'
domain="[('list_identifier', '=', 'OPStatusAction')]"
help="The actions to be suggested to the document's sender in order for the document to be accepted when sent again (eventually). These will be sent to the document's sender. Not mandatory."
relation='account_peppol_rejection_action_rel'
string='Rejection actions'
move_ids
Many2many → account.move
comodel_name='account.move'
required=True
reason_ids
Many2many → account.peppol.clarification
comodel_name='account.peppol.clarification'
default=<expr>
domain="[('list_identifier', '=', 'OPStatusReason')]"
help="The reasons to reject the received PEPPOL document. These will be sent to the document's sender."
relation='account_peppol_rejection_reason_rel'
required=True
string='Rejection reasons'
button_send(self)
company_id
Many2one
related='move_id.company_id'
move_id
Many2one → account.move
index='btree_not_null'
ondelete='cascade'
args: 'account.move'
peppol_message_uuid
Char
peppol_state
Selection
selection=[('processing', 'Pending Reception'), ('done', 'Done'), ('error', 'Error'), ('not_serviced', 'Not Serviced')]
string='Peppol status'
response_code
Selection
required=True
selection=[('AB', 'Acknowledgement'), ('IP', 'In Process'), ('UQ', 'Under query'), ('CA', 'Conditionally accepted'), ('RE', 'Rejection'), ('AP', 'Approval'), ('PD', 'Paid')]
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
peppol_response_support
Boolean
compute='_compute_response_support'
args: 'Peppol Response Service'
peppol_supported_documents
Json
button_account_peppol_check_partner_endpoint(self, company=None)
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/18.0/account_peppol_response |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Accounting/Accounting |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | Yes |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Pierrot (prro), Gauthier Wala (gawa), Dylan Kiss (dyki), Sven Fuehr |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:25:59 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account_peppol - 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 |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
phonenumbers cryptography |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
In addition to the PEPPOL module, this enable the business level response mechanism for PEPPOL documents.
When sending a document, and if the counterpart also handles business responses, you will be able to
see if your document has been accepted or rejected.
When receiving a document, you will be able to send a rejection or approval of the received document.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_peppol_rejection_wizard_view_form |
account.peppol.rejection.wizard.view.form | account.peppol.rejection.wizard | form | New |
account_peppol_response_view_form |
account.peppol.response.view.form | account.peppol.response | form | New |
account_peppol_response_view_list |
account.peppol.response.view.list | account.peppol.response | list | New |
account_peppol_response_view_move_form |
account.peppol.response.view.move.form | account.move | xpath | Inherits account_peppol.account_peppol_view_move_form |
res_partner_form_account_peppol_response |
res.partner.form.account.peppol.response | res.partner | data | Inherits account_peppol.res_partner_form_account_peppol |
peppol_can_send_response
Boolean
compute='_compute_peppol_can_send_response'
peppol_move_state
Selection
selection_add=[('AB', 'Received'), ('AP', 'Approved'), ('RE', 'Rejected')]
peppol_response_ids
One2many → account.peppol.response
action_open_peppol_reponses(self)
action_peppol_open_rejection_wizard(self)
action_peppol_send_approval_response(self)
button_cancel(self)
code
Char
description
Char
list_identifier
Selection
string='List identifier'
args: [('OPStatusReason', 'OPStatusReason'), ('OPStatusAction', 'OPStatusAction')]
name
Char
No public methods.
action_ids
Many2many → account.peppol.clarification
comodel_name='account.peppol.clarification'
domain="[('list_identifier', '=', 'OPStatusAction')]"
help="The actions to be suggested to the document's sender in order for the document to be accepted when sent again (eventually). These will be sent to the document's sender. Not mandatory."
relation='account_peppol_rejection_action_rel'
string='Rejection actions'
move_ids
Many2many → account.move
comodel_name='account.move'
required=True
reason_ids
Many2many → account.peppol.clarification
comodel_name='account.peppol.clarification'
default=<expr>
domain="[('list_identifier', '=', 'OPStatusReason')]"
help="The reasons to reject the received PEPPOL document. These will be sent to the document's sender."
relation='account_peppol_rejection_reason_rel'
required=True
string='Rejection reasons'
button_send(self)
company_id
Many2one
related='move_id.company_id'
move_id
Many2one → account.move
ondelete='cascade'
args: 'account.move'
peppol_message_uuid
Char
peppol_state
Selection
selection=[('processing', 'Pending Reception'), ('done', 'Done'), ('error', 'Error'), ('not_serviced', 'Not Serviced')]
string='Peppol status'
response_code
Selection
required=True
selection=[('AB', 'Acknowledgement'), ('IP', 'In Process'), ('UQ', 'Under query'), ('CA', 'Conditionally accepted'), ('RE', 'Rejection'), ('AP', 'Approval'), ('PD', 'Paid')]
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
peppol_response_support
Boolean
compute='_compute_response_support'
args: 'Peppol Response Service'
peppol_supported_documents
Json
button_account_peppol_check_partner_endpoint(self, company=None)