The Odoo integration pushes your PBX SIP connection settings into Odoo's VoIP module so users can place and receive calls from inside Odoo.
Overview
The Odoo integration is one of the integration types you configure under Integrations. It connects your PBX to an Odoo ERP instance and provisions the Odoo VoIP module with the SIP settings your users need to call through the PBX.
What it does
Once configured and activated, the integration provisions Odoo's VoIP module with the SIP connection details for your PBX users. The sync is one-way, from the PBX into Odoo, and it overwrites the matching SIP configurations already in Odoo. Treat the PBX as the single source of truth: any SIP settings you change manually inside Odoo are replaced on the next sync.
You provide four connection credentials so the PBX can reach your Odoo instance:
- ServerUrl - the address of your Odoo instance, for example
https://mycompany.odoo.com. - DbName - the Odoo database to write to.
- Login - the Odoo username used for API access.
- ApiKey - an API key generated in Odoo under your user settings. Use a key, not your account password.
A single switch controls the behavior:
- Sync SIP connection configurations to Odoo for active users - when turned on, the Odoo VoIP module is installed or updated and the SIP connection settings are pushed to Odoo for the users you have activated for Odoo, not for every PBX user. The label shows how many users that currently is. When off, no SIP push happens.
Two fields are generated for you and shown read-only. You cannot edit them, but you can copy them if Odoo asks for the values:
- Odoo voip websocket - the WebSocket URL the Odoo VoIP module uses to reach the PBX. It is derived automatically from your PBX instance name.
- Odoo pbx dns - the PBX server address, derived from your server configuration. This field appears only when a server is attached to the PBX.
The push does not run the instant you save. The integration moves through a status lifecycle - pending, processing, then success or failed - shown as a colored status pill in the integrations list. An external process picks up active integrations still waiting to be installed, applies the configuration, and reports the outcome back to the PBX. Saving a change resets the integration to pending so it is processed again.
Activating employees for Odoo
Once the integration is active and connected, an Activate Odoo for users button appears at the top of the form, alongside a count of how many users are currently active out of how many are eligible. It opens a dialog listing every enabled user of your PBX who has an extension, with a switch to expose them to Odoo and an optional email field. When filled, that email is used instead of the person's own address for anything Odoo does with them; leaving it empty keeps their Cockpit email. Turning a switch off deactivates that person without discarding a typed email, so turning it back on later restores it.
The dialog has its own search box for each of Name, Extension, Main email and Override email, and every column can be sorted ascending or descending. On a large PBX the roster is paged rather than loaded all at once, so search and sort run on the server as you type or page through - not in the browser. Saving only sends the rows you actually changed: edits you make on one page are kept in memory and included in the save even after you have moved to another page or typed a new search, but a row you never touched is never rewritten, so paging through the list cannot accidentally deactivate anyone.
The same two controls also appear on each employee's own edit page, under an Odoo tab that shows only while the integration is active and connected — useful when you are already editing that person and do not need the full roster.
Activation and the SIP push are two separate decisions. Activating someone controls who Odoo is told about. The Sync SIP connection configurations to Odoo for active users switch above controls whether their SIP credentials go with them, and it is off by default. With it off, activated employees are still sent to Odoo — with their name, extension and email — but no SIP credentials are shared, so Odoo can identify them without being able to place calls as them. Turn the switch on when you want Odoo's VoIP module to actually dial through the PBX.
See also
- Integrations - the integration entity and its full field reference.
- Users - whose SIP settings are pushed to Odoo.