Data Migration from Salesforce to Bitrix24
The Challenge and Why Direct Migration Isn't Feasible
Salesforce stores data in its object model: Account, Contact, Lead, Opportunity, Task, Event. Each can have hundreds of custom fields. There is no direct import between Salesforce and Bitrix24. A successful Salesforce and Bitrix24 integration requires careful mapping and an intermediate layer: export through Salesforce API or Data Export, data transformation, and upload via Bitrix24 REST API. We have accumulated experience from dozens of successful migrations and guarantee data integrity. Typical migration costs for small businesses start at $1,500, while medium-sized projects range from $4,000 to $8,000. Our contact transfer from Salesforce ensures all records are correctly linked. Order a turnkey migration — we will evaluate your project in 1 day.
Salesforce uses its own object model with unique identifiers. Bitrix24 operates with its own structure of information blocks and CRM entities. Differences in field types (lookup, picklist, formula), phone number formats, and addresses require mandatory transformation. Additionally, Salesforce accumulates garbage: deleted records, duplicates, empty fields. Without a preliminary audit, a direct transfer will lead to errors.
Data Structure Analysis and Object Mapping
Step 1: Audit of actually used data. A typical Salesforce account accumulates years of garbage: deleted records in the trash, duplicate contacts, outdated fields with zero fill. Before migration, we:
- Export the object schema via
describeSObjects()API and create a mapping to Bitrix24 entities. This Salesforce object mapping is crucial for custom fields. - Check volumes: Salesforce Data Export provides CSV files split by object. Relationships between records (lookup fields) are stored as Salesforce IDs — they need to be resolved into new Bitrix24 IDs.
- Evaluate custom objects: they may not have a direct equivalent in Bitrix24. For these, we create custom fields or separate CRM sections.
Mapping of base objects:
| Salesforce | Bitrix24 | Notes |
|---|---|---|
| Account | Company (crm.company) | Account hierarchy is not natively supported |
| Contact | Contact (crm.contact) | Tied to company via COMPANY_ID |
| Lead | Lead (crm.lead) | Statuses are mapped manually |
| Opportunity | Deal (crm.deal) | Funnel stages are recreated |
| Task | Task (tasks.task) | Tied to CRM entity via UF_CRM_TASK |
| Case | Ticket (helpdesk) | Only in Bitrix24 Enterprise/On-Premise |
Migration Process: Export, Transform, Upload
- Export from Salesforce using Data Export or Bulk API.
- Transform the data: map objects, convert field formats, resolve owner IDs.
- Upload to Bitrix24 in correct order: companies, contacts, then deals.
- Verify the migrated data and fix any issues.
Export from Salesforce
We use two methods:
- Data Export (Setup → Data Export) — full dump in ZIP with CSV. Convenient for one-time migration, but the export takes up to 48 hours. For large volumes, files are split by object.
- Salesforce API (REST/Bulk API 2.0) — preferred for large volumes (from 50,000 records). Bulk API 2.0 works asynchronously: create a job, upload data, wait for execution, download the result. We recommend Salesforce API export for any migration over 10,000 records.
POST /services/data/v58.0/jobs/ingest
{
"operation": "query",
"query": "SELECT Id, Name, Phone, BillingCity FROM Account WHERE IsDeleted = false"
}
Data Transformation
This is the most time-consuming stage. Common issues:
- Phone numbers: Salesforce stores them in arbitrary formats; Bitrix24 accepts them via
crm.contact.updatein thePHONEfield as an array with typeWORK/MOBILE/HOME. - Addresses: Salesforce uses a flat structure (BillingStreet, BillingCity); in Bitrix24, company address is stored via
crm.address.addwithENTITY_TYPE_ID=4. - Users: The record owner (OwnerId) must be mapped to Bitrix24 users via
user.getby email or name. - Multi-select picklists: Converted to separate custom fields in Bitrix24.
Upload to Bitrix24 via REST API
-
crm.contact.add/crm.company.add— add one record at a time; for large volumes, use thebatchmethod (up to 50 requests at once). Bitrix24 REST API migration is efficient with batch processing. - Order is critical: companies first, then contacts (to set COMPANY_ID), then deals.
- Save the mapping of Salesforce ID → Bitrix24 ID in an intermediate table — needed for linking tasks, events, and files.
Which Data to Migrate First
Primary: companies and contacts — they form the basis for all other entities. Then deals and leads. Activity history and attachments come last, as data volume can be significant. Emails, calls, meetings from Salesforce Activity History are migrated to Bitrix24 as CRM activities (crm.activity.add). Attached files — via crm.timeline.comment.add with base64 encoding or pre-upload via disk.folder.uploadfile. The volume of attachments is often a surprise: 5–10 years of work in Salesforce can easily yield 50–100 GB of files. This requires a separate strategy: either selective migration (only last N years) or archive access to Salesforce remains during the adaptation period.
Post-Migration Support and Services
After the transfer, a verification phase is mandatory: spot-check records, verify linkages, test notifications and automations in Bitrix24. Parallel operation in both systems during the transition period is standard practice. Contact us for a consultation and accurate estimate of your project. Bulk API 2.0 is 5 times faster than standard REST API for volumes over 50,000 records. Our engineers' experience is backed by certifications and dozens of successful projects.
Migration Timeline
| Scale | Data Volume | Duration |
|---|---|---|
| Small business | up to 10,000 records, standard fields | 2–3 weeks |
| Medium business | 10,000–100,000 records, custom objects | 4–8 weeks |
| Large | 100,000+ records, 5+ years history, attachments | 2–4 months |
What's Included in Our Migration Service
- Data schema analysis report with field mappings
- Secure extraction and transformation of all selected data
- Full upload with batch processing and error handling
- Validation report comparing record counts and linkages
- Two weeks of post-migration support and issue resolution
Why Choose Our Team
With over 10 years of experience in CRM migrations and 50+ successful projects, we ensure a smooth transition. Our process is transparent, and we provide a detailed timeline upfront. We handle all aspects, including Salesforce deal migration and Salesforce task migration, ensuring no data is lost.
Wikipedia: Salesforce — Salesforce API documentation
Note: Prices vary by data volume and complexity. Contact us for a custom quote.







