CRM migration
Field-level mapping, validation, and rollback between Wintouch CRM and Odoo CRM. We move data and schema; workflows are rebuilt natively in Odoo CRM.
Wintouch CRM
Source
Odoo CRM
Destination
Compatibility
8 of 13
objects map 1:1 between Wintouch CRM and Odoo CRM.
Complexity
BStandard
Timeline
4-8 weeks
Overview
Moving from Wintouch CRM to Odoo CRM is a structural migration that also represents a fundamental shift in deployment architecture. Wintouch runs on IBM iSeries (AS/400), stores data in legacy date conventions, and offers no documented bulk API, forcing data extraction through UI-based CSV exports with limited field coverage. Odoo CRM is a modular, browser-based SaaS platform with a documented REST API, Kanban pipeline, and a free Community edition that scales to Enterprise. We handle the IBM iSeries extraction layer, normalize Wintouch's legacy date formats and address conventions, and resolve Wintouch's custom field proliferation against Odoo's IrModelField schema before any data moves. Activity workflow triggers, report definitions, and one-click report configurations live in Wintouch's application layer and do not export as data; we deliver a written inventory of these for the customer's admin to rebuild in Odoo.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Wintouch CRM object lands in Odoo CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Wintouch CRM
Contact
Odoo CRM
Contact
1:1Wintouch Contact records map directly to Odoo Contact (res.partner with customer_rank set). Standard fields (name, email, phone, mobile) migrate cleanly. Custom fields on Contact require individual type mapping (dropdown to selection, free text to char, numeric to float) validated during discovery before import. Address data from Wintouch's multi-address support migrates to Odoo's Contact address fields with postal code and country normalization applied, particularly for international records outside North America.
Wintouch CRM
Account
Odoo CRM
Company (Partner)
1:1Wintouch Account records map to Odoo Partner records in company mode (customer_rank set to 100+). The B2B vs B2C type distinction from Wintouch maps to Odoo's company vs individual Partner type. Multiple contacts per account are preserved as child Contact records linked to the parent Company Partner. Wintouch's multi-address support on accounts maps to Odoo's Contact child records for each address location (shipping, billing, office). International addresses that lack geo-coordinates are flagged and mapped with blank lat/lng rather than silently dropped.
Wintouch CRM
Lead
Odoo CRM
Lead / Opportunity
lossyWintouch Leads with web form origin or auto-assignment workflows map to Odoo CRM Lead (crm.lead). Lead-to-contact conversion logic in Wintouch is application-layer automation and cannot be exported as data. We migrate the Lead records with their status, source, and owner intact. The customer configures Odoo's Lead to Opportunity conversion rule (lead.lifecycle.mode) to match their sales process after migration. Any custom fields on Wintouch Leads are individually mapped per the custom field audit.
Wintouch CRM
Deal
Odoo CRM
Opportunity
1:1Wintouch Deals map to Odoo CRM Opportunity (crm.lead with type='opportunity'). The pipeline stage maps to Odoo's stage_id with a custom pipeline ID for the relevant sales team. Deal value, expected close date, and probability migrate directly. Closed-won and closed-lost reasons from Wintouch custom fields become Odoo Opportunity description notes or custom fields on the Opportunity.
Wintouch CRM
Pipeline Stage
Odoo CRM
Stage + Sales Team
lossyWintouch customizable pipeline stages are mapped explicitly to Odoo CRM Stage records within the relevant Sales Team (crm.team). Stage names and ordering are preserved. Historical deal stage history is migrated as a custom field or note on each Opportunity, since Odoo does not store a native stage change log as separate records. We configure the pipeline kanban view order to match Wintouch's stage ordering before the first production migration phase.
Wintouch CRM
Activity / Task
Odoo CRM
CRM Log Note / Task
1:1Wintouch Activity records (completed tasks and scheduled work) migrate to Odoo CRM Log Notes on the related Contact or Opportunity record. Activity date formats use AS/400 date conventions that we normalize to ISO 8601 (YYYY-MM-DD HH:MM:SS) during the transform layer. User assignment in Wintouch maps to Odoo Responsible (user_id) on the log note, resolved via email match against Odoo User records. Completed vs. open activity filtering is agreed upon with the customer during scoping before migration.
Wintouch CRM
Attachment
Odoo CRM
Attachment (IrAttachment)
1:1Wintouch file attachments are not covered by a documented bulk export endpoint. We extract available attachments via available file paths in the Wintouch environment and map them to the corresponding Contact, Account, or Activity record in Odoo as IrAttachment records. Any attachments that cannot be located via available paths are flagged in the reconciliation report with the source record reference so the customer's admin can manually upload or confirm loss.
Wintouch CRM
Custom Field (per-object)
Odoo CRM
Custom Field (IrModelField)
lossyWintouch custom fields exist per object (Contacts, Activities, Accounts, Leads) and may accumulate dozens over years of use with inconsistent naming and types. During discovery we produce a full custom field inventory with field name, object, type, and current values. Each field is mapped explicitly: dropdowns become Odoo selection fields, free text becomes char or text, numeric values become float or integer. Fields with no Odoo destination object are archived to a JSON manifest rather than silently dropped. Odoo Studio is used to create the fields in the target Odoo database before production migration.
Wintouch CRM
Geographic Data
Odoo CRM
Lat/Long on Partner Address
1:1Wintouch generates latitude/longitude coordinates for addresses but only within North America. International addresses from outside the US and Canada will have no geo-coordinates in Wintouch. We flag all records with missing geo-data during extraction and either map them with blank lat/lng or record them in a separate enrichment manifest for post-migration geo-enrichment using an Odoo-compatible geocoding service. No geo-data is silently dropped during migration.
Wintouch CRM
Report (underlying data)
Odoo CRM
Report (rebuilt)
1:1Wintouch one-click report definitions and layout configurations are application-state data stored in a centralized repository and cannot be exported as data. We extract the underlying record data that feeds each report (Contacts, Accounts, Deals, Activities) so that the same data is available in Odoo for rebuilding. We flag which reports existed in the source system during the migration handoff and provide a report inventory manifest to the customer's admin for Odoo report recreation.
Wintouch CRM
Owner
Odoo CRM
User
1:1Wintouch Owner records map to Odoo User accounts. We resolve owners by email match against the destination Odoo User table. Any Wintouch Owner without a matching Odoo User is held in a reconciliation queue for the customer's admin to provision before record import resumes. Inactive owners are mapped to Odoo inactive users or flagged as unknown.
Wintouch CRM
Wintouch AI (forecasting)
Odoo CRM
Odoo Forecast
lossyWintouch includes built-in AI and ML predictive model capabilities for basic forecasting. Odoo CRM includes a Forecasting module in its sales app for revenue projection. Any historical forecast data or scoring values stored in Wintouch custom fields migrate to corresponding Odoo custom fields. The AI model itself does not transfer; Odoo's own forecasting tools are configured post-migration using the migrated pipeline data.
Wintouch CRM
Module breadth (CRM, ERP, Project, HR)
Odoo CRM
Odoo Apps (CRM, Sales, Project, Accounting, HR)
lossyWintouch covers CRM, lightweight ERP, project management, and HR within a single platform. Odoo provides these as separate installable apps within the same database. We scope the CRM and Sales migration first. If the customer also activates Odoo Project, Invoicing, or Accounting modules, the same Contact, Account, and Opportunity records are available across all apps without re-import. We flag the multi-app scope during discovery and configure the Odoo apps before production migration begins.
| Wintouch CRM | Odoo CRM | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Account | Company (Partner)1:1 | Fully supported | |
| Lead | Lead / Opportunitylossy | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Pipeline Stage | Stage + Sales Teamlossy | Fully supported | |
| Activity / Task | CRM Log Note / Task1:1 | Fully supported | |
| Attachment | Attachment (IrAttachment)1:1 | Fully supported | |
| Custom Field (per-object) | Custom Field (IrModelField)lossy | Fully supported | |
| Geographic Data | Lat/Long on Partner Address1:1 | Mapping required | |
| Report (underlying data) | Report (rebuilt)1:1 | Fully supported | |
| Owner | User1:1 | Fully supported | |
| Wintouch AI (forecasting) | Odoo Forecastlossy | Fully supported | |
| Module breadth (CRM, ERP, Project, HR) | Odoo Apps (CRM, Sales, Project, Accounting, HR)lossy | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Wintouch CRM gotchas
Latitude/longitude geo-enrichment is North America only
Custom field proliferation creates migration mapping complexity
Activity workflow triggers do not export as data
One-click report definitions are not portable
Odoo CRM gotchas
Odoo.sh version gating blocks assisted migrations from trial
Enterprise modules fail to install on Community after database restore
Custom module view inheritance breaks between Odoo major versions
Custom fields risk losing their application context on Community
API access for Community is gated behind the Custom Plan
Pair-specific challenges
Migration approach
Discovery and Wintouch extraction planning
We audit the Wintouch IBM iSeries environment to identify all available export routes for each object: the UI CSV export for Contacts, any available file paths for attachments, custom field definitions per object, pipeline stage configuration, and user/owner inventory. We work with the customer's Wintouch administrator to confirm access to the export interfaces and to extract sample records for format validation. The discovery output is a written extraction plan specifying which objects use UI export, which require manual export, and which require custom extraction code. We also confirm the Odoo instance URL, edition, and activated apps.
Data normalization and custom field mapping
We run a normalization transform on every extracted Wintouch file. AS/400 date formats are converted to ISO 8601. Address lines are parsed and standardized. Character encoding is normalized to UTF-8. Custom field values are validated against their declared types and cross-referenced for dependency rules. We build the Odoo custom field schema (via Odoo Studio or IrModelField XML) to match the normalized custom fields before any import. A quarantine table isolates records with format failures, and each failure is resolved in coordination with the customer before staging begins.
Staging migration and reconciliation
We run a full migration into the customer's Odoo staging environment using production-like data volume. Record counts are reconciled for every object: Contacts in, Accounts in, Opportunities in, Activity records in. We spot-check 25-50 records across each object type against the Wintouch source data and verify that custom field values populated correctly on both Contact and Activity records. The customer signs off on staging validation before production migration is scheduled. Any mapping corrections happen here, not in production.
Owner reconciliation and User provisioning
We extract every distinct Wintouch Owner referenced across all objects and match by email against the destination Odoo User table. Owners without a matching Odoo User are placed in a reconciliation queue. The customer's Odoo administrator provisions any missing Users (active or inactive depending on whether the Wintouch user is still active). Migration cannot proceed to production until all Owner references have a valid destination User, because the user_id field is required on most Odoo record imports.
Production migration in dependency order
We run production migration in record-dependency order: Odoo Users (validated), Companies (from Wintouch Accounts), Contacts (with Partner reference resolved), Leads and Opportunities (with owner, stage, and sales team resolved), Activity history (as CRM Log Notes via Odoo XML-RPC import), Attachments (as IrAttachment records), and Custom Fields (created via Odoo Studio before import). Each phase emits a row-count reconciliation report. A delta migration captures any records modified in Wintouch during the migration window before cutover.
Cutover, validation, and automation rebuild handoff
We freeze Wintouch writes during cutover and enable Odoo CRM as the system of record. We validate critical record counts and spot-check key Accounts, Contacts, and Opportunities against the Wintouch source. We deliver the automation trigger inventory and report list to the customer's Odoo administrator for rebuild using Odoo Automated Actions and Studio. We provide a one-week hypercare window for reconciliation issues raised by the sales team. We do not rebuild Wintouch automations as Odoo Automated Actions inside the migration scope; that is a separate configuration engagement.
Platform deep dives
Wintouch CRM
Source
Strengths
Weaknesses
Odoo CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 3 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Wintouch CRM and Odoo CRM.
Object compatibility
3 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Wintouch CRM: Not publicly documented.
Data volume sensitivity
Wintouch CRM doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Wintouch CRM to Odoo CRM migration scoping. Not seeing yours? Book a call.
Walk through your Wintouch CRM to Odoo CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Wintouch CRM
Other ways to arrive at Odoo CRM
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.