---
title: "Pipedrive-connector"
description: "Volledige Pipedrive-integratiegids voor het synchroniseren van deals, contacten, organisaties en pipelinedata met Brevo via Tajo."
url: https://tajo.io/nl/docs/connectors/crm/pipedrive/
markdown: https://tajo.io/nl/docs/connectors/crm/pipedrive.md
lang: nl-NL
robots: noindex
---

Vraag vroegtijdige toegang aan

Vul je voornaam en je zakelijke e-mailadres in. We sturen je een link om je aanvraag voor toegang tot Tajo te bevestigen.

# Pipedrive-connector

Connectorstatus: Gepland Nog niet gebouwd. Tajo draait deze connector vandaag niet.

| Bronveld | Doelveld | Voorbeeldwaarde |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Verbind Pipedrive met Brevo via Tajo om je sales pipeline te koppelen aan marketingautomatisering. Synchroniseer contacten, deals, organisaties en activiteiten om lifecyclecampagnes te triggeren op basis van CRM-fasewijzigingen.

## Overzicht

| Eigenschap | Waarde |
| --- | --- |
| **Platform** | Pipedrive |
| **Categorie** | CRM |
| **Setupcomplexiteit** | Eenvoudig |
| **Officiële integratie** | Nee |
| **Gesynchroniseerde data** | Personen, Deals, Organisaties, Activiteiten |
| **Beschikbare Skills** | 8 |

## Functies

- **Contactsynchronisatie** - Bidirectionele synchronisatie van Pipedrive-personen naar Brevo-contacten
- **Dealfase-tracking** - Trigger Brevo-automatiseringen op basis van wijzigingen in pipelinefases
- **Organisatiesynchronisatie** - Map Pipedrive-organisaties naar Brevo-bedrijfsattributen
- **Activiteitstracking** - Stuur Pipedrive-activiteiten (calls, e-mails, meetings) door als Brevo-events
- **Custom fields** - Map custom fields uit Pipedrive naar Brevo-contactattributen
- **Pipeline-rapportage** - Haal dealpipelinedata op voor marketingattributie
- **Leadsynchronisatie** - Importeer Pipedrive-leads in Brevo voor nurture-campagnes
- **Webhook-automatisering** - Realtime updates via Pipedrive-webhooks

## Vereisten

Voordat je begint, zorg dat je beschikt over:

1. Een Pipedrive-account met admin-toegang
2. Je Pipedrive API Token (te vinden in Settings > Personal preferences > API)
3. Voor OAuth apps: een geregistreerde Pipedrive-app met Client ID en Client Secret
4. Een Brevo-account met API-toegang
5. Een Tajo-account met API-credentials

## Authenticatie

### API Token

De eenvoudigste authenticatiemethode. Je API Token vind je in Pipedrive onder Settings > Personal preferences > API.

```bash
curl "https://api.pipedrive.com/v1/persons?api_token=YOUR_API_TOKEN"
```

### OAuth 2.0 (aanbevolen voor apps)

Gebruik voor productieapplicaties OAuth 2.0:

```bash
# Authorization URL
https://oauth.pipedrive.com/oauth/authorize?client_id=CLIENT_ID&redirect_uri=REDIRECT_URI

# Token exchange
curl -X POST https://oauth.pipedrive.com/oauth/token \
  -d "grant_type=authorization_code" \
  -d "code=AUTH_CODE" \
  -d "redirect_uri=REDIRECT_URI" \
  -u "CLIENT_ID:CLIENT_SECRET"
```

Nadat je het access token hebt verkregen:

```bash
curl "https://api.pipedrive.com/v1/persons" \
  -H "Authorization: Bearer ACCESS_TOKEN"
```

## Configuratie

### Basisinstelling

```yaml
connectors:
  pipedrive:
    enabled: true
    api_token: "your-pipedrive-api-token"
    company_domain: "yourcompany"  # yourcompany.pipedrive.com

    # Data sync options
    sync:
      persons: true
      deals: true
      organizations: true
      activities: true
      leads: true

    # Brevo list assignment
    lists:
      all_contacts: 60
      qualified_leads: 61
      customers: 62
      churned: 63
```

### Persoon-veldmapping

Map velden van Pipedrive-personen naar Brevo-contactattributen:

```yaml
person_mapping:
  email: email
  name: FULLNAME
  first_name: FIRSTNAME
  last_name: LASTNAME
  phone: SMS
  org_id.name: COMPANY

  # Deal-related computed fields
  won_deals_count: WON_DEALS
  lost_deals_count: LOST_DEALS
  open_deals_count: OPEN_DEALS
  closed_deals_count: CLOSED_DEALS
  total_revenue: LTV

  # Custom fields (use Pipedrive field key)
  custom_fields.lead_source: LEAD_SOURCE
  custom_fields.industry: INDUSTRY
  custom_fields.company_size: COMPANY_SIZE
```

### Dealfase-mapping

Map Pipedrive-pipelinefases naar Brevo-listtoewijzingen:

```yaml
deal_stage_mapping:
  # stage_id -> brevo_list_id
  1: 61   # Lead In
  2: 61   # Contact Made
  3: 62   # Proposal Made
  4: 62   # Negotiations Started
  "won": 63   # Won -> Customers list
  "lost": 64   # Lost -> Win-back list
```

### Webhook-configuratie

```yaml
webhooks:
  - event_action: "added"
    event_object: "person"
    brevo_event: "contact_created"
  - event_action: "updated"
    event_object: "person"
    brevo_event: "contact_updated"
  - event_action: "added"
    event_object: "deal"
    brevo_event: "deal_created"
  - event_action: "updated"
    event_object: "deal"
    brevo_event: "deal_updated"
  - event_action: "merged"
    event_object: "person"
    brevo_event: "contact_merged"
  - event_action: "added"
    event_object: "activity"
    brevo_event: "activity_logged"
```

## API-endpoints

| Method | Endpoint | Beschrijving |
| --- | --- | --- |
| `GET` | `/v1/persons` | Lijst personen |
| `POST` | `/v1/persons` | Maak een persoon aan |
| `PUT` | `/v1/persons/{id}` | Werk een persoon bij |
| `DELETE` | `/v1/persons/{id}` | Verwijder een persoon |
| `GET` | `/v1/deals` | Lijst deals |
| `POST` | `/v1/deals` | Maak een deal aan |
| `PUT` | `/v1/deals/{id}` | Werk een deal bij |
| `GET` | `/v1/organizations` | Lijst organisaties |
| `POST` | `/v1/organizations` | Maak een organisatie aan |
| `GET` | `/v1/activities` | Lijst activiteiten |
| `POST` | `/v1/activities` | Maak een activiteit aan |
| `GET` | `/v1/leads` | Lijst leads |
| `GET` | `/v1/pipelines` | Lijst pipelines |
| `GET` | `/v1/stages` | Lijst pipelinefases |
| `GET` | `/v1/itemSearch` | Zoek in alle items |
| `POST` | `/v1/webhooks` | Maak een webhook aan |
| `GET` | `/v1/recents` | Haal recent gewijzigde items op |

## Codevoorbeelden

### Pipedrive-connector initialiseren

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

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

// Connect Pipedrive account
await tajo.connectors.connect('pipedrive', {
  apiToken: process.env.PIPEDRIVE_API_TOKEN,
  companyDomain: 'yourcompany'
});
```

### Personen synchroniseren naar Brevo

```javascript
// Fetch persons from Pipedrive
const response = await fetch(
  `https://api.pipedrive.com/v1/persons?start=0&limit=100&api_token=${API_TOKEN}`
);

const { data, additional_data } = await response.json();
// data: [{ id, name, first_name, last_name, email, phone, org_id, ... }]
// additional_data.pagination: { start, limit, more_items_in_collection }
```

### Dealfasewijzigingen tracken

```javascript
// Webhook handler for deal updates
app.post('/webhooks/pipedrive', async (req, res) => {
  const { meta, current, previous } = req.body;

  if (meta.object === 'deal' && meta.action === 'updated') {
    // Detect stage change
    if (current.stage_id !== previous.stage_id) {
      await tajo.connectors.handleWebhook('pipedrive', {
        topic: 'deal.stage_changed',
        payload: {
          dealId: current.id,
          dealTitle: current.title,
          previousStage: previous.stage_id,
          newStage: current.stage_id,
          personId: current.person_id,
          value: current.value,
          currency: current.currency
        }
      });
    }
  }

  res.status(200).send('OK');
});
```

### Zoeken in Pipedrive

```javascript
// Global search across persons, deals, and organizations
const query = encodeURIComponent('jane@example.com');
const response = await fetch(
  `https://api.pipedrive.com/v1/itemSearch?term=${query}&item_types=person,deal&api_token=${API_TOKEN}`
);

const { data } = await response.json();
// Returns matching persons, deals, and organizations
```

## Rate limits

| Plan | Limiet | Details |
| --- | --- | --- |
| **Essential** | 80 requests/10 sec | Per API token |
| **Advanced** | 100 requests/10 sec | Per API token |
| **Professional** | 200 requests/10 sec | Per API token |
| **Power** | 200 requests/10 sec | Per API token |
| **Enterprise** | 400 requests/10 sec | Per API token |
| **OAuth apps** | 80 requests/2 sec | Per access token |

Aanvullende limieten:

| Resource | Limiet |
| --- | --- |
| **Per pagina** | Max. 500 records |
| **Webhooks** | 40 per account |
| **Bulk delete** | 100 items/request |
| **Search** | Standaard rate limits |

Rate limit-headers

Pipedrive retourneert `X-RateLimit-Limit`-, `X-RateLimit-Remaining`- en `X-RateLimit-Reset`-headers. Implementeer backoff wanneer `X-RateLimit-Remaining` richting nul gaat.

## Probleemoplossing

| Probleem | Oorzaak | Oplossing |
| --- | --- | --- |
| `401 Unauthorized` | Ongeldig API token | Regenereer het token in Pipedrive Settings > API |
| `403 Forbidden` | Accountrechten | Zorg dat het account admin-toegang heeft voor API-gebruik |
| Personen zonder e-mail | Geen e-mail op record | Filter personen met geldig e-mailadres voor synchronisatie |
| Custom fields worden niet gemapt | Verkeerde field key | Gebruik Pipedrive’s field key (hash), niet de weergavenaam |
| Webhooks niet ontvangen | Firewall blokkeert | Zorg dat de webhook-URL publiek bereikbaar is via HTTPS |
| Dubbele personen | Meerdere records met hetzelfde e-mailadres | Gebruik Pipedrive’s merge API voor synchronisatie |
| `429 Too Many Requests` | Rate limit overschreden | Implementeer backoff met de `X-RateLimit-Reset`-header |

## Best practices

1. **Gebruik OAuth voor productie** - Geef voorkeur aan OAuth 2.0 boven API tokens in productieapplicaties
2. **Track dealfasewijzigingen** - Gebruik webhooks om Brevo-automatiseringen te triggeren bij pipelinefase-overgangen
3. **Map custom fields** - Gebruik custom field keys van Pipedrive (niet namen) voor betrouwbare veldmapping
4. **Handel paginering af** - Gebruik de parameters `start` en `limit`; controleer `more_items_in_collection`
5. **Gebruik het Recents-endpoint** - Poll `/v1/recents` voor incrementele syncs in plaats van volledige exports
6. **Deduplicatie vóór synchronisatie** - Merge dubbele personen in Pipedrive voordat je synchroniseert naar Brevo
7. **Gebruik sandbox-accounts** - Maak een developer sandbox-account voor het testen van integraties

## Beveiliging

- **API token-authenticatie** - Eenvoudige token-gebaseerde toegang voor persoonlijk gebruik
- **OAuth 2.0** - Veilige gedelegeerde toegang voor externe applicaties
- **Alleen HTTPS** - Alle API-communicatie vereist TLS-encryptie
- **Webhook HTTPS** - Webhooks worden alleen afgeleverd aan HTTPS-endpoints
- **Rolgebaseerde toegang** - Pipedrive-rechten respecteren gebruikersrollen
- **SOC 2-gecertificeerd** - Pipedrive hanteert SOC 2-compliance
- **GDPR-compliance** - Ondersteunt data-export- en verwijderingsverzoeken

## Gerelateerde bronnen

- [Brevo-connector](https://tajo.io/nl/docs/connectors/marketing/brevo)
- [Shopify-connector](https://tajo.io/nl/docs/connectors/ecommerce/shopify)
- [Customer Sync Skill](https://tajo.io/nl/docs/skills/data-sync/customer-sync)
- [Brevo Contacts API](https://tajo.io/nl/docs/contact-management)
