CRM migration

Migrate from Giva eHelpDesk to Odoo CRM

Field-level mapping, validation, and rollback between Giva eHelpDesk and Odoo CRM. We move data and schema; workflows are rebuilt natively in Odoo CRM.

Giva eHelpDesk logo

Giva eHelpDesk

Source

Odoo CRM

Destination

Odoo CRM logo

Compatibility

100%

12 of 12

objects map 1:1 between Giva eHelpDesk and Odoo CRM.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Giva eHelpDesk is a cloud-native service-desk and ITSM platform built around tickets, customers, knowledge-base articles, and asset records, with a strong focus on HIPAA compliance for healthcare and regulated industries. Odoo CRM uses a fundamentally different model: res.partner for all contacts and organizations, crm.lead for both leads and opportunities (with stage-based conversion), and ir_attachment for files. The migration carries all standard objects — customers, contacts, service requests, knowledge-base articles, and attachments — into Odoo's relational model via XML-RPC API, with a sample-and-diff pass before the full run commits. Giva's automated service-desk rules, approval chains, and SLA timers have no Odoo equivalent and must be rebuilt post-migration using Odoo's automation rules and Studio. FlitStack exports your Giva workflow definitions as a reference document so your Odoo admin can redesign them in the new system. The process preserves original create and write timestamps on every record, maintains the owner and assignee links, and includes a 24–48 hour delta pickup window for changes made during cutover.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Giva eHelpDesk logo

Giva eHelpDesk

What's pushing teams away

  • Limited ecosystem integrations with tools like Slack and Firebase disrupt workflows and force teams to maintain workarounds or supplementary systems.
  • Frequent updates introduce server connection issues and time delays that frustrate agents who expect reliable real-time access during their shifts.
  • Less suited for enterprise scale — organizations with large agent counts or complex multi-department structures find Giva's reporting depth and customization insufficient.
  • The inability to move tickets between Service Desks and the lack of questionnaire copy functionality are specific workflow gaps that drive dissatisfaction among multi-team support organizations.
  • UI and reporting inconsistencies across updates mean teams cannot always trust that dashboards and exports behave predictably over time.

Choosing

Odoo CRM logo

Odoo CRM

What's pulling them in

  • Teams choose Odoo CRM for its modular architecture — one base install with one-click app additions means they can adopt CRM alone and add accounting, inventory, or sales later as the business grows.
  • Small businesses pick Odoo because the Community edition is free and open-source, with no per-user or contact limits, allowing full evaluation before committing to a paid Enterprise tier.
  • The drag-and-drop Kanban pipeline and AI lead scoring are highlighted across G2 reviews as concrete features that make lead management faster and more visual than spreadsheet-based workflows.
  • Odoo's native integration with email, live chat, SMS, VoIP, and WhatsApp means inbound leads from multiple channels feed into a single pipeline without third-party middleware.
  • Companies in retail, supply chain, and construction value that Odoo's CRM module shares the same PostgreSQL database and UI as its ERP modules, eliminating data silos between sales and operations.

Object mapping

How Giva eHelpDesk objects map to Odoo CRM

Each row shows how a Giva eHelpDesk 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.

Giva eHelpDesk

Customer

maps to

Odoo CRM

res.partner

1:1
Fully supported

Giva customers map directly to Odoo res.partner records. The partner's type field (company vs. individual) determines whether it is created as a company or individual contact. Giva contact records with no associated customer require a separate res.partner of type 'individual'.

Giva eHelpDesk

ServiceRequest

maps to

Odoo CRM

crm.lead

1:1
Fully supported

Giva service requests become Odoo crm.lead records. The Giva status field determines the Odoo lead_type: 'New' and 'Open' requests land as type 'lead'; 'Resolved' or 'Closed' requests with a linked customer become type 'opportunity'. Priority, request type, and category are stored as custom fields on crm.lead.

Giva eHelpDesk

ServiceRequest.priority

maps to

Odoo CRM

crm.lead (custom field)

1:1
Fully supported

Giva priority levels (Low, Medium, High, Critical) have no native Odoo equivalent on crm.lead. We create a selection custom field (Priority__c) in Odoo Studio before import and preserve exact Giva priority values. The custom field uses the same selection options as Giva to maintain triage continuity in Odoo's lead list view.

Giva eHelpDesk

ServiceRequest.request_type

maps to

Odoo CRM

crm.lead (custom field)

1:1
Fully supported

Giva request types (Incident, Service Request, Problem) are preserved as a custom selection field on crm.lead (Request_Type__c) since Odoo's default crm.lead model does not carry a request-type property. This ensures the original categorization survives the migration and remains available for filtering and reporting in Odoo.

Giva eHelpDesk

ServiceRequest.category

maps to

Odoo CRM

crm.lead.tag_ids

1:1
Fully supported

Giva request categories translate to Odoo tags on crm.lead. Each unique Giva category becomes a tag in Odoo. Tags are created during the pre-migration schema setup phase and linked during import. This mapping allows your team to filter leads by the original Giva category without requiring custom field creation.

Giva eHelpDesk

KnowledgeArticle

maps to

Odoo CRM

documents.document / ir.ui.view

1:1
Fully supported

Odoo has no native knowledge-base article model in the base CRM module. Articles are migrated as Odoo Documents records (documents.document) with title, content, and source URL preserved. Access-control lists from Giva cannot be translated directly and require manual Odoo permission-group assignment post-migration.

Giva eHelpDesk

Attachment / File

maps to

Odoo CRM

ir_attachment

1:1
Fully supported

Giva file attachments on service requests are imported as ir_attachment records linked to the corresponding crm.lead via res_model and res_id. Large files are chunked to respect Odoo's attachment size limits. Original filenames and MIME types are preserved. Binary content is decoded from base64 during import to populate Odoo's datas field directly.

Giva eHelpDesk

Giva Custom Fields

maps to

Odoo CRM

Custom fields on res.partner / crm.lead

1:1
Fully supported

Giva custom fields (SLA timers, health scores, compliance flags) are created in Odoo Studio as matching field types before import. Selection-type custom fields in Giva become Odoo selection fields; numeric fields become float or integer; text fields become char or text.

Giva eHelpDesk

Giva User / Technician

maps to

Odoo CRM

res.users

1:1
Fully supported

Giva users are resolved against Odoo res.users by email address match. Unmatched technicians are flagged pre-migration — you either create their Odoo user account first or assign their records to a fallback user. Deactivated Giva users are preserved as a custom lookup field rather than active Odoo users.

Giva eHelpDesk

Giva SLA Agreement

maps to

Odoo CRM

crm.lead (custom field)

1:1
Fully supported

Odoo Community lacks a native SLA tracking module for CRM. SLA agreement names, response-time targets, and breach flags from Giva are stored as custom fields on crm.lead (SLA_Name__c, SLA_Response_Hours__c). Odoo Enterprise add-ons can provide native SLA tracking if you upgrade.

Giva eHelpDesk

Giva Company Hierarchy

maps to

Odoo CRM

res.partner.parent_id

1:1
Fully supported

Giva parent-child company relationships map to res.partner.parent_id in Odoo. Parent companies must be migrated first to avoid circular-reference errors. FlitStack flags any circular hierarchy in the Giva data before import order is finalized. This ensures parent_id links resolve correctly during the res.partner batch import phase.

Giva eHelpDesk

Giva Customer Health Score

maps to

Odoo CRM

res.partner (custom field)

1:1
Fully supported

Giva health-score ratings have no Odoo CRM equivalent. The score is stored as a custom float field (Health_Score__c) on res.partner so it remains visible in Odoo's partner form view. The scoring model itself needs to be re-implemented in Odoo's automation or custom logic post-migration.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Giva eHelpDesk logo

Giva eHelpDesk gotchas

High

No documented public API for bulk data export

Medium

Knowledge base articles are decoupled from ticket objects

Medium

AI Copilot settings and trained knowledge bases cannot be transferred

Low

Cross-Service Desk ticket moves are not supported by Giva

Odoo CRM logo

Odoo CRM gotchas

High

Odoo.sh version gating blocks assisted migrations from trial

High

Enterprise modules fail to install on Community after database restore

Medium

Custom module view inheritance breaks between Odoo major versions

Medium

Custom fields risk losing their application context on Community

Low

API access for Community is gated behind the Custom Plan

Pair-specific challenges

  • Giva service-request status does not map 1:1 to Odoo lead_type — Open requests become leads, closed requests become opportunities

    Giva service requests carry lifecycle statuses (New, Open, Pending, Resolved, Closed) that do not correspond directly to Odoo's lead_type field on crm.lead. We apply a status-based routing rule: Giva 'New' and 'Open' requests land as Odoo 'lead'; Giva 'Resolved' or 'Closed' requests with a linked customer land as 'opportunity'. This preserves the request history while fitting Odoo's two-state model. Requests that never linked to a customer land as leads regardless of status. Priority and request type values are preserved as custom selection fields on crm.lead so the original triage information is not lost.

  • Giva HIPAA compliance does not transfer to Odoo Community — compliance configuration must be rebuilt

    Giva eHelpDesk ships with built-in HIPAA and HITECH compliance controls for healthcare deployments. Odoo Community has no native HIPAA compliance layer — the database runs on PostgreSQL with no automatic PHI safeguards, audit logging, or access-control extensions unless built custom or sourced as a third-party module. We flag any Giva custom fields tagged as PHI-related and store them as flagged custom fields in Odoo. Your compliance team must configure Odoo's access-control groups, audit logging, and any required encryption before the system handles regulated data.

  • Odoo has no native knowledge-base model — Giva KB articles migrate as Documents records, not a native help-center

    Giva knowledge-base articles use a dedicated KB model with categories, article IDs, body content, and access-control lists. Odoo's base CRM module has no native knowledge-base table — the closest built-in construct is documents.document for file storage. We migrate articles as Odoo Documents records linked to a pre-created folder hierarchy matching Giva categories. Article access-control lists from Giva cannot be translated to Odoo permission groups automatically; an Odoo administrator must assign document folder access to the appropriate Odoo groups post-migration.

  • Giva SLA timers and agreement data require custom fields in Odoo — the SLA tracking model is not native to Community

    Giva service requests carry SLA agreement names, response-hour targets, and breach flags that Odoo Community does not track on crm.lead. The Odoo helpdesk_sla module (part of Odoo Enterprise) provides SLA tracking, but it is not available in Community. We preserve SLA names as a custom char field (SLA_Name__c) and SLA response-hour targets as a custom float field (SLA_Response_Hours__c) on crm.lead. If you are on Odoo Enterprise, the helpdesk_sla module can be enabled to provide native SLA monitoring after migration.

  • Giva automated service-desk rules, macros, and approval chains have no Odoo equivalent and must be rebuilt

    Giva ITSM includes automated workflow rules (auto-assign, auto-escalate, auto-close), canned macros for ticket creation, and multi-step approval chains tied to SLA timers. These constructs use Giva's internal rule engine and have no structural equivalent in Odoo's automation rules or Studio. The data inside these rules — conditions, actions, assignment logic — cannot be exported in a form that Odoo can import. FlitStack exports the rule definitions from Giva as a structured reference document your Odoo admin uses to rebuild equivalent automations using Odoo's ir.actions.server, base.automation, and Studio automation tools.

Migration approach

Six steps for a successful Giva eHelpDesk to Odoo CRM data migration

  1. Giva API export and schema audit

    FlitStack connects to your Giva instance via scoped read-access API and extracts the full object inventory: customers, service requests, knowledge-base articles, attachments, custom fields, and user accounts. We audit the schema for circular company hierarchies, orphaned records, custom field data types, and SLA field presence. The audit output is a migration plan listing which objects will map to which Odoo models and which fields require Odoo Studio creation before import.

  2. Odoo schema pre-creation

    Before data lands in Odoo, your admin (or our team via Odoo Studio) creates the custom fields identified in the audit: Priority__c and Request_Type__c on crm.lead, Health_Score__c and SLA_Name__c on res.partner, Source_System__c, Original_Create_Date__c, and Original_Modified_Date__c. Tags matching Giva categories are created under CRM > Tags. Documents folders matching Giva KB categories are set up under Documents. Odoo crm.team records are created to match Giva team names.

  3. User resolution by email

    Giva technician and assignee email addresses are matched against Odoo res.users records using exact email matching. This cross-reference ensures that service requests retain their original owner assignments after migration. Unmatched technicians appear in a pre-flight report where you decide whether to create their Odoo user account before migration or route their records to a designated fallback user. Inactive Giva users are mapped to inactive Odoo users with their original email preserved in a custom field for future reference.

  4. Sample migration with field-level diff

    A representative slice of 100–500 records (spanning customers, service requests, knowledge articles, and attachments) migrates first. FlitStack generates a field-level diff comparing source values against the Odoo record, verifying priority mapping, lead_type routing, tag creation, and attachment linkage. You review the diff and approve before the full run commits. This pass also surfaces any Giva KB HTML that requires special handling during body conversion.

  5. Full migration with delta-pickup window

    The full dataset migrates via Odoo's XML-RPC API in ordered batches: res.partner first (for foreign-key resolution), then crm.lead with resolved user_id and team_id links, then ir_attachment linked to crm.lead records, then documents.document for knowledge-base articles. A 24–48 hour delta-pickup window runs concurrently with your team continuing to work in Giva, capturing any records modified or created during cutover. An audit log records every imported record with source system ID for reconciliation.

  6. Post-migration validation and workflow reference handoff

    FlitStack runs record-count validation (source vs. destination), relationship integrity checks (crm.lead to res.partner links, ir_attachment to crm.lead links), and custom-field completeness checks. You receive a Giva workflow-export document listing all automated rules, macros, and approval chains as a text reference for your Odoo admin to rebuild. One-click rollback is available if reconciliation reveals record-count gaps exceeding the agreed tolerance threshold.

Platform deep dives

Context on both ends of the pair

Giva eHelpDesk logo

Giva eHelpDesk

Source

Strengths

  • HIPAA compliance with signed Business Associate Agreement for healthcare and regulated-industry deployments.
  • ITIL-aligned incident, problem, change, and service request management built into the core subscription.
  • Natural language and Boolean search across the knowledge base with synonym and root-word stemming capabilities.
  • SaaS deployment with no coding or programming required for initial configuration.
  • CMDB with hardware asset management and software license tracking linked to change requests.

Weaknesses

  • Limited ecosystem with sparse third-party integrations, particularly for modern collaboration tools like Slack and Firebase.
  • No free version available; pricing is not publicly documented and requires a sales contact for a quote.
  • Frequent updates have been reported to introduce server connection issues and time delays during agent use.
  • Reporting and dashboard depth varies across releases, making consistent analytics difficult for some organizations.
  • Absence of bulk API export means data extraction relies on paginated API calls or manual exports, which adds time to migration scoping.
Odoo CRM logo

Odoo CRM

Destination

Strengths

  • Modular open-source architecture lets teams start with CRM and add ERP apps as needs grow, all sharing one PostgreSQL database.
  • Free Community edition with no contact limits and full source code access means zero licensing cost for evaluation and small deployments.
  • Drag-and-drop Kanban pipeline with AI lead scoring gives a visual, prioritized view of the sales funnel without requiring custom configuration.
  • Native integrations with email, live chat, SMS, VoIP, WhatsApp, and social media feed all inbound leads into a single unified inbox.
  • Active Odoo Community Association (OCA) maintains dozens of community-maintained modules on GitHub for extended functionality.

Weaknesses

  • Gmail and email integration reliability is a recurring complaint — threads drop and conversations scatter across inboxes, disrupting sales team workflows.
  • Enterprise edition pricing stacks quickly: multiple apps at per-user rates ($25–$50/user/month) plus Odoo.sh hosting costs more than many SMBs anticipate.
  • Setup and configuration complexity increases significantly once custom fields, automation rules, and multiple installed modules are in play.
  • Odoo.sh trial databases run on a version (e.g., 18.3) that is not directly migratable to Odoo.sh, blocking the assisted migration path Odoo advertises.
  • Version upgrades between major Odoo releases (e.g., 17→18) frequently break custom module view definitions and XPath expressions, requiring manual remediation.

Complexity grading

How hard is this migration?

Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Giva eHelpDesk and Odoo CRM.

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Giva eHelpDesk: Not publicly documented.

  • Data volume sensitivity

    B

    Giva eHelpDesk doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Giva eHelpDesk to Odoo CRM migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Giva eHelpDesk to Odoo CRM data migrations

Answers to the questions buyers ask most during Giva eHelpDesk to Odoo CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Giva eHelpDesk to Odoo CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Giva-to-Odoo migrations complete in 48–72 hours of clock time for under 50,000 records. Larger datasets with 500,000+ records, heavy custom fields (SLA timers, health scores), or a large knowledge-base (500+ articles) extend to 5–7 days. The Odoo schema pre-creation phase — building custom fields in Odoo Studio and setting up tag and folder hierarchies — runs in parallel before the data-import phase begins.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Giva eHelpDesk.
Land in Odoo CRM, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day