CRM migration
Field-level mapping, validation, and rollback between Customer Database App and Pipedrive. We move data and schema; workflows are rebuilt natively in Pipedrive.
Customer Database App
Source
Pipedrive
Destination
Compatibility
9 of 11
objects map 1:1 between Customer Database App and Pipedrive.
Complexity
BStandard
Timeline
1-2 weeks
Overview
Customer Database App holds customer data as flat contact records with user-defined fields and a Kanban pipeline; it has no public API and no deal object. Pipedrive uses a structured data model with Persons, Organizations, Deals, Labels, and custom fields. The migration path runs through CSV export only — there is no automated connection between the two platforms — which means we infer the active schema from the exported column headers before mapping to Pipedrive. Pipeline stages from Customer Database App become Pipedrive Deal stages; groups and tags become Pipedrive Labels; and free-text custom fields become Pipedrive custom fields typed by content analysis. Vouchers, phone call history, and any transient device-level records do not migrate. Automations and pipeline views built in Customer Database App have no equivalent to rebuild in Pipedrive and are delivered as a written inventory for the admin to recreate 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 Customer Database App object lands in Pipedrive, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Customer Database App
Contact
Pipedrive
Person
1:1Customer Database App contact records map directly to Pipedrive Person records. The contact name, phone, email, address, and any free-text fields from the CSV export map to Pipedrive's standard Person fields. We infer field types from the exported content (numeric strings become number fields, ISO dates become date fields, short text becomes short text) and create Pipedrive custom fields for any field that does not have a standard equivalent. The Person's primary email is stored in the email_addresses JSON field and must be de-duplicated against existing Pipedrive Persons before insert using name-and-email as the dedupe key.
Customer Database App
Contact (company field if present)
Pipedrive
Organization
1:1If the Customer Database App export contains a company or organization column — which some users populate despite the app not enforcing it — we extract those values and create Pipedrive Organizations. Each Person is then linked to its parent Organization via the org_id field. If no company field is populated in the export, we skip Organization creation and map all Persons without a parent org, which is valid in Pipedrive and common for small teams migrating from flat contact tools.
Customer Database App
Custom Properties
Pipedrive
Custom Fields
lossyEvery Customer Database App installation has a unique field set with no canonical schema. We infer the active field list from the CSV column headers and assign Pipedrive field types by content sampling: numeric-only values become number fields, ISO 8601 dates become date fields, Y/N or boolean strings become checkbox fields, and free-text values become long text or short text depending on character count. Custom fields are pre-created in Pipedrive before any Person import so that the import payload includes valid field IDs. Fields with comma-separated multi-value strings are split and stored as Pipedrive label associations or multiselect custom fields depending on the customer's preferred structure.
Customer Database App
Pipeline Stage
Pipedrive
Deal Stage
lossyCustomer Database App stores pipeline stage as a text property on each contact record (for example, 'Lead', 'Qualified', 'Proposal', 'Won', 'Lost'). We extract the distinct stage values from the export, create a Pipedrive Deal pipeline with the corresponding stage names in the same order, and assign probability percentages that we agree upon with the customer during scoping. For each contact with a pipeline stage value, we also create a Pipedrive Deal record linked to the corresponding Person, carrying the stage and any associated value field from the export.
Customer Database App
Deal (value field)
Pipedrive
Deal
1:1Customer Database App users who track a monetary value or score as a custom field can have those values migrated into the corresponding Pipedrive Deal's amount field. We map the field by column name during scoping. Pipedrive Deals carry currency, close date, and probability alongside amount; we set these from the corresponding export columns where they exist. If no value field is present, we create Deals without an amount, which is valid and common for early-stage pipelines.
Customer Database App
Groups / Tags
Pipedrive
Label
1:1Customer Database App exports groups and tags as comma-separated label strings on each contact record. We split each comma-separated value into individual labels, create the Pipedrive Label record if it does not already exist, and associate all labels to the corresponding Person record via the label_ids array. Labels used for customer segmentation (for example, 'VIP', 'Referral', 'Enterprise') migrate cleanly; labels used for workflow routing are documented separately for the admin to recreate in Pipedrive's automation builder.
Customer Database App
Birthday
Pipedrive
Person birthday field
1:1Birthday stored as a date field on the Customer Database App contact record maps to Pipedrive's Person birthday field (birthday). We parse the date from the export and insert it into the birthday field on the Person record. If the date format in the export is non-standard (for example, a free-text field containing 'January 15' rather than '1985-01-15'), we flag the record for manual review before inserting and document the discrepancy in the migration report.
Customer Database App
Documents / Attachments
Pipedrive
Files
1:1Customer Database App exports contact images and PDF record exports as separate files alongside the CSV. We bundle these into a ZIP archive during extraction, map each file to its corresponding Person record by contact name or email match, and attach them as Pipedrive Files linked to the Person. File attachment to Persons is supported via Pipedrive's API and renders in the Person detail view. We handle filename encoding issues that arise from non-ASCII characters in the source filenames during the archive extraction step.
Customer Database App
Vouchers
Pipedrive
Not migrated
1:1Vouchers are a standalone app-specific object with no direct equivalent in Pipedrive's data model. Voucher balances, usage history, and voucher codes are not exported via CSV and cannot be migrated. We deliver a separate supplemental export of any voucher-related data the customer can provide, formatted as a CSV for manual re-entry or a separate tool. This limitation is documented in the migration scope before work begins.
Customer Database App
Phone Call History
Pipedrive
Not migrated
1:1Caller-ID logs and call history are transient device-level records that are not exported via CSV or VCF from Customer Database App. These records are not migrated. We recommend that the customer documents their call-handling procedures and inbound routing setup separately so that the Pipedrive telephony integration (native or via a provider such as Aircall, JustCall, or HubSpot's built-in phone) can be configured post-migration to capture future call history.
Customer Database App
Owner
Pipedrive
User
1:1Customer Database App has no multi-user ownership model — all contacts are stored in a shared database without per-record owner assignment. Pipedrive requires an OwnerId on each Person and Deal record. During scoping, we confirm whether the customer plans to provision Pipedrive user accounts for each team member. If so, we create a mapping from a designated owner field (for example, a custom 'assigned_to' field populated before export) to Pipedrive User. If no owner field exists in the export, we assign all migrated records to the customer's primary Pipedrive admin user, and the admin distributes ownership after migration.
| Customer Database App | Pipedrive | Compatibility | |
|---|---|---|---|
| Contact | Person1:1 | Fully supported | |
| Contact (company field if present) | Organization1:1 | Fully supported | |
| Custom Properties | Custom Fieldslossy | Mapping required | |
| Pipeline Stage | Deal Stagelossy | Fully supported | |
| Deal (value field) | Deal1:1 | Fully supported | |
| Groups / Tags | Label1:1 | Mapping required | |
| Birthday | Person birthday field1:1 | Fully supported | |
| Documents / Attachments | Files1:1 | Mapping required | |
| Vouchers | Not migrated1:1 | Not supported | |
| Phone Call History | Not migrated1:1 | Not supported | |
| Owner | User1: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.
Customer Database App gotchas
No API means migration runs through CSV exports only
User-defined schema creates field mapping ambiguity
MySQL sync creates a parallel data source that must be reconciled
Voucher and birthday objects have no standard CRM equivalent
Pipedrive gotchas
Custom field hash keys differ per account
Export access gated by visibility groups
Token-based API rate limits since December 2024
Sequences and Automations not exposed via REST API
Cost escalates via workflow caps and add-ons
Pair-specific challenges
Migration approach
Discovery and export extraction
We request a full CSV export from the Customer Database App admin panel covering all contacts, their custom field values, pipeline stage assignments, group memberships, and any birthday or company data. If the MySQL sync option is enabled, we also request read access to the MySQL database to determine which source is more complete. We count records, list column headers, sample field values for type inference, and identify the contact-to-owner mapping strategy. The output is a written migration scope with the inferred schema, record counts per object, and a data quality report flagging empty required fields and duplicate email addresses.
Schema design in Pipedrive
We create the destination structure in Pipedrive before any data is loaded. This includes pre-creating all inferred custom fields with correct field types (text, number, date, checkbox, multiselect), configuring a Deal pipeline with stages mapped from the Customer Database App stage values, creating Labels for each distinct group and tag value, and provisioning Pipedrive Users for each team member who will hold migrated records. We deploy this configuration to a Pipedrive sandbox or directly to the production org with the customer's approval before the first data load begins.
CSV parsing, sanitization, and field type inference
We parse the exported CSV with attention to comma-containing free-text fields (quoted to prevent column shift), non-ISO date formats (flagged for manual review), and empty required fields (populated with a placeholder or excluded based on customer preference). For each column header, we infer the Pipedrive field type by sampling the first 100 non-empty values: numeric strings become number fields, date-like strings become date fields, Y/N values become checkbox fields, and everything else becomes text. We validate the type inference against a broader sample and correct any misclassification before inserting into Pipedrive.
Sandbox or pilot migration and reconciliation
For migrations above 500 records, we run a pilot migration into the customer's Pipedrive sandbox or into a dedicated test workspace before the production load. We reconcile record counts (Persons in, Deals in, Labels created), spot-check 20-30 random records against the source CSV, and confirm that custom field values populated correctly. The customer reviews and signs off the pilot results before we proceed to production. Any mapping corrections are applied to the migration script before the production run.
Production migration in dependency order
We run production migration in record-dependency order: Labels (created first, idempotently), Organizations (if present), Persons (with email dedupe check against existing Pipedrive records), Deals (linked to Persons by email match), Label associations (attached to Persons), custom field values (mapped by column name to pre-created field IDs), Files (attached to Persons by name or email match), and birthday dates (mapped to Person birthday field). Each phase emits a row-count reconciliation report before the next phase begins. We use Pipedrive's REST API with rate-limit handling and exponential backoff; we do not use the CSV import wizard for large migrations because it does not support custom field creation or label association in a single pass.
Cutover, validation, and automation handoff
We freeze writes in Customer Database App during the final delta pass, migrate any records modified during the migration window, then mark Pipedrive as the system of record. We deliver a written inventory of any Customer Database App pipeline views, group-based segmentations, and custom field groupings that require recreation in Pipedrive's automation builder and reporting views. We support a three-day post-migration review window where we resolve record-level reconciliation issues. We do not rebuild Customer Database App groupings as Pipedrive automation rules inside the migration scope; that is documented for the customer's admin to configure based on their preferred Pipedrive workflow.
Platform deep dives
Customer Database App
Source
Strengths
Weaknesses
Pipedrive
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 Customer Database App and Pipedrive.
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
Customer Database App: Not applicable — no API exists.
Data volume sensitivity
Customer Database App 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 Customer Database App to Pipedrive migration scoping. Not seeing yours? Book a call.
Walk through your Customer Database App to Pipedrive migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Customer Database App
Other ways to arrive at Pipedrive
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.