A build-to-order integration that connects your Odoo instance to your cloud phone system for click-to-dial, incoming-call screen-pop, and two-way contact synchronization. ECOSIRE scopes, builds, installs, and supports it — this is not an off-the-shelf download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $499.00 USD; request a quote for a scoped proposal.

A build-to-order integration that connects your Odoo instance to your cloud phone system for click-to-dial, incoming-call screen-pop, and two-way contact synchronization. ECOSIRE scopes, builds, installs, and supports it — this is not an off-the-shelf download.
现在无需付款。此操作会向我们的团队发送报价请求——我们会通过邮件跟进价格和后续步骤。
Sales and support teams that live inside Odoo still jump to a separate phone app to dial, log calls by hand, and reconcile contact lists that drift apart between the two systems. Every un-logged call is a gap in the CRM timeline; every manually keyed number is a chance to misdial; every new contact created in the phone system never makes it back to res.partner. Odoo core has a phone field and the mail.thread chatter, but it has no native computer-telephony (CTI) bridge to a cloud voice provider — no click-to-dial, no inbound screen-pop, no automatic call logging, and no contact reconciliation. That last-mile gap is exactly where teams lose call context and clean data.
Click-to-dial buttons on `res.partner`, `crm.lead`, and `helpdesk.ticket` that place calls via the provider's telephony REST API
Inbound screen-pop: a signed webhook controller matches the caller ID against `res.partner` and opens the record in an OWL overlay
One-click contact creation from an inbound call when no `res.partner` match is found, pre-filling name and number
Dedicated call-log model (`models.Model`) capturing direction, duration, agent, linked record, and disposition per call
`compute`/`@api.depends` fields for derived values such as human-readable duration and normalized E.164 numbers
Automatic chatter logging: each connected call drops a structured `mail.message`/activity onto the linked record
ECOSIRE builds a made-to-order integration module that wires your Odoo instance directly to your cloud telephony platform. On the outbound side, we add click-to-dial controls on res.partner, CRM leads, and helpdesk tickets that trigger a call through the provider's telephony API and drop a structured activity/log row into the record's chatter the moment the call connects or ends. On the inbound side, a lightweight CTI listener (webhook receiver plus an OWL/JS overlay) matches the caller's number against res.partner and pops the matching record — or offers one-click contact creation when there's no match. Two-way contact sync runs as a scheduled ir.cron job (and optional real-time webhooks) to keep numbers, names, and ownership aligned between Odoo and the phone system, with a conflict policy you choose during scoping.
Under the hood this is a proper Odoo addon, not a bolt-on script. We define a dedicated model layer (models.Model) for call records, extension mappings, and sync state, with compute/@api.depends fields for derived values like call direction and duration formatting. Provider credentials and endpoints are stored in encrypted system parameters, access is locked down through ir.model.access.csv plus record rules so agents only see their own calls, and every UI surface — the dial widget, the incoming-call overlay, the call-log views, and QWeb call-summary reports — ships as versioned XML/OWL. Outbound requests use the provider's REST API; inbound events arrive on a signed webhook controller; and the whole module speaks Odoo's own XML-RPC/JSON-RPC conventions so it composes cleanly with the rest of your database. We build against your exact Odoo edition and note Community-vs-Enterprise differences (for example where Enterprise VoIP widgets already exist) so we extend rather than collide. Supported on Odoo 17.0, 18.0, and 19.0.
Delivery is build-to-order. After a short scoping call we confirm your telephony provider, call-flow rules, and sync policy, then build on a staging copy of your database, run UAT with your team, and cut over with a rollback plan. Typical delivery is 2-4 weeks from confirmed scope. Pricing starts from $499 (indicative, single-company base scope); additional call-handling extensions, multi-company routing, real-time (vs scheduled) contact sync, and larger historical call-data migration increase the quoted scope. You get a fixed quote after the scoping call — never a surprise invoice.
Runs an outbound-heavy sales floor in Odoo CRM and wants reps dialing from the lead record with every call auto-logged to the timeline — no more manual call notes or copy-pasted numbers.
Handles inbound support through Odoo Helpdesk and needs incoming calls to screen-pop the caller's ticket history instantly, plus missed-call follow-up activities so nothing slips.
Owns the Odoo instance and the telephony contract, and needs a secure, maintainable integration with encrypted credentials, scoped access rules, and a clean git handover rather than a fragile one-off script.
Wants one clean contact list across the phone system and Odoo, reliable call-activity data for reporting, and a defined sync-conflict policy so the two systems stop drifting apart.
在 ecosire.com 上购买许可证并从您的帐户仪表板下载 Odoo Cloud Telephony Integration (CTI & Call Sync) 模块 ZIP。
将 ZIP 解压到服务器上的 Odoo 自定义插件文件夹中(或通过“应用程序”>“从 Odoo.sh / runbot 上的文件安装”上传)。
激活开发者模式,打开应用程序,单击更新应用程序列表,搜索 Odoo Cloud Telephony Integration (CTI & Call Sync),然后按安装。
打开新菜单,粘贴您的 ECOSIRE 许可证密钥,连接任何外部凭据(Shopify、Amazon、Stripe 等),然后保存。
运行内置连接测试,同步前 10 条记录,并安排定期 cron。如果出现任何问题,请联系支持人员。
| 标准 | 伊科西尔 | 定制建造 | 竞争对手 | 奥杜本机 |
|---|---|---|---|---|
| Fit to your telephony provider & call flows | Built to your exact provider, extensions, and routing rules | Fully bespoke but you own all design decisions | Fixed to the vendor's supported providers only | |
| Click-to-dial & inbound screen-pop | Both, on partner/lead/ticket via OWL widgets | Whatever you specify and can build | Often one direction or provider-limited | |
| Automatic call logging to chatter | Structured activity/log on every connected call | Possible, needs designing from scratch | Varies; often basic note only | |
| Two-way contact sync | Scheduled `ir.cron` + optional webhooks, with conflict policy | Buildable but you define the policy | Frequently one-way or absent | |
| Security & access control | Encrypted params, signed webhooks, record rules | Depends on your build discipline | Vendor default; limited configurability | |
| Source code & ownership | Full source + git repo handover | You own it, but you build & maintain it | Closed/licensed, no source | |
| Delivery & support | 2-4 wks, UAT + rollback + support window | Depends on your team's capacity | Instant install, self-support/tickets | |
| Odoo 17/18/19 compatibility | Built and pinned to your target version | Your responsibility to maintain | Depends on vendor's release cadence |
This is a build-to-order integration, so we build it against your specific telephony provider and call flows. Typical delivery is 2-4 weeks from confirmed scope. After the scoping call we give you a firm timeline alongside the fixed quote; larger call-data migrations or multi-company routing can extend it, and we'll tell you that up front.
No. It is not an off-the-shelf marketplace download. ECOSIRE designs, builds, installs, and supports the module specifically for your Odoo edition and phone system. You receive installable source and the git repository once your version is built and accepted in UAT.
Pricing starts from $499 (indicative, single-company base scope). The final price depends on your provider, the number of call-handling extensions, real-time vs scheduled contact sync, multi-company needs, and any historical call-data migration. We hold a short scoping call, then give you a fixed quote — no surprise invoicing.
We support Odoo 17.0, 18.0, and 19.0 on both Community and Enterprise. Where Enterprise already ships VoIP widgets, we extend and complement them rather than duplicate; on Community we provide the full click-to-dial, screen-pop, and logging layer ourselves. We confirm the exact edition during scoping.
Every build includes a post-go-live support window for defect fixes and configuration tuning. Because you receive the full source and git repository, you're never locked in. We also offer ongoing support and version-upgrade engagements (for example migrating the module to a newer Odoo release) as a separate, quoted arrangement.
It's designed to integrate with a cloud telephony platform that exposes a REST/telephony API and webhooks for inbound events. During the scoping call we confirm your provider's API capabilities and map them to click-to-dial, screen-pop, and sync. If a capability isn't available on your plan, we flag it before you commit.
Provider API credentials are stored as encrypted system parameters (`ir.config_parameter`), never hard-coded. Inbound webhooks are signature-verified, and call records are protected with `ir.model.access.csv` plus record rules so agents only see their own calls. Everything follows Odoo's standard security model.
A build-to-order integration that connects your Odoo instance to your cloud phone system for click-to-dial, incoming-call screen-pop, and two-way contact synchronization. ECOSIRE scopes, builds, installs, and supports it — this is not an off-the-shelf download.