Міграція даних з Salesforce у Бітрікс24
Salesforce зберігає дані у своїй об'єктній моделі: Account, Contact, Lead, Opportunity, Task, Event. Кожен об'єкт може містити сотні кастомних полів, налаштованих під конкретний бізнес. Прямого імпорту між Salesforce і Бітрікс24 не існує. Завдання вирішується через проміжний шар: експорт через Salesforce API або Data Export, трансформація даних і завантаження через REST API Бітрікс24. Ми накопичили досвід десятків успішних міграцій і гарантуємо цілісність даних. Замовте міграцію під ключ — оцінимо ваш проект за 1 день.
Чому пряма міграція з Salesforce у Бітрікс24 неможлива?
Salesforce використовує власну об'єктну модель з унікальними ідентифікаторами. Бітрікс24 оперує своєю структурою інфоблоків і CRM-сутностей. Відмінності в типах полів (lookup, picklist, formula), форматах телефонних номерів і адрес вимагають обов'язкової трансформації. Крім того, у Salesforce накопичується сміття: видалені записи, дублікати, порожні поля. Без попереднього аудиту прямий перенесення призведе до помилок.
Аналіз структури даних Salesforce
Перший крок — аудит реально використовуваних даних. У типовому Salesforce-акаунті накопичується кілька років сміття: видалені записи в кошику, дубльовані контакти, застарілі поля з нульовим заповненням. Перед міграцією необхідно:
- Вивантажити схему об'єктів через
describeSObjects()API і скласти маппінг на сутності Бітрікс24. - Перевірити обсяги: Salesforce Data Export дає CSV-файли, розбиті за об'єктами. Зв'язки між записами (lookup-поля) зберігаються як Salesforce ID — їх потрібно резолвити в нові ID Бітрікс24.
- Оцінити кастомні об'єкти (
Custom Objects): вони можуть не мати прямого аналога в Бітрікс24. Для них створюються користувацькі поля або окремі розділи CRM.
Маппінг базових об'єктів:
| Salesforce | Бітрікс24 | Примітка |
|---|---|---|
| Account | Компанія (crm.company) | Ієрархія Account не підтримується нативно |
| Contact | Контакт (crm.contact) | Прив'язка до компанії через COMPANY_ID |
| Lead | Лід (crm.lead) | Статуси мапляться вручну |
| Opportunity | Угода (crm.deal) | Етапи воронки перестворюються |
| Task | Завдання (tasks.task) | Прив'язка до CRM-сутності через UF_CRM_TASK |
| Case | Тікет (helpdesk) | Тільки в Бітрікс24 Enterprise/On-Premise |
Технічний процес міграції
Експорт із Salesforce виконується двома способами:
- Data Export (Setup → Data Export) — повний дамп у ZIP з CSV. Зручно для разової міграції, але вивантаження формується до 48 годин. При великому обсязі файли розбиваються на частини за об'єктом.
- Salesforce API (REST/Bulk API 2.0) — переважно для великих обсягів (від 50 000 записів). Bulk API 2.0 працює асинхронно: створюєте job, завантажуєте дані, чекаєте виконання, завантажуєте результат.
POST /services/data/v58.0/jobs/ingest { "operation": "query", "query": "SELECT Id, Name, Phone, BillingCity FROM Account WHERE IsDeleted = false" } Трансформація даних — найбільш трудомісткий етап. Проблеми, які зустрічаються майже завжди:
- Телефони в Salesforce зберігаються в довільному форматі; Бітрікс24 приймає їх через
crm.contact.updateу поліPHONEяк масив з типомWORK/MOBILE/HOME. - Адреси в Salesforce — плоска структура (BillingStreet, BillingCity); у Бітрікс24 адреса компанії зберігається через
crm.address.addз прив'язкою до ENTITY_TYPE_ID=4 (компанія). - Користувачі: власник запису в Salesforce (OwnerId) потрібно зіставити з користувачами Бітрікс24 через
user.getза email або іменем.
Завантаження в Бітрікс24 через REST API:
-
crm.contact.add/crm.company.add— додавання по одному запису; при великих обсягах використовуйтеbatch-метод (до 50 запитів за раз). - Порядок завантаження критичний: спочатку компанії, потім контакти (щоб була можливість вказати COMPANY_ID), потім угоди.
- Зберігайте маппінг Salesforce ID → Бітрікс24 ID у проміжній таблиці — він потрібен для прив'язки завдань, подій, файлів.
Які дані мігрувати в першу чергу?
У першу чергу переносяться компанії та контакти — вони є основою для прив'язки всіх інших сутностей. Потім угоди та ліди. Історія взаємодій та вкладення — на останньому етапі, оскільки обсяг даних може бути значним. Листи, дзвінки, зустрічі з Salesforce Activity History мігрують у Бітрікс24 як справи CRM (crm.activity.add). Вкладені файли — через crm.timeline.comment.add з base64-кодуванням або попереднім завантаженням через disk.folder.uploadfile. Обсяг вкладень нерідко стає сюрпризом: 5–10 років роботи в Salesforce легко дають 50–100 ГБ файлів. Це вимагає окремої стратегії: або вибіркова міграція (тільки останні N років), або архівний доступ до Salesforce залишається на період адаптації.
Скільки часу займає міграція?
| Масштаб | Обсяг даних | Термін |
|---|---|---|
| Малий бізнес | до 10 000 записів, стандартні поля | 2–3 тижні |
| Середній бізнес | 10 000–100 000 записів, кастомні об'єкти | 4–8 тижнів |
| Великий | 100 000+ записів, історія 5+ років, вкладення | 2–4 місяці |
Після завершення перенесення обов'язкова фаза верифікації: вибіркова звірка записів, перевірка зв'язків, тест сповіщень і автоматизацій у Бітрікс24. Паралельна робота у двох системах на перехідний період — стандартна практика. Зв'яжіться з нами для отримання консультації та точної оцінки вашого проекту. Bulk API 2.0 у 5 разів швидший за стандартний REST API при обсягах від 50 000 записів. Досвід наших інженерів підтверджений сертифікатами та десятками успішних проектів.
Wikipedia: Salesforce — документація Salesforce API







