CRM migration
Field-level mapping, validation, and rollback between Onsite CRM and Zoho CRM. We move data and schema; workflows are rebuilt natively in Zoho CRM.
Onsite CRM
Source
Zoho CRM
Destination
Compatibility
8 of 10
objects map 1:1 between Onsite CRM and Zoho CRM.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Onsite CRM to Zoho CRM is a CSV-first migration because Onsite CRM has no publicly documented REST API, SDK, or webhook infrastructure according to apitracker.io. All data extraction relies on in-app CSV exports from the Weebly-hosted Onsite CRM environment, which constrains export volume and field coverage compared to API-based migrations. We scope the export capabilities during discovery, flag any records that exceed UI export limits, and design the Zoho destination schema with attention to Zoho's 300-field-per-module ceiling and its 5-lookup-field limit on standard modules. Activities (call logs, SMS threads, email records) transfer to Zoho's Notes, Tasks, and Events modules, but the richness of historical activity export depends on what the Onsite CRM UI exposes in a single download. We do not migrate Workflows, Sequences, or automations as code; we deliver a written inventory of any Onsite CRM automation for the customer's Zoho admin to rebuild using Blueprint and Workflow Rules post-migration.
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 Onsite CRM object lands in Zoho CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Onsite CRM
Contact
Zoho CRM
Contact
1:1Onsite CRM Contact records map directly to Zoho CRM Contacts. Standard fields (First Name, Last Name, Email, Phone, Mobile, Address) transfer 1:1 via CSV column mapping. The Onsite CRM contact-company association maps to Zoho's Look Up relation via the Company Name field. Any custom fields on the Contact object require manual type-mapping during scoping against Zoho's supported field types (string, integer, decimal, date, picklist, multi-select, phone, email, URL).
Onsite CRM
Company
Zoho CRM
Account
1:1Onsite CRM Company records map to Zoho CRM Accounts. Company Name becomes Account Name; Industry, Website, and Address fields map to their Zoho equivalents. We extract Companies first in the migration sequence so that Account records exist before Contact import resolves the Look Up relation. If Onsite CRM exposes a parent-company hierarchy, we map it to Zoho's Account Hierarchy via the Parent Account Look Up field.
Onsite CRM
Deal
Zoho CRM
Deal
1:1Onsite CRM Deal records map to Zoho CRM Deals. Deal Name, Amount, Close Date, and Stage transfer directly. The Onsite CRM deal-owner maps to Zoho's Owner Look Up via email resolution. If Onsite CRM exposes a deal-contact or deal-company relation, we map it to Zoho's Related To Look Up fields on the Deal. Closed-won and closed-lost reasons from Onsite CRM custom fields map to Zoho's Loss Reason and Won Reason picklist fields.
Onsite CRM
Pipeline Stage
Zoho CRM
Stage
lossyOnsite CRM pipeline stages are extracted from the Deals export as distinct stage values. We configure Zoho's Pipeline and Stage structure to mirror the source stage sequence. Probability percentages from Onsite CRM map to Zoho's Stage Probability field per stage. If Onsite CRM exposes multiple pipelines, we provision multiple Zoho Pipelines and map each deal to its corresponding pipeline via the Pipeline Name field during import.
Onsite CRM
Activity (Call, SMS, Email)
Zoho CRM
Task, Event, or Note
1:1Onsite CRM activity records (calls, SMS, email logs) map to Zoho CRM Tasks and Notes depending on the activity type. Call records map to Task with Task Type = Call and Sub-Type = Outbound or Inbound. SMS threads map to Notes attached to the parent Contact or Deal. Email records map to Tasks or Notes based on whether the export includes body content or only metadata. We set the Activity Date on each Zoho record to the original Onsite CRM timestamp to preserve chronological ordering. This mapping depends on what the Onsite CRM CSV export exposes for activity records; limited activity export is a known constraint of the source platform.
Onsite CRM
Task
Zoho CRM
Task
1:1Onsite CRM Task records (reminders, follow-ups) map directly to Zoho CRM Tasks. Due Date, Status, Priority, and Subject transfer directly. Assigned To maps via email resolution to Zoho Owner. We set the Zoho Task Status to Not Started or Completed based on the completion flag in the source export. Recurring tasks are not preserved as recurring patterns in Zoho; each instance migrates as an individual task record.
Onsite CRM
Custom Field
Zoho CRM
Custom Field
lossyOnsite CRM custom fields on any object (Contact, Company, Deal) require manual mapping during scoping. We extract the full list of custom field names and their data types from the CSV export headers, then configure matching custom fields in Zoho CRM under the appropriate module before migration. Zoho's 300-field-per-module ceiling and 5-lookup-field limit per module are checked against the source field count; any overflow is flagged for the customer to prioritize or archive.
Onsite CRM
Tag
Zoho CRM
Tag
1:1Onsite CRM tags applied to Contacts or Deals migrate as Zoho Tags. Tags are extracted from the source export as a multi-value field and mapped to Zoho's tag__split values on the target record. We normalize tag capitalization and remove duplicates during the transform phase. Zoho's tag limit per record is high enough for typical migration use cases.
Onsite CRM
User
Zoho CRM
User
1:1Onsite CRM User records (sales reps, admins) are mapped to Zoho CRM Users via email address match. We extract all unique owner references from Contact, Company, and Deal records, resolve each against the Zoho destination User table, and flag any owner without a matching Zoho User for manual provisioning before the main migration run. The customer's Zoho admin provisions missing users in Zoho Settings before we proceed to record import.
Onsite CRM
Document (file attachment reference)
Zoho CRM
Attachment
1:1Onsite CRM does not appear to have a structured document management object in its data model. File attachments referenced in Onsite CRM activity records may not have a downloadable export path. We flag this as a limitation during scoping and advise customers to document any attachment URLs or file names manually for post-migration re-upload to Zoho's Attachments module.
| Onsite CRM | Zoho CRM | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Deal | Deal1:1 | Fully supported | |
| Pipeline Stage | Stagelossy | Fully supported | |
| Activity (Call, SMS, Email) | Task, Event, or Note1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Custom Field | Custom Fieldlossy | Fully supported | |
| Tag | Tag1:1 | Fully supported | |
| User | User1:1 | Fully supported | |
| Document (file attachment reference) | Attachment1: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.
Onsite CRM gotchas
No public API documentation found
Weebly-hosted infrastructure limits data access
Limited historical activity export
Zoho CRM gotchas
API access requires Professional tier or above
Subform fields do not export cleanly via CSV
API credit consumption is non-linear
Export download links expire in 7 days
Owner (User) assignments require pre-mapped user IDs
Pair-specific challenges
Migration approach
Discovery and export capability assessment
We conduct a scoping call to identify every Onsite CRM object in use (Contacts, Companies, Deals, Pipeline Stages, Activities, Tasks, Custom Fields, Tags). We request a sample CSV export from the customer to inspect field coverage and export formatting. We review screenshots of the Onsite CRM UI to confirm what objects and fields are visible in the application versus what may exist in the database but not in the export. The discovery output is a written scoping document that lists all migratable objects, any export gaps identified, and a Zoho destination schema sketch.
Full CSV export and data quality audit
The customer performs a full export of all Onsite CRM objects from the in-app export function. We split multi-object exports into separate CSV files per module. We run a data quality audit that identifies duplicate records (same email appearing multiple times in Contacts), missing required fields (Contacts with no email or name), inconsistent date formats, and non-UTF-8 character encoding issues. We produce a data quality report and a data cleansing checklist that the customer completes before we begin the transform phase.
Zoho destination schema provisioning
We configure the Zoho CRM destination environment before any data loads. This includes creating custom fields to match Onsite CRM custom fields (with type mapping: string to varchar, number to integer or decimal, date strings to Zoho date fields), setting up Pipelines and Stages to mirror the source pipeline configuration, provisioning Look Up relationships (Account on Contact, Account and Contact on Deal), and configuring Tags. We deploy the schema in a Zoho Sandbox or staging org first for validation. User accounts in Zoho are provisioned by the customer's admin; we provide an email-resolved owner mapping table to guide provisioning.
Test migration and mapping validation
We run a test migration using a subset of the exported data (typically the 50-100 most complex records: multi-custom-field Contacts, multi-tag Deals, multi-activity records) into the Zoho staging environment. We validate field mapping accuracy, look-up relationship resolution (Contact to Account, Deal to Contact and Account), date format preservation, and tag normalization. The customer reviews the staging records against the source CSV and approves the mapping before we proceed to full production migration.
Production migration in dependency order
We run production migration in record-dependency sequence: Accounts (from Companies) first, then Contacts with Account Look Up resolved, then Deals with Account and Contact Look Ups resolved, then Tasks, then Activity records. Each phase produces a row-count reconciliation report comparing exported source record count against inserted Zoho record count. Any discrepancy triggers an investigation before the next phase begins. Owner references are resolved via email lookup against the Zoho User table; unresolved owners are held in a reconciliation queue for the admin to resolve.
Cutover, validation, and automation inventory delivery
We run a final delta migration of any records modified in Onsite CRM during the migration window. We validate record counts, spot-check 25-50 records across objects against the source export, and confirm that Activity timestamps are preserved on the correct parent record. We deliver the automation inventory document listing any Onsite CRM outreach sequences, auto-responders, or assignment rules that require manual rebuild in Zoho Blueprint or Workflow Rules. We provide a one-week hypercare window for reconciliation issues raised during the customer's first week in Zoho CRM.
Platform deep dives
Onsite CRM
Source
Strengths
Weaknesses
Zoho 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 Onsite CRM and Zoho 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
Onsite CRM: Not publicly documented.
Data volume sensitivity
Onsite 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 Onsite CRM to Zoho CRM migration scoping. Not seeing yours? Book a call.
Walk through your Onsite CRM to Zoho 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 Onsite CRM
Other ways to arrive at Zoho 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.