Pipedrive + Jobber Integration Guide
This guide walks you through setting up a complete integration between Pipedrive (CRM) and Jobber (field service management). By the end, your sales contacts and service clients will stay in sync across both platforms.
Overview
Goal: Keep Pipedrive Persons and Jobber Clients in sync, so your sales team's contacts automatically flow to your field service team as clients.
What You'll Set Up:
- Pipedrive Persons synced with Jobber Clients
- Pipedrive Organizations synced with Jobber company-type Clients
- Phone and address formatting handled automatically
- Optional: Pipedrive Deals referenced alongside Jobber Jobs
Time Required: 15–20 minutes
Prerequisites
Before starting, ensure you have:
- [ ] A FluxCascade account (sign up free)
- [ ] Admin access to your Pipedrive account
- [ ] Admin access to your Jobber account
- [ ] Both platforms connected to FluxCascade
If you haven't connected your platforms yet, see the Pipedrive integration docs and Jobber integration docs first.
Step 1: Understand the Data Model Differences
Pipedrive and Jobber organize contacts differently:
- Pipedrive separates people (
Persons) from companies (Organizations). A Person can belong to an Organization. Emails and phone numbers are stored as arrays (a Person can have multiple). - Jobber has a single
Clientobject. A Client can be an individual or a company (controlled by theis_companyflag). Clients have a single primary email and phone, plus a billing address.
This mapping connects Pipedrive Persons to Jobber individual Clients.
Step 2: Plan Your Field Mapping
Person → Client Field Pairs
| Pipedrive Person Field | Jobber Client Field | Notes |
|---|---|---|
first_name | first_name | Direct mapping |
last_name | last_name | Direct mapping |
email[0].value | email | Primary email only |
phone[0].value | phone | Primary phone; add phone_e164 transform |
org_name | company_name | Organization name as text |
Address Handling
Pipedrive stores addresses on Organizations, not Persons. To sync addresses to Jobber Clients, you have two options:
Option A: Sync Organization address to Client billing address
org.address_street_number+org.address_route→billing_address.street1org.address_locality→billing_address.cityorg.address_admin_area_level_1→billing_address.provinceorg.address_postal_code→billing_address.postal_code
Option B: Use a custom Person field for address If you've added a custom address field on Pipedrive Persons, map it directly.
Step 3: Create the Mapping
- Go to Mappings in FluxCascade
- Click New Mapping
- Configure the basics:
Source:
- Connection: Your Pipedrive connection
- Object: Persons
Target:
- Connection: Your Jobber connection
- Object: Clients
Direction: Bidirectional (recommended for active sales-to-service handoff)
- Click Continue
Step 4: Configure Field Pairs
Basic Fields
-
First Name
- Source:
first_name - Target:
first_name - Transform: None
- Source:
-
Last Name
- Source:
last_name - Target:
last_name - Transform: None
- Source:
-
Email (Matching Field)
- Source:
email[0].value - Target:
email - Transform:
lowercase - Mark as Matching Field
- Source:
-
Phone
- Source:
phone[0].value - Target:
phone - Transform:
phone_e164 - Default country: US (or your country)
- Source:
-
Company Name
- Source:
org_name - Target:
company_name - Transform: None
- Source:
Phone Number Formatting
Pipedrive stores phone numbers in various formats (e.g., (555) 123-4567, 555.123.4567, +15551234567). Jobber expects a consistent format. The phone_e164 transform normalizes all formats to +15551234567.
If a Pipedrive Person has multiple phone numbers, only phone[0].value (the primary) syncs by default. To sync a secondary phone, add another field pair mapping phone[1].value to a Jobber custom field.
Step 5: Set Matching Strategy
- In mapping settings, find Matching Strategy
- Select Email as the primary matching field
- Enable Case Insensitive Matching
Step 6: Organization Mapping (Optional)
To sync Pipedrive Organizations as Jobber company-type Clients:
- Create a second mapping: Pipedrive Organizations → Jobber Clients
- Map
name→company_name - Set a static value:
is_company=true - Map address fields as described in Step 2
Step 7: Test the Mapping
-
Click Test Sync
-
Review the preview
-
Check for:
- Correct name mapping
- Email matching working
- Phone numbers formatted correctly
- Company names populated
-
Adjust and re-test if needed
Step 8: Run Initial Sync
- Click Sync Now
- Choose Full Sync for initial population
- Monitor progress in real-time
- Review completion statistics
Expected Results:
- Pipedrive Persons created as Jobber Clients
- Jobber Clients created as Pipedrive Persons (bidirectional)
- Phone numbers normalized to E.164 format
Step 9: Enable Scheduled Sync
- Go to mapping Settings
- Enable Scheduled Sync
- Choose frequency: Every 15 minutes (recommended)
- Save
Deals-to-Jobs Consideration
Pipedrive Deals and Jobber Jobs represent different stages of the customer lifecycle. While this guide focuses on contact/client sync, you may also want to create a Deals → Jobs mapping. See the Deals to Jobs guide for a general approach.
Key differences to keep in mind:
- Pipedrive Deal values are monetary amounts; Jobber Job totals include line items
- Pipedrive Deal stages are customizable per pipeline; Jobber uses fixed statuses
- A won Deal in Pipedrive often corresponds to an "Active" Job in Jobber
Verification
Check Pipedrive
- Open a Person that should have synced
- Verify Jobber-created persons appear
- Check field values and phone formatting
Check Jobber
- Open a Client that should have synced
- Verify Pipedrive-created clients appear
- Check field values match
Review Sync Logs
- Go to Syncs
- Click on recent sync jobs
- Verify success rates and any errors
Common Issues & Solutions
Phone Numbers Show as Invalid
Cause: Pipedrive stores numbers without country codes, and the phone_e164 transform can't determine the country.
Solution: Set the default country in the transform configuration. For US numbers, set default country to US.
Multi-Value Email Not Syncing
Cause: Using email instead of email[0].value in the field selector.
Solution: Pipedrive stores emails as arrays. Use email[0].value for the primary email. To sync all emails, concatenate with the JOIN transform.
Organization Names Missing
Cause: The Person's org_id is populated but org_name isn't available as a direct field.
Solution: Use org_name (the resolved Organization name) rather than org_id (the numeric reference).
Duplicate Clients Created
Cause: Email matching not finding existing records.
Solution:
- Ensure email is the matching field
- Enable case-insensitive matching
- Verify emails exist in source records
Best Practices
-
Start with Person → Client sync – Get individual contacts working before adding Organizations
-
Normalize phone numbers early – Apply
phone_e164to avoid format-based duplicates -
Use email for matching – Most reliable shared identifier between Pipedrive and Jobber
-
Map Organizations separately – Keep Person and Organization mappings independent for clarity
-
Monitor the handoff flow – Track how quickly new Pipedrive contacts appear in Jobber
Next Steps
- Deals to Jobs mapping – Sync opportunities to service jobs
- Phone Formatting guide – Advanced phone number handling
- Field Transformations – Data transformation options