---
title: "Конектор Salesforce"
description: "Пълно ръководство за интеграция с Salesforce CRM за синхронизация на лийдове, контакти, акаунти, възможности и персонализирани обекти с Brevo чрез Tajo."
url: https://tajo.io/bg/docs/connectors/crm/salesforce/
markdown: https://tajo.io/bg/docs/connectors/crm/salesforce.md
lang: bg-BG
robots: noindex
---

Заявете ранен достъп

Въведете собственото си име и служебен имейл адрес. Ще ви изпратим връзка за потвърждение на заявката за достъп до Tajo.

# Конектор Salesforce

Статус на конектора: Планиран Все още не е изграден. Tajo не изпълнява този конектор днес.

| Поле източник | Целево поле | Примерна стойност |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Свържете своя Salesforce CRM с Brevo чрез Tajo за синхронизация на контакти от корпоративен клас, управление на лийдове, проследяване на възможности и маркетингова автоматизация, задвижвана от вашите CRM данни.

## Преглед

| Свойство | Стойност |
| --- | --- |
| **Платформа** | Salesforce |
| **Категория** | CRM |
| **Сложност на настройка** | Разширена |
| **Официална интеграция** | Не |
| **Синхронизирани данни** | Контакти, лийдове, акаунти, възможности, събития |
| **API Base URL** | `https://yourInstance.salesforce.com/services/data/vXX.0` |

## Функции

- **Двупосочна синхронизация на контакти/лийдове** – Синхронизирайте контакти и лийдове от Salesforce със списъци с контакти в Brevo
- **Проследяване на възможности** – Мапвайте етапите и сумите на сделките за сегментация на базата на приходите
- **Йерархия на акаунтите** – Синхронизирайте фирмени акаунти за account-based маркетинг в Brevo
- **Мапване на персонализирани обекти** – Мапвайте персонализирани обекти от Salesforce към атрибути и събития в Brevo
- **Синхронизация на членове на кампания** – Синхронизирайте членовете на кампании от Salesforce със списъци в Brevo
- **Проследяване на активности** – Синхронизирайте задачи, събития и имейл активности за оценка на ангажираността
- **Стрийминг в реално време** – Използвайте Salesforce Streaming API за незабавни обновявания на данни
- **Поддръжка на SOQL заявки** – Филтрирайте синхронизираните данни с персонализирани SOQL заявки

## Предварителни условия

Преди да започнете, уверете се, че имате:

1. Salesforce org (всяко издание с API достъп)
2. Свързано приложение (Connected App), конфигурирано в Salesforce Setup
3. Активиран API достъп за вашия Salesforce потребителски профил
4. Акаунт в Brevo с API достъп
5. Акаунт в Tajo

## Автентикация

### OAuth 2.0 Web Server Flow (препоръчително)

Най-добре за продукционни интеграции с потребителска оторизация.

```bash
# Step 1: Authorize
https://login.salesforce.com/services/oauth2/authorize?
  response_type=code&
  client_id={consumer_key}&
  redirect_uri={callback_url}

# Step 2: Exchange code for tokens
curl -X POST https://login.salesforce.com/services/oauth2/token \
  -d "grant_type=authorization_code" \
  -d "code={auth_code}" \
  -d "client_id={consumer_key}" \
  -d "client_secret={consumer_secret}" \
  -d "redirect_uri={callback_url}"
```

### Username-Password Flow

За server-to-server интеграции без взаимодействие с потребителя.

```bash
curl -X POST https://login.salesforce.com/services/oauth2/token \
  -d "grant_type=password" \
  -d "client_id={consumer_key}" \
  -d "client_secret={consumer_secret}" \
  -d "username={username}" \
  -d "password={password}{security_token}"
```

Токен за сигурност

Salesforce изисква добавяне на вашия токен за сигурност към паролата ви за username-password flow. Нулирайте токена си от Setup > My Personal Information > Reset My Security Token.

## Конфигурация

### Основна настройка

```yaml
connectors:
  salesforce:
    enabled: true
    instance_url: "https://yourorg.my.salesforce.com"
    api_version: "v59.0"
    auth:
      type: oauth2
      consumer_key: "${SF_CONSUMER_KEY}"
      consumer_secret: "${SF_CONSUMER_SECRET}"
      refresh_token: "${SF_REFRESH_TOKEN}"

    # Data sync options
    sync:
      contacts: true
      leads: true
      accounts: true
      opportunities: true
      campaigns: true

    # Sync direction
    direction: salesforce_to_brevo

    # Brevo list assignment
    lists:
      all_leads: 15
      qualified_leads: 16
      customers: 17
```

### Мапване на полета

Мапвайте полета от Salesforce към атрибути на контактите в Brevo:

#### Мапвания по подразбиране

| Parameter | Type | Description |
| --- | --- | --- |
| `Email` required | string | Имейл на контакта/лийда (уникален идентификатор за Brevo) |
| `FirstName` optional | string | Мапва се към атрибута FIRSTNAME в Brevo |
| `LastName` optional | string | Мапва се към атрибута LASTNAME в Brevo |
| `Phone` optional | string | Мапва се към атрибута SMS за съобщения по WhatsApp/SMS |
| `Account.Name` optional | string | Име на свързания акаунт/компания |
| `LeadSource` optional | string | Източник на придобиване на лийда |
| `StageName` optional | string | Етап на възможност за проследяване на сделки |
| `OwnerId` optional | string | Определен търговски представител за маршрутизиране |

#### Мапване на персонализирани полета

```yaml
field_mapping:
  # Standard fields
  Email: email
  FirstName: FIRSTNAME
  LastName: LASTNAME
  Phone: SMS

  # CRM fields
  LeadSource: LEAD_SOURCE
  Lead_Score__c: LEAD_SCORE
  Account.Name: COMPANY_NAME
  Account.Industry: INDUSTRY

  # Opportunity fields
  Amount: DEAL_VALUE
  StageName: DEAL_STAGE
  CloseDate: EXPECTED_CLOSE_DATE

  # Custom fields
  Preferred_Channel__c: PREFERRED_CHANNEL
  Customer_Tier__c: VIP_TIER
```

## API крайни точки

### REST API ресурси

| Method | Endpoint | Описание |
| --- | --- | --- |
| `GET` | `/services/data/vXX.0/sobjects/Contact` | Заявка за контакти |
| `POST` | `/services/data/vXX.0/sobjects/Contact` | Създаване на контакт |
| `PATCH` | `/services/data/vXX.0/sobjects/Contact/{id}` | Обновяване на контакт |
| `GET` | `/services/data/vXX.0/sobjects/Lead` | Заявка за лийдове |
| `GET` | `/services/data/vXX.0/sobjects/Account` | Заявка за акаунти |
| `GET` | `/services/data/vXX.0/sobjects/Opportunity` | Заявка за възможности |
| `GET` | `/services/data/vXX.0/query?q={SOQL}` | Изпълнение на SOQL заявка |
| `POST` | `/services/data/vXX.0/composite/sobjects` | Групово създаване/обновяване |

### Bulk API

| Method | Endpoint | Описание |
| --- | --- | --- |
| `POST` | `/services/data/vXX.0/jobs/ingest` | Създаване на bulk ingest задача |
| `PUT` | `/services/data/vXX.0/jobs/ingest/{jobId}/batches` | Качване на batch данни |
| `GET` | `/services/data/vXX.0/jobs/ingest/{jobId}` | Проверка на статуса на задачата |

### Streaming API

| Endpoint | Описание |
| --- | --- |
| `/cometd/XX.0` | CometD long-polling за събития в реално време |
| PushTopic | Абонирайте се за промени в записите чрез SOQL-базирани теми |
| Change Data Capture | Стриймване на подробни промени на ниво поле |
| Platform Events | Персонализирана event-driven архитектура |

## Събития

### Събития за записи (Change Data Capture)

| Събитие | Тригер | Случай на употреба |
| --- | --- | --- |
| `ContactChangeEvent` | Контакт създаден/обновен/изтрит | Синхронизация на контакти в реално време |
| `LeadChangeEvent` | Лийд създаден/обновен/конвертиран | Проследяване на жизнения цикъл на лийда |
| `OpportunityChangeEvent` | Променен етап на възможност | Автоматизация на пайплайна от сделки |
| `AccountChangeEvent` | Модифициран запис за акаунт | Синхронизация на фирмени данни |

### Platform Events

| Събитие | Тригер | Случай на употреба |
| --- | --- | --- |
| `Lead_Converted__e` | Лийд конвертиран в контакт | Подхранване след конверсия |
| `Deal_Won__e` | Възможност closed-won | Поток за onboarding на клиенти |
| `Deal_Lost__e` | Възможност closed-lost | Win-back кампании |

## Примери за код

### Инициализация на конектора

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect Salesforce
await tajo.connectors.connect('salesforce', {
  instanceUrl: 'https://yourorg.my.salesforce.com',
  consumerKey: process.env.SF_CONSUMER_KEY,
  consumerSecret: process.env.SF_CONSUMER_SECRET,
  refreshToken: process.env.SF_REFRESH_TOKEN
});
```

### Синхронизация на контакти с SOQL филтър

```javascript
// Sync only qualified leads from Salesforce
await tajo.connectors.sync('salesforce', {
  type: 'filtered',
  resources: ['leads'],
  filter: "SELECT Id, Email, FirstName, LastName, LeadScore__c FROM Lead WHERE Status = 'Qualified' AND Email != null",
  brevoListId: 16
});

// Check sync status
const status = await tajo.connectors.status('salesforce');
console.log(status);
// {
//   connected: true,
//   lastSync: '2024-01-15T10:30:00Z',
//   contactsSynced: 18400,
//   leadsSynced: 7200,
//   opportunitiesSynced: 3100
// }
```

### Стрийминг в реално време

```javascript
// Subscribe to Salesforce Change Data Capture
await tajo.connectors.stream('salesforce', {
  channels: [
    '/data/ContactChangeEvent',
    '/data/LeadChangeEvent',
    '/data/OpportunityChangeEvent'
  ],
  handler: async (event) => {
    console.log(`Change detected: ${event.entity} ${event.changeType}`);
    // Automatically synced to Brevo by Tajo
  }
});
```

## Лимити на заявки

Лимитите на Salesforce REST API зависят от вашето издание и броя лицензи:

| Издание | API заявки за 24 часа |
| --- | --- |
| Developer | 15 000 |
| Enterprise | 1000 за потребителски лиценз (мин. 15 000) |
| Unlimited | 5000 за потребителски лиценз (мин. 15 000) |
| Performance | 5000 за потребителски лиценз (мин. 15 000) |

Допълнителни лимити:

- **Лимит на конкурентни API заявки**: 25 дълготрайни заявки
- **Bulk API**: 15 000 batch заявки за 24 часа
- **Streaming API**: 2000 събития дневно (може да бъде увеличено)
- **Composite API**: 25 подзаявки на composite заявка

Мониторинг на API употребата

Наблюдавайте вашата API употреба в Salesforce Setup > System Overview. Tajo използва bulk API за големи синхронизации, за да спести вашите API лимити.

## Отстраняване на проблеми

### Често срещани проблеми

| Проблем | Причина | Решение |
| --- | --- | --- |
| INVALID\_SESSION\_ID | Изтекъл токен | Автоматично обновяване на OAuth токена |
| REQUEST\_LIMIT\_EXCEEDED | Достигнат дневен API лимит | Използвайте Bulk API или намалете честотата на синхронизация |
| FIELD\_INTEGRITY\_EXCEPTION | Липсва задължително поле | Мапвайте всички задължителни полета в конфигурацията |
| DUPLICATES\_DETECTED | Активни правила за дубликати | Конфигурирайте предпочитания за обработка на дубликати |
| INSUFFICIENT\_ACCESS | Липсващи разрешения за обект | Предоставете API достъп в Salesforce профила |

### Debug режим

Активирайте подробно логиране:

```yaml
connectors:
  salesforce:
    debug: true
    log_level: verbose
    log_api_calls: true
```

### Тестване на връзката

```bash
tajo connectors test salesforce
# ✓ OAuth token valid
# ✓ Contacts accessible
# ✓ Leads accessible
# ✓ Accounts accessible
# ✓ Opportunities accessible
# ✓ Bulk API enabled
```

## Най-добри практики

1. **Използвайте Bulk API за големи синхронизации** – Преминете към Bulk API 2.0 за набори от данни над 2000 записа
2. **Имплементирайте Change Data Capture** – Използвайте CDC за синхронизация в реално време вместо допитване
3. **Мапвайте само необходимите полета** – Намалете API употребата, като синхронизирате само нужните полета
4. **Обработвайте обновяването на токена** – Имплементирайте автоматична логика за refresh на OAuth токена
5. **Използвайте composite заявки** – Комбинирайте свързани API повиквания за намаляване на броя заявки
6. **Тествайте първо в sandbox** – Използвайте Salesforce sandbox org преди продукционно разгръщане

## Сигурност

- **OAuth 2.0** – Индустриален стандарт за оторизация с множество grant типове
- **IP ограничения** – Salesforce поддържа IP диапазони за login и настройки за доверени IP
- **TLS 1.2+** – Цялата API комуникация е криптирана с минимум TLS 1.2
- **Сигурност на ниво поле** – Гранулиран контрол на достъпа до полета за всеки профил
- **Управление на сесиите** – Конфигурируем таймаут на сесиите и лимити на конкурентни сесии

## Свързани ресурси

- [Salesforce REST API Documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/intro_rest.htm)
- [Salesforce Bulk API 2.0 Guide](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/asynch_api_intro.htm)
- [Конектор HubSpot](https://tajo.io/bg/docs/connectors/crm/hubspot)
- [Customer Sync Skill](https://tajo.io/bg/docs/skills/data-sync/customer-sync)
- [Brevo Contacts API](https://tajo.io/bg/docs/contact-management)
