Skip to main content
Available on the Pro, Teams, and Enterprise plans.
The Salesforce integration syncs Wave contacts into Salesforce as either Leads or Contacts, your choice at setup. Wave uses a custom external ID field to upsert records, preventing duplicates even if a record already exists. Both production and sandbox Salesforce environments are supported.

How to Connect

1

Open the integration

Go to Integrations → Salesforce.
2

Choose a record type

Choose whether to sync contacts as Leads or Contacts.
3

Enable auto-sync (optional)

Turn on Auto-sync to import all existing Wave contacts immediately.
4

Connect Salesforce

Click Connect and sign in to your Salesforce account.
Wave requests offline access (to keep the connection active without repeated logins) and read/write access to create and update records in Salesforce.

What Gets Synced

Wave fieldSalesforce fieldLeadsContacts
First nameFirstNameYesYes
Last nameLastNameYesYes
Primary emailEmailYesYes
Primary phonePhoneYesYes
Job titleTitleYesYes
CompanyCompanyYes (required)-
Contact noteDescriptionYesYes
Lead sourceLeadSource = “Wave Connect”Yes-
Assigned team memberOwnerId (matched by email)YesYes
Sync direction: Wave → Salesforce (outbound only) When it syncs: Real-time on contact create, update, or delete

Features

  • Leads or Contacts: choose the Salesforce record type that fits your workflow.
  • Sandbox support: connect to a Salesforce sandbox environment for testing.
  • Auto-sync on connect: import all existing Wave contacts on first connection.
  • Deduplication: a custom external ID field (WaveConnectId__c) is created automatically and used for upserts, so re-syncing never creates duplicates.
  • Owner assignment: contacts are assigned to the Salesforce user whose email matches the Wave team member.

Manually Adding the External ID Field

Wave normally creates the WaveConnectId__c external ID field automatically when you connect. You only need this step if you connect without a Salesforce admin account, since creating a custom field requires admin permissions. In that case, have your Salesforce administrator add the field manually as a backup.
1

Open the Lead object

In Salesforce Setup, open Object Manager and select the Lead object.
2

Check for the field

Under Fields & Relationships, check whether WaveConnectId__c already exists.
3

Create the field

If it doesn’t exist, click New, select Text as the field type, and name it so the API name is WaveConnectId__c.
4

Set field-level security

Confirm that Standard User has read/write access to the field.
5

Add to page layouts and save

Add the field to the relevant page layouts, then save.
If the field already exists, open it and select Set Field-Level Security to confirm Standard User has read/write access. For full details, see the Salesforce setup guide.

Limitations & Requirements

  • The custom field WaveConnectId__c is created automatically on your Salesforce account. Do not delete or rename it. It is used for deduplication.
  • For Leads, the Company field is required by Salesforce. If a Wave contact has no company, it defaults to N/A.
  • If Salesforce detects a duplicate via its duplicate rules, Wave overrides the rule and saves the record.
  • Owner matching is by email. If no matching Salesforce user is found, the contact is saved without an owner.

Disconnecting

Go to Integrations → Salesforce and click Disconnect. This removes the integration and revokes Wave’s access. Records already synced to Salesforce are not deleted.