Plug webservice module within EDI framework. Allows to configure attach webservices on an EDI backend and/or on an exchange type.
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Lets you attach a web service connection to an EDI backend so that EDI exchange records can be sent out automatically through that web service.
This module connects the EDI framework with the web service module. On an EDI backend form you get a new "Webservice" tab where you can pick a web service backend to use for that EDI backend.
Once a web service backend is linked, the system prefers web service components when it looks for the right way to send or receive an exchange record. The web service protocol of the linked backend is used to match the correct component, and components that support that protocol are sorted first.
A generic sending component is provided. It reads its settings from the exchange type's advanced settings under a webservice key. The method setting is required; if it is missing, the user gets an error message. Optional settings are pargs (positional arguments), kwargs (keyword arguments) and send_as_bytes (whether the file content is sent as raw bytes). The exchange record's file content is automatically added to the call as data.
Access rights are added so EDI managers can read, create, edit and delete web service backends. A demo backend and a demo EDI backend with a web service are included for testing.
Depends on
Models and fields (2)
- edi.backend · extends an existing modelwebservice_backend_id
- edi.webservice.send · new model
Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 6 confirmed, 3 with no information of 9 versions.
Sources · Odoo 15.0
Confirmed on 2026-11-03 in branch 15.0 of OCA/edi.
terminal Installation and usage
OCA documentation · Odoo 19.0Configuration
Source · Odoo 19.0Go to "EDI -\> Config -\> Backends" and edit or create one. Find the tab "Webservice" and add a webservice. On the webservice record you can specify all the general parameters to connect to the service (see webservice README for more details).
If you want to take full control on if/how the webservice is used you can do it via exchange type's advanced settings.
Hence, assuming your webservice has a URL configured as <https://my.endpoint/%7Bpath%7D>:
components: send: usage: webservice.send # or any custom component usage inheriting from this work_ctx: webservice: method: post # mandatory url_params: path: endpoint1/foo
For each call related to this type, you'll get a POST request against https://my.endpoint/endpoint/foo.
url_params can contain all the keys need for URL interpolation.
In addition, you can user url to override the full url used for the call per exchange type.
If you want to send data as bytes you can use the option send_as_bytes like:
[...] webservice: send_as_bytes: true [...]
No verified information in OCA: Installation, Usage.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.