Odoo – GoHighLevel Connector
by Waqas Mustafa https://www.linkedin.com/in/waqas-mustafa-ba5701209/$ 75.06
-
Community
-
Enterprise
Odoo ⇌ GoHighLevel Connector: Bi-directional CRM Sync
Click Here for Complete Manual Guide
https://docs.google.com/document/d/1c4v8G4swiG4BPfsfPtTWe6Lrc4dtgdcHRBn1SaqIIww/edit?usp=sharing
Seamlessly integrate Odoo with GoHighLevel for complete CRM synchronization. Keep your contacts, opportunities, tasks, and notes in perfect sync across both platforms with powerful bi-directional synchronization.
Perfect for businesses using both Odoo and GoHighLevel who want to maintain a single source of truth across platforms. Features smart pagination, duplicate prevention, and incremental sync for maximum efficiency.
Full bi-directional sync with field mapping, tags, company linking, and user assignments
Pipeline and stage mapping with monetary values and related contacts
Sync tasks with contact linking, deadlines, and completion status
Multiple safety layers prevent duplicate records across systems
Handles unlimited contacts and opportunities with efficient API usage
Configurable cron jobs (5-60 minutes) plus manual "Sync Now" button
- Name, Email, Phone, Mobile
- Address (Street, City, State, Zip, Country)
- Tags (Categories in Odoo)
- Company linking
- Assigned User
- Website
- Opportunity Name
- Expected Revenue (Monetary Value)
- Status (Active/Closed)
- Related Contact
- Assigned User
- Pipeline Stage
- Task Title
- Description
- Due Date
- Completion Status
- Assigned User
- Related Contact
- Note body/content
- Author (if user is mapped)
- Related record (contact or opportunity)
Possible Causes:
- Incorrect API Key or Location ID
- Missing scopes in GoHighLevel Private Integration
Solutions:
- Double-check API Key and Location ID
- Verify all required scopes are enabled
- Try regenerating the API Key in GoHighLevel
Check:
- Is "Sync Contacts" enabled in settings?
- Is Sync Direction set correctly?
- Is the contact a company? (Companies don't sync)
- Is "Skip GHL Sync" checked on the contact?
Check:
- Is "Sync Opportunities" enabled?
- Is the opportunity's stage mapped in Pipeline Mapping?
- Is the opportunity type set to "Opportunity" (not "Lead")?
Fix: Map the stage in GoHighLevel → Configuration → Pipeline Mapping
The current code has triple protection against duplicates and cannot create them. Existing duplicates were likely created before the module was installed or manually.
Solution: Manually merge duplicates. The connector will maintain the link going forward.
- Test connection before enabling sync
- Map all users and pipeline stages before syncing
- Start with a small test dataset
- Use reasonable polling intervals (5-15 minutes)
- Regularly check Last Sync Timestamps
- Maintain clean contact data (valid emails, phones)
- Link tasks to contacts
- Enable sync on production data without testing
- Skip user and pipeline mapping
- Manually edit GoHighLevel ID fields
- Delete synced records without understanding impact
- Set polling interval to 1 minute unless necessary
- Enable sync during bulk imports (disable temporarily)
-
18.0.1.1.0 2026-02-04
- Fixed contact pagination error (searchAfter parsing exception)
- Implemented official searchAfter array format for bulk contact sync
- Optimized API requests for large contact databases (1000+ records)
-
18.0.1.0.0 2025-12-05
- Initial release with full bi-directional sync
- Contact, Opportunity, Task, and Note synchronization
- Smart pagination with nextPageUrl support
- Triple-layer duplicate prevention
- User and pipeline mapping functionality
- Configurable cron jobs and manual sync
- Comprehensive error handling and logging
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
CRM (crm)
• Contacts (contacts) • Discuss (mail) • Project (project) • Calendar (calendar) |
| Lines of code | 1413 |
| Technical Name |
odoo_gohighlevel_connector |
| License | OPL-1 |
| Website | https://www.linkedin.com/in/waqas-mustafa-ba5701209/ |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module