---
title: "Conector Salesforce"
description: "Ghid complet de integrare Salesforce CRM pentru sincronizarea lead-urilor, contactelor, conturilor, oportunităților și obiectelor personalizate cu Brevo prin Tajo."
url: https://tajo.io/ro/docs/connectors/crm/salesforce/
markdown: https://tajo.io/ro/docs/connectors/crm/salesforce.md
lang: ro-RO
robots: noindex
---

Solicită acces anticipat

Introduceți prenumele și adresa de e-mail profesională. Vă vom trimite un link pentru a confirma cererea de acces la Tajo.

# Conector Salesforce

Starea conectorului: Planificat Încă neconstruit. Tajo nu rulează astăzi acest conector.

| Câmp sursă | Câmp destinație | Valoare exemplu |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Conectați Salesforce CRM la Brevo prin Tajo pentru sincronizare de nivel enterprise a contactelor, gestionarea lead-urilor, urmărirea oportunităților și automatizare de marketing bazată pe datele dvs. CRM.

## Prezentare generală

| Proprietate | Valoare |
| --- | --- |
| **Platformă** | Salesforce |
| **Categorie** | CRM |
| **Complexitate configurare** | Avansată |
| **Integrare oficială** | Nu |
| **Date sincronizate** | Contacte, Lead-uri, Conturi, Oportunități, Evenimente |
| **URL de bază API** | `https://yourInstance.salesforce.com/services/data/vXX.0` |

## Funcționalități

- **Sincronizare bidirecțională contacte/lead-uri** - Sincronizați contactele și lead-urile Salesforce cu listele de contacte Brevo
- **Urmărire oportunități** - Mapați etapele și sumele ofertelor pentru segmentare bazată pe venituri
- **Ierarhie de conturi** - Sincronizați conturile de companie pentru marketing bazat pe cont în Brevo
- **Mapare obiecte personalizate** - Mapați obiectele personalizate Salesforce la atributele și evenimentele Brevo
- **Sincronizare membri campanie** - Sincronizați membrii campaniei Salesforce cu listele Brevo
- **Urmărire activități** - Sincronizați sarcini, evenimente și activități e-mail pentru scorarea implicării
- **Streaming în timp real** - Utilizați Salesforce Streaming API pentru actualizări instantanee ale datelor
- **Suport interogări SOQL** - Filtrați datele sincronizate cu interogări SOQL personalizate

## Cerințe preliminare

Înainte de a începe, asigurați-vă că aveți:

1. O organizație Salesforce (orice ediție cu acces API)
2. O aplicație conectată configurată în Salesforce Setup
3. Acces API activat pentru profilul de utilizator Salesforce
4. Un cont Brevo cu acces API
5. Un cont Tajo

## Autentificare

### Flux OAuth 2.0 Web Server (Recomandat)

Ideal pentru integrări de producție cu autorizare utilizator.

```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}"
```

### Flux cu nume de utilizator și parolă

Pentru integrări server-la-server fără interacțiunea utilizatorului.

```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}"
```

Token de securitate

Salesforce necesită adăugarea tokenului de securitate la parolă pentru fluxul cu nume de utilizator și parolă. Resetați tokenul din Setup > My Personal Information > Reset My Security Token.

## Configurare

### Configurare de bază

```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
```

### Mapare câmpuri

Mapați câmpurile Salesforce la atributele de contact Brevo:

#### Mapări implicite

| Parameter | Type | Description |
| --- | --- | --- |
| `Email` required | string | E-mailul contactului/lead-ului (identificator unic pentru Brevo) |
| `FirstName` optional | string | Mapează la atributul FIRSTNAME în Brevo |
| `LastName` optional | string | Mapează la atributul LASTNAME în Brevo |
| `Phone` optional | string | Mapează la atributul SMS pentru mesaje WhatsApp/SMS |
| `Account.Name` optional | string | Numele contului/companiei asociate |
| `LeadSource` optional | string | Sursa de achiziție a lead-ului |
| `StageName` optional | string | Etapa oportunității pentru urmărirea ofertelor |
| `OwnerId` optional | string | Reprezentantul de vânzări atribuit pentru rutare |

#### Mapare câmpuri personalizate

```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
```

## Puncte finale API

### Resurse API REST

| Metodă | Punct final | Descriere |
| --- | --- | --- |
| `GET` | `/services/data/vXX.0/sobjects/Contact` | Interogare contacte |
| `POST` | `/services/data/vXX.0/sobjects/Contact` | Creează un contact |
| `PATCH` | `/services/data/vXX.0/sobjects/Contact/{id}` | Actualizează un contact |
| `GET` | `/services/data/vXX.0/sobjects/Lead` | Interogare lead-uri |
| `GET` | `/services/data/vXX.0/sobjects/Account` | Interogare conturi |
| `GET` | `/services/data/vXX.0/sobjects/Opportunity` | Interogare oportunități |
| `GET` | `/services/data/vXX.0/query?q={SOQL}` | Execută interogare SOQL |
| `POST` | `/services/data/vXX.0/composite/sobjects` | Creare/actualizare în lot |

### Bulk API

| Metodă | Punct final | Descriere |
| --- | --- | --- |
| `POST` | `/services/data/vXX.0/jobs/ingest` | Creează job de ingestie în bloc |
| `PUT` | `/services/data/vXX.0/jobs/ingest/{jobId}/batches` | Încarcă date în lot |
| `GET` | `/services/data/vXX.0/jobs/ingest/{jobId}` | Verifică statusul job-ului |

### Streaming API

| Punct final | Descriere |
| --- | --- |
| `/cometd/XX.0` | Long-polling CometD pentru evenimente în timp real |
| PushTopic | Abonați-vă la modificări ale înregistrărilor prin topicuri bazate pe SOQL |
| Change Data Capture | Transmiteți modificări granulare la nivel de câmp |
| Platform Events | Arhitectură personalizată bazată pe evenimente |

## Evenimente

### Evenimente înregistrare (Change Data Capture)

| Eveniment | Declanșator | Caz de utilizare |
| --- | --- | --- |
| `ContactChangeEvent` | Contact creat/actualizat/șters | Sincronizare contact în timp real |
| `LeadChangeEvent` | Lead creat/actualizat/convertit | Urmărire ciclu de viață lead |
| `OpportunityChangeEvent` | Etapă oportunitate schimbată | Automatizare pipeline oferte |
| `AccountChangeEvent` | Înregistrare cont modificată | Sincronizare date companie |

### Evenimente de platformă

| Eveniment | Declanșator | Caz de utilizare |
| --- | --- | --- |
| `Lead_Converted__e` | Lead convertit în contact | Nurturing post-conversie |
| `Deal_Won__e` | Oportunitate câștigată | Flux de onboarding client |
| `Deal_Lost__e` | Oportunitate pierdută | Campanii de câștigare înapoi |

## Exemple de cod

### Inițializare conector

```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
});
```

### Sincronizare contacte cu filtru 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
// }
```

### Streaming în timp real

```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
  }
});
```

## Limite de rată

Limitele API REST Salesforce depind de ediția și numărul de licențe:

| Ediție | Cereri API per 24 de ore |
| --- | --- |
| Developer | 15.000 |
| Enterprise | 1.000 per licență utilizator (minim 15.000) |
| Unlimited | 5.000 per licență utilizator (minim 15.000) |
| Performance | 5.000 per licență utilizator (minim 15.000) |

Limite suplimentare:

- **Limită API concurent**: 25 cereri cu durată lungă
- **Bulk API**: 15.000 loturi per 24 de ore
- **Streaming API**: 2.000 evenimente pe zi (poate fi majorat)
- **Composite API**: 25 subcereri per cerere compusă

Monitorizare utilizare API

Monitorizați utilizarea API în Salesforce Setup > System Overview. Tajo utilizează Bulk API pentru sincronizări mari pentru a economisi limitele API.

## Depanare

### Probleme frecvente

| Problemă | Cauză | Soluție |
| --- | --- | --- |
| INVALID\_SESSION\_ID | Token expirat | Actualizați automat tokenul OAuth |
| REQUEST\_LIMIT\_EXCEEDED | Limită API zilnică atinsă | Utilizați Bulk API sau reduceți frecvența sincronizării |
| FIELD\_INTEGRITY\_EXCEPTION | Câmp obligatoriu lipsă | Mapați toate câmpurile obligatorii în configurare |
| DUPLICATES\_DETECTED | Reguli de duplicate active | Configurați preferințele de gestionare a duplicatelor |
| INSUFFICIENT\_ACCESS | Permisiuni obiect lipsă | Acordați acces API în profilul Salesforce |

### Modul de depanare

Activați jurnalizarea verbosă:

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

### Testare conexiune

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

## Bune practici

1. **Utilizați Bulk API pentru sincronizări mari** - Treceți la Bulk API 2.0 pentru seturi de date cu mai mult de 2.000 înregistrări
2. **Implementați Change Data Capture** - Utilizați CDC pentru sincronizare în timp real în loc de interogare
3. **Mapați doar câmpurile necesare** - Reduceți utilizarea API sincronizând doar câmpurile necesare
4. **Gestionați reîmprospătarea tokenului** - Implementați logica automată de reîmprospătare a tokenului OAuth
5. **Utilizați cereri compuse** - Combinați apeluri API corelate pentru a reduce numărul de cereri
6. **Testați mai întâi în sandbox** - Utilizați un org sandbox Salesforce înainte de implementarea în producție

## Securitate

- **OAuth 2.0** - Autorizare standard industrie cu mai multe tipuri de grant
- **Restricții IP** - Salesforce suportă intervale IP de autentificare și setări IP de încredere
- **TLS 1.2+** - Toată comunicarea API criptată cu minim TLS 1.2
- **Securitate la nivel de câmp** - Control granular al accesului la câmpuri per profil
- **Gestionare sesiuni** - Timeout de sesiune configurabil și limite de sesiuni concurente

## Resurse conexe

- [Documentație API REST Salesforce](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/intro_rest.htm)
- [Ghid Salesforce Bulk API 2.0](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/asynch_api_intro.htm)
- [Conector HubSpot](https://tajo.io/ro/docs/connectors/crm/hubspot)
- [Skill Sincronizare clienți](https://tajo.io/ro/docs/skills/data-sync/customer-sync)
- [API Contacte Brevo](https://tajo.io/ro/docs/contact-management)
