CRM migration
Field-level mapping, validation, and rollback between Field Nexus and Odoo CRM. We move data and schema; workflows are rebuilt natively in Odoo CRM.
Field Nexus
Source
Odoo CRM
Destination
Compatibility
12 of 12
objects map 1:1 between Field Nexus and Odoo CRM.
Complexity
BStandard
Timeline
48–72 hours
Overview
Field Nexus is a field service management platform built around work orders, scheduling and dispatch, technician assignments, and customer invoicing — with a native mobile app for on-site crews. Odoo CRM is a modular ERP with crm.lead as the primary sales object, res.partner as the contact-company model, and project.task available for task-oriented work. The two platforms share the concept of contacts, companies, and activity history, but Field Nexus models field operations as work orders with technician assignments and scheduling windows, while Odoo CRM stores these as leads with custom fields or project tasks. FlitStack AI connects to Field Nexus via its API or CSV export, extracts customers, work orders, estimates, invoices, team members, and custom fields, then maps each into Odoo's corresponding model. Work orders become crm.lead records with custom fields for service type, scheduled date, assigned technician, and service address. Estimates map to sale.order. Invoices map to account.move. Team members become res.users. Attachments and activity history (calls, notes) migrate as ir.attachment records linked to the parent Odoo record. A delta-sync window captures in-flight changes during cutover. Automations, scheduling rules, dispatch logic, and notification triggers built in Field Nexus cannot migrate — they require manual reconstruction in Odoo using Odoo Studio or automation rules. FlitStack exports your automation definitions as a reference document for that rebuild.
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 Field Nexus 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.
Field Nexus
Customer
Odoo CRM
res.partner
1:1Field Nexus customers map directly to Odoo res.partner records. Customer name maps to name, email to email, phone to phone, and address fields to street, city, state, and country on the partner address sub-record. Multiple contacts per customer in Field Nexus each become separate res.partner records linked to the same parent partner.
Field Nexus
Company / Organisation
Odoo CRM
res.partner (company type)
1:1When Field Nexus stores an organisation-level account, it maps to a res.partner record with the company flag set to True. Individual contact persons at that organisation map as separate res.partner records with type set to contact and a parent_id link back to the company partner.
Field Nexus
Work Order
Odoo CRM
crm.lead
1:1Field Nexus work orders have no native equivalent in Odoo CRM. FlitStack maps work orders to crm.lead records using the opportunity model, with custom fields added on the Odoo side to store work_order_id, work_order_status, service_type, scheduled_date, technician_id, and service_address. The crm.lead name field holds the work order title, and stage maps from Field Nexus status values to Odoo stage names.
Field Nexus
Work Order
Odoo CRM
project.task (alternative)
1:1For teams using Odoo Project alongside CRM, work orders can alternatively map to project.task. This requires the Project app to be installed in Odoo. The task gets the same custom fields for work order metadata, and a project is pre-created to contain all migrated tasks. The approach choice is confirmed during the sample migration phase before full migration runs.
Field Nexus
Estimate / Quote
Odoo CRM
sale.order
1:1Field Nexus estimates map to Odoo sale.order records. Estimate number maps to name, customer to partner_id, line items to order_lines (product_id, product_uom_qty, price_unit, discount), and status maps to sale.order state: draft to Quotation, submitted to Sent, accepted to Sale Order. Tax handling requires Odoo tax configuration review since Field Nexus tax rules may differ.
Field Nexus
Invoice
Odoo CRM
account.move
1:1Field Nexus invoices map to Odoo account.move records with move_type set to out_invoice. Invoice number maps to ref, invoice date to invoice_date, due date to invoice_date_due, and line items to invoice_line_ids. The partner_id, amount_untaxed, amount_tax, and amount_total map directly. Payment status (paid, unpaid, partial) maps via the reconcile field on related account.move.line records.
Field Nexus
Team Member / Technician
Odoo CRM
res.users
1:1Field Nexus team members and technicians map to Odoo res.users records. Name maps to name, email to login (used as the username), and phone maps to phone on the related res.partner record created automatically for each user. Active status maps directly. Odoo user permissions and groups are not migrated and must be configured post-migration.
Field Nexus
Attachment / File
Odoo CRM
ir.attachment
1:1Field Nexus file attachments on work orders, customers, or invoices are downloaded and re-uploaded to Odoo ir.attachment records linked to the corresponding res.partner, crm.lead, or account.move. The original filename, file content, and create date are preserved. Odoo's attachment size limits apply — files exceeding 25MB require chunking or external storage configuration.
Field Nexus
Activity Log / Note
Odoo CRM
mail.message
1:1Field Nexus work order notes and activity history map to Odoo mail.message records attached to the parent crm.lead or res.partner. Original timestamps and the author name (resolved via email match to a res.users record) are preserved. Notes with internal flag set in Field Nexus map to Odoo's internal note visibility.
Field Nexus
Custom Field
Odoo CRM
ir.model.fields (x_custom field)
1:1Every custom field defined in Field Nexus requires a corresponding custom field to be pre-created in Odoo before migration runs. FlitStack delivers a custom field creation plan specifying the field name, type (char, date, datetime, selection, float, integer), and target model (res.partner, crm.lead, sale.order, account.move, res.users). This plan is reviewed during the pre-migration schema setup step.
Field Nexus
Scheduling / Dispatch Data
Odoo CRM
Custom fields on crm.lead or project.task
1:1Field Nexus scheduling windows and dispatch assignments have no native Odoo equivalent. FlitStack stores scheduled_date, scheduled_time_window, assigned_technician, and dispatch_status as custom fields on the migrated crm.lead or project.task. For teams needing a full scheduling board, a separate project with task dependencies can be configured post-migration.
Field Nexus
Workflow / Automation
Odoo CRM
None — must be rebuilt
1:1Field Nexus automations including scheduling rules, dispatch triggers, status-change notifications, and approval workflows cannot be exported or migrated. They must be rebuilt manually in Odoo using automation rules (available in CRM and Project apps) or external tools. FlitStack exports a structured document listing each active automation with its trigger conditions and actions as a rebuild reference.
| Field Nexus | Odoo CRM | Compatibility | |
|---|---|---|---|
| Customer | res.partner1:1 | Fully supported | |
| Company / Organisation | res.partner (company type)1:1 | Fully supported | |
| Work Order | crm.lead1:1 | Fully supported | |
| Work Order | project.task (alternative)1:1 | Fully supported | |
| Estimate / Quote | sale.order1:1 | Fully supported | |
| Invoice | account.move1:1 | Fully supported | |
| Team Member / Technician | res.users1:1 | Fully supported | |
| Attachment / File | ir.attachment1:1 | Fully supported | |
| Activity Log / Note | mail.message1:1 | Fully supported | |
| Custom Field | ir.model.fields (x_custom field)1:1 | Fully supported | |
| Scheduling / Dispatch Data | Custom fields on crm.lead or project.task1:1 | Fully supported | |
| Workflow / Automation | None — must be rebuilt1:1 | 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.
Field Nexus gotchas
No documented API — migration requires manual web exports
No published pricing — upgrade path and tier limits unknown
Payment link references may not survive schema translation
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
Assess Field Nexus data export options and Odoo schema setup
FlitStack connects to Field Nexus via API (Enterprise plans) or CSV export (Community plans) to audit available objects, custom fields, and record counts. We simultaneously review your target Odoo instance to confirm which apps are installed (CRM, Project, Accounting) and identify any custom fields that must be pre-created. This step produces a migration readiness report: list of objects to migrate, custom field creation plan, and the chosen work order strategy (crm.lead with custom fields or project.task). No data is modified in either system at this stage.
Pre-create Odoo custom fields and resolve user accounts
Before any records move, FlitStack delivers the custom field creation plan and your Odoo admin creates the required fields on res.partner, crm.lead, sale.order, account.move, and res.users. Team members from Field Nexus are resolved against existing Odoo users by email match; unmatched technicians are flagged and assigned to a fallback Odoo user. Custom fields are created in Odoo Studio or via the Settings > Technical > Custom Fields interface. This step ensures the Odoo schema can accept migrated data without type errors on the first data load.
Run sample migration and generate field-level diff
A representative slice of 100–500 records — spanning customers, work orders, estimates, invoices, and team members — migrates first. FlitStack generates a field-level diff comparing source values from Field Nexus against the migrated Odoo records. You review the diff to confirm work order status mapping, technician resolution, custom field population, and address handling before the full migration commits. This is the decision gate: if custom field mapping or work order strategy needs adjustment, it is corrected before the full run.
Execute full migration and delta-pickup window
The full data migration runs against Odoo: customers to res.partner, work orders to crm.lead (or project.task), estimates to sale.order, invoices to account.move, and team members to res.users. Attachments are downloaded from Field Nexus and re-uploaded to the corresponding Odoo records as ir.attachment entries. A delta-pickup window opens at cutover — typically 24–48 hours — capturing any records modified in Field Nexus during the migration run. FlitStack writes a full audit log of every record created, updated, or skipped.
Reconciliation check and automation rebuild reference delivery
After the delta-pickup closes, FlitStack runs a reconciliation report comparing record counts and key field totals between Field Nexus and Odoo. Any orphaned records, unmatched foreign keys, or missing custom field data is flagged for manual resolution. The automation reference document — listing all active Field Nexus automations with their trigger-action logic — is delivered as a structured PDF. One-click rollback is available within 48 hours of go-live if the reconciliation reveals material discrepancies. Your Odoo admin then begins the automation rebuild using the reference document and Odoo's automation rules.
Platform deep dives
Field Nexus
Source
Strengths
Weaknesses
Odoo CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between Field Nexus and Odoo CRM.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Field Nexus and Odoo CRM.
Object compatibility
All 8 core objects map 1:1 between Field Nexus and Odoo CRM.
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
Field Nexus: Not publicly documented.
Data volume sensitivity
Field Nexus 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 Field Nexus to Odoo CRM migration scoping. Not seeing yours? Book a call.
Walk through your Field Nexus 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 Field Nexus
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.