Skip to content
  • There are no suggestions because the search field is empty.

Salesforce integration overview

Integration scope

Sellfire lead and contact system and custom fields can be individually synced bidirectionally or unidirectionally with Salesforce lead and contact system and custom fields automatically upon lead creation and/or lead update. Field data can be synced from Sellfire to connect to or create Salesforce accounts, opportunities, and custom objects at the time of demo set and/or when sales are made in Sellfire.

Getting started

Import existing leads

Prior to activating your Sellfire <-> Salesforce integration, export all of the leads from Salesforce that you’d like to create or enrich with additional data, and import them into Sellfire via System Configuration > Lead Management > Import Leads. Then authenticate your Salesforce integration and map your fields to ensure that the data remains synced moving forward.

Authenticate Salesforce via Sellfire

To get started with the integration, first, you will need to authenticate Salesforce via an Sellfire Enablement Edition. To do this, login with your Enablement Edition, and navigate to the System Configuration section by clicking on the gear in the left navigation bar. Then click on the Integrations sub tab on the left-hand side, and click Connect in the Salesforce tile (shown below).

You will then be taken to the Salesforce login page (shown below) where you can enter your admin Salesforce credentials to authenticate Sellfire with Salesforce. Accept the prompt to authenticate, and you will then be taken back to Sellfire.

In order to support the integration, your Salesforce account needs to be able to View, Create, and Update Accounts, Contacts, Opportunities, and Opportunity Line Items.

Integrations_-_Salesforce_Authentication.png

Once successfully authenticated, you will see Connected in the Salesforce tile in Sellfire (shown below).

Integrations_-_Salesforce_connected.png

Setup field mappings

The next thing you will need to do is configure field mappings for the integration. The sync will not function until you have at least the Sellfire primary phone number field configured. It is strongly recommended that you also configure at least the Sellfire business name and state (state dictates 1-party vs. 2-party call recording) field mappings as well. All custom fields that you have created in Sellfire can be mapped.

To get started with field mappings, click on the More Actions button in the Salesforce tile and then click Configure Field Mappings. You will then see the field mapping screen (shown below). Note that initially, no fields will be mapped.

Here you can configure field mappings for system fields, which are fields that Sellfire provides by default, and Custom fields, which are any fields that Enablement users in your organization have created in the System Configuration > Your Organization > Field Manager section.

To map fields:

  1. Click Map System Field or Map Custom Field. A modal will appear (shown below).
  2. Determine the action(s) that you want to trigger any syncs. These can be lead creation / update, demo set, and/or when a sale is processed in Sellfire.
  3. On the left side of the modal that appears, select the Sellfire Object, which determines which Sellfire fields are selectable in the Sellfire Field dropdown.
  4. Select the Sellfire Field that you would like to map.
  5. On the right side of the modal, select the Salesforce Field Category, which determines which Salesforce fields are selectable in the Salesforce Field dropdown. All of your Salesforce fields, including custom fields, will be automatically populated and selectable based on the Salesforce Field Category that is selected.
  6. Select the Salesforce Field that you would like to map.
  7. Click Next in the bottom right corner of the modal.
  8. You will be taken to the Select Sync Rule screen (Step 3 of 3), which allows you to choose in which direction(s) you want the field to sync. You have four options:
    • Always use Salesforce unless blank. In this case, the field will come over from Salesforce to Sellfire, but if the field is updated or created in Sellfire, it will not sync over to Salesforce. This can be useful for acquisition or attribution type data that you don’t want to change in Salesforce. If the field is blank, it will not sync over from Salesforce.
    • Always use Sellfire. In this case, the field will sync over to Salesforce if it is updated in Sellfire. However, if the field is updated in Salesforce, it will not come over to Sellfire. This can be useful if you want to keep your lead data in Sellfire clean.
    • Two-way sync. This is the two-way data sync in Sellfire. If the field is updated in Sellfire, it will be sent over to Salesforce. If the field is updated in Salesforce, it will be sent over to Sellfire.
    • Don’t Sync. For this option, the field does not sync. Note that this is an explicit way to not sync the field. Not having a field mapping will also not sync the field.
  9. Click Save at the bottom right of the modal.

Way to go! You have successfully mapped a field. Now, as long as you have at least the Sellfire primary phone number field mapped, the sync will be triggered per your configurations. It is strongly recommended that you also configure at least the Sellfire business name and state (state dictates 1-party vs. 2-party call recording) field mappings as well.

The Custom Field Mapping section works the same, except the Sellfire Field dropdown populates all the custom fields that have been created in the System Configuration > Your Organization > Field Manager section.

Match dropdown field values between Sellfire & Salesforce

When mapping fields with dropdown values, an Inspect column is available in the field mapping table that allows you to easily determine if the dropdown values in Sellfire match the dropdown values for those fields in Salesforce. This functionality allows you to quickly diagnose and resolve any potential data validation issues in these fields.

After you have mapped the fields, if you click View in the row of the field that you want to inspect, you will be provided with the current dropdown options that exist in Sellfire (left column), the current dropdown options that exist in Salesforce (middle column), a notification telling you if those values align in both Sellfire and Salesforce (green check mark if matching; red text if not), and the ability to create those values automatically in Sellfire by clicking a button (right column).

Salesforce object sync direction(s)

Salesforce object Sync direction(s) Sync trigger(s)
Contact & Lead Sellfire <-> Salesforce
  • New lead or contact created in Salesforce (where phone number doesn't already exist in Sellfire).
  • Any updates to fields mapped in Sellfire.
Account Sellfire <-> Salesforce
  • New account created in Salesforce (where phone number doesn't already exist in Sellfire).
  • At time of demo set in Sellfire (if turned on. Off by default).
  • After connection at time of demo set (if turned on), any updates to fields mapped between Sellfire and Salesforce Account fields.
  • At time of sale in Sellfire (if fields mapped from Sellfire to the Salesforce Account with the Sale event).
Opportunity Sellfire -> Salesforce
  • At time of demo set in Sellfire (if turned on. Off by default). Fields included on the created Opportunity are not configurable.
  • At time of sale in Sellfire (if fields mapped from Sellfire to the Salesforce Opportunity with the Sale event). Fields mapped from Sellfire to Salesforce Opportunity fields will be included.
Custom objects Sellfire -> Salesforce
  • At time of sale in Sellfire (if fields mapped from Sellfire to the Salesforce custom objects with the Sale event).

Supported Sellfire system fields

Click here to reference the System Configuration > Your Organization > Field Manager article.

Ownership sync

Bidirectionally sync lead ownership between Sellfire and Salesforce leads and/or contacts using the Owned Rep Id Sellfire field found under the Sellfire Lead object. If synced from Salesforce to Sellfire (or bidirectionally), Sellfire lead ownership will change* if the rep ID to which it is changed in Salesforce is associated with an OPSIQ rep user who has not been deleted. Find and export your current Sellfire rep IDs in System Configuration > Your Organization > Sales Teams > List view.

* To help prevent confusion with upcoming specific-time events (specific time callbacks, demos, decision calls), if owned leads have future specific-time events in Sellfire, Sellfire will not accept a change in ownership from Salesforce, and an email notification will be sent to Enablement users so that they can determine a resolution.

Phase sync

Send all Sellfire lead phases to Salesforce and change specific phases in Sellfire from Salesforce leads and/or contacts. To ensure reporting remains accurate and intuitive, Sellfire only accepts Phase changes from Salesforce if changing the Phase to the ColdCallCold, Resting, Long Resting, Retired, and Customer phases.

In a sales cycle, leads progress through these phases depending upon activities made by reps. Leads cannot go backwards in a sales cycle. Once a sales cycle is completed (determined by activities reps make on leads), if the lead was not put into a Customer or Retired phase to end the sales cycle, after a lead has completed any resting phases, it will return to the first phase (ColdCallCold) to begin another sales cycle.

To ensure alignment, enter the Sellfire Phase names exactly as they appear below as dropdown values in a custom Salesforce dropdown field in the Salesforce lead and/or contact object.

Sellfire Phase name Sync direction(s) Description
ColdCallCold Sellfire <-> Salesforce

A lead is unassigned or has not had a dial attempt in the current sales cycle. Use case: Sync bidirectionally to move leads out of Retired or Customer phases from Salesforce if they are ready to be worked by reps.

ColdCallWorkingNum Sellfire -> Salesforce Cold call working number. A dial has been made on the lead in the current sales cycle showing that the number dialed is a working number.
ColdCallNDM Sellfire -> Salesforce Cold call non-decision maker (gatekeeper) reached in the current sales cycle.
ColdCallDM Sellfire -> Salesforce Cold call decision maker reached in the current sales cycle.
HeldPhase Sellfire -> Salesforce Once a demo has been set for the first time in the current sales cycle and that demo time has not passed.
PostInitialHelPhaseDemoNotHeld Sellfire -> Salesforce Post initial held phase - demo not held. Once a demo has been set for the first time in the current sales cycle, but that demo was not held at the scheduled time.
PostHoldPhase Sellfire -> Salesforce Once a demo has been held in the current sales cycle.
RestingColdCall Sellfire -> Salesforce Leads that were put into a resting phase (not interested call result) while in a cold call phase.
LongRestingColdCall Sellfire -> Salesforce Leads that were put into the long resting phase (not interested call result after held demo) while in a cold call phase.
Resting Sellfire <-> Salesforce Leads that were put into a resting phase (not interested call result) before a demo was held in the most-recent sales cycle.
LongResting Sellfire <-> Salesforce Leads that were put into a resting phase (not interested call result) after a demo was held in the most-recent sales cycle.
RetiredColdCall Sellfire -> Salesforce Leads that were put into the Retired phase while in a cold call phase.
Retired Sellfire <-> Salesforce

Leads that were put into the Retired phase after a cold call phase. Use case: Sync bidirectionally to move Sellfire leads into the Retired phase from Salesforce so that reps cannot claim or dial and will not be automatically assigned these leads.

Customer Sellfire <-> Salesforce

Use case: Sync bidirectionally to move Sellfire leads into the Customer phase from Salesforce so that reps cannot claim or dial and will not be automatically assigned these leads.

Sync existing Salesforce leads & contacts

To connect Salesforce leads and contacts that existed prior to the integration being turned on to Sellfire leads, navigate to System Configuration > Lead Management > Import Leads, and complete a .csv import using the column headers and data formats described in the System Configuration > Lead Management > Import Leads article.

Note that if you do not complete this step and new leads are created in Sellfire with primary phone numbers that already exist on leads and contacts in Salesforce, those Sellfire leads and existing Salesforce leads and contacts will not be connected until a demo is set in Sellfire (if you have configured field mapping using the demo event) and/or a sale is processed in Sellfire (if you have configured field mapping using the sale event).

Sellfire lead -> Salesforce Lead / Contact creation

After the integration is connected with fields mapped from Sellfire to Salesforce, when a new lead is created in Sellfire, if the required fields are mapped to Salesforce Lead and Contact object fields and the primary phone number for the Sellfire lead is not already associated with an existing Salesforce Lead or Contact, Sellfire will use the following logic to create new Salesforce Contacts and Leads:

  • If an Sellfire lead meets the following conditions, Sellfire will create the lead as a Salesforce Contact:
    • The Lead moves from a Cold call phase to the Held Phase (when a demo is set for the first time in the sales cycle).
    • There is a Salesforce Contact ID in the lead.
      • This applies to an Sellfire lead whose sync already updated from a Salesforce Lead to Salesforce Contact or an Sellfire lead that had a Salesforce Contact ID attached to it via a .csv lead import.
  • In all other cases, Sellfire will create an Sellfire lead as a Salesforce Lead.

To toggle on/off if you want newly created leads in Sellfire to attempt to create leads in Salesforce, navigate to System Configuration > Integrations > Salesforce More Actions > Settings.

Salesforce Account, Lead, & Contact -> Sellfire lead creation

After the integration is connected with at least a phone number mapped from Salesforce to the Sellfire primary phone number field, when a new account, lead, or contact is created in Salesforce, if the phone number that is mapped back to the Sellfire primary phone number field does not already exist as a primary phone number on a lead in Sellfire, a new Sellfire lead will be created.

To toggle on/off if you want newly created accounts, leads, and contacts in Salesforce to attempt to create leads in Sellfire, navigate to System Configuration > Integrations > Salesforce More Actions > Settings.

Sync direction settings

To toggle on/off lead creation and/or updates in either direction between Sellfire and Salesforce and the Sellfire to Salesforce lead activity sync, navigate to System Configuration > Integrations > Salesforce More Actions > Settings (shown below).

Salesforce Lead to Contact connection update

Automatically create and connect to Salesforce Contacts when reps set demos in Sellfire. Connection updates will be triggered when reps log dispositions per the rules described below.

Requirements

  1. Contact our Support team (support@sellfire.com) to turn this function on for your organization.
  2. In System Configuration > Integrations > Salesforce Configure Field Mapping, map both the Sellfire and Salesforce required fields from Sellfire to the Salesforce Lead and Contact objects using the create/update event. Note that if any of these fields are not mapped to the correct fields in the Salesforce Lead and Contact objects and/or if there are no values in these fields in Sellfire, Sellfire lead syncs will not be updated from Salesforce Leads to a Salesforce Contacts.
    Sellfire object Sellfire field name Salesforce object Salesforce field name Sync direction(s)
    Lead Primary Phone Number Contact Phone Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Last Name Contact Last Name Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Primary Phone Number Lead Phone Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Last Name Lead Last Name Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Business Name Lead Company Sellfire -> Salesforce *or* Sellfire <-> Salesforce
  3. Salesforce also requires an Account ID field on the Contact object, which Sellfire will implicitly connect using primary phone number, business name, and city data from the Sellfire lead. No action is required from your organization for this requirement.

Opportunity creation

Salesforce Opportunities can be created by Sellfire when reps set demos and/or make sales in Sellfire.

At the time of demo set

If a lead enters the Held phase (when a demo is set) in Sellfire, an Opportunity will be created in Salesforce.
If a rep processes a sale for that lead in that same sales cycle in Sellfire, Sellfire will update that existing Opportunity StageName to be "Closed Won."
If the Lead instead goes into the Resting or Retired phases in Sellfire, no action will be taken by Sellfire, and the Opportunity StageName can be updated manually in Salesforce.
If the Lead comes out of the Resting or Retired phases in Sellfire, a new sales cycle is started, and it again enters the Held phase (when a demo is set), Sellfire will create a new Opportunity in Salesforce tied to the same Salesforce Account as the previous Opportunity.

Requirements

  1. Contact our Support team (support@sellfire.com) to turn this function on for your organization.
  2. Once this functionality has been turned on, navigate to System Configuration > Integrations > Salesforce More Actions > Configure Field Mapping, and map the following fields using the demo event:
    Sellfire object Sellfire field name Salesforce object Salesforce field name Sync direction(s)
    Lead Primary Phone Number Account AccountPhone Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Business Name Account AccountName Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Primary Phone Number Contact Phone Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Last Name Contact Last Name Sellfire -> Salesforce *or* Sellfire <-> Salesforce
    Lead Business Name Opportunity Name Sellfire -> Salesforce

Default fields included on the opportunity

Salesforce field Sellfire data
AccountId The account ID of the connected Salesforce Account.
ContactId The contact ID of the connected Salesforce Contact.
Name The Business Name from the lead in Sellfire.
CloseDate The date/time of the future demo.
StageName By default, this is "Qualification." This can be changed to a different value by reaching out to our Support team (support@sellfire.com).

Additional fields can be mapped from Sellfire to Salesforce Opportunity fields using the demo event.

At time of sale

Any fields mapped from Sellfire to Salesforce Opportunity fields in the System Configuration > Integrations > Configure Field Mapping section using the Sale event will be pushed when reps confirm sales in Sellfire. The StageName will be set to "Closed Won" in the Opportunity that's created.

Sellfire Sales Sync

After the primary configuration has been set up and at least one field has been mapped with the Sale event type, Sellfire will send over sales data to Salesforce as sales are processed in Sellfire.

When a sale is made, the integration will do the following in Salesforce:

  • Connect to or create an Account.

Sellfire -> Salesforce Account sync / creation logic:

1. Search Sellfire primary_phone_number to find a matching Salesforce Account.Phone.

> If match, search Sellfire business_name to find a matching Salesforce Account.Name.

>> If single match, connect to Salesforce Account.

>> If multiple matches, search City.

>>> If single match, connect to Salesforce Account.

>>> If multiple matches, create new Salesforce Account.

>>> If no matches, create new Salesforce Account.

>> If no matches, create new Salesforce Account.

> If no match, move to 2.

2. Search Sellfire business_name to find a matching Salesforce Account.Name.

> If match, search City.

>> If single match, connect to Salesforce Account.

>> If multiple matches, create new Salesforce Account.

>> If no matches, create new Salesforce Account.

> If no match, create new Salesforce Account.

  • Connect to or create a Contact and link it to the Account.

    Sellfire -> Salesforce Contact sync / creation logic:

    1. Under the connected Salesforce Account, search Sellfire primary_phone_number to find a matching Salesforce Contact.Phone.

    > If match or matches, search Sellfire last_name to find a matching Salesforce Contact.LastName.

    >> If single match, connect to Salesforce Contact.

    >> If multiple matches, create new Salesforce Contact.

    >> If no match, create new Salesforce Contact.

    > If no match, create new Salesforce Contact.

    • A contact will also be connected or created for every Associated Contact on the Sellfire lead.
  • Create an Opportunity and link it to the Contact.
  • Create an Opportunity Line Item for each sale item in the Sellfire sale and link them all to the Opportunity.

Adding and re-syncing sales

To add sales to Sellfire that were made in Salesforce, navigate to System Configuration > Lead Management > Import Leads, and complete a .csv import using the column headers and data formats described in the System Configuration > Lead Management > Import Leads article.

To re-sync sales to Salesforce that were made in Sellfire, navigate to System Configuration > Integrations > Salesforce More Actions > Integration Reports, and click the Repush Event button in the Action column for the sale that you are wanting to sync.

Sync speed

Sellfire sends newly created leads and updates to mapped fields in Salesforce within seconds of them happening in Sellfire. Sellfire polls Salesforce leads and contacts every minute to sync newly created leads and field updates from Salesforce. There is a limit of 1000 Salesforce Leads and Contacts that can be fetched by Sellfire in every minute interval.

Activity sync

Send Sellfire call and email activities to Salesforce Tasks. This can be activated by navigating to System Configuration > Integrations > Salesforce More Actions > Settings. Note that Sellfire does not currently support receiving these activities from Salesforce.

Supported Task types from Sellfire to Salesforce

  • Calls: Sellfire will send all lead activity related to phone calls to Salesforce Call Tasks.
  • Emails: Sellfire will send all lead activity related to emails to Salesforce Email Tasks.
  • Non-call dispositions
  • Reschedule Event dispositions: Sellfire will create activities when users reschedule events from the Event Detail page.
  • Delete Event dispositions: Sellfire will create activities when users delete events from the Event Detail page.

Activity sync field mappings

No additional action is required to map the following fields once the activity sync is activated. Sellfire connects these to the Salesforce Task object automatically.

Sellfire field Salesforce field Example
User.sf_owner_id OwnerId  
Conference.duration CallDurationinSeconds  
N/A CallObject  
Disposition.type (start_time) CallDisposition DemoSet (3/1/23 08:00:00)
LeadActivity.channel CallType  
LeadActivity.notes Description  
LeadActivity.created_at CompletedDateTime  
N/A IsRecurrence  
User.sf_owner_id CreatedById  
LeadActivity.created_at ActivityDate  
N/A Email  
N/A LastModifiedById  
Lead.sf_lead_id / Lead.sf_contact_id WhoId  
Lead.primary_phone_number Phone  
N/A Priority  
N/A RecurrenceInterval  
N/A WhatId  
N/A IsReminderSet  
N/A RecurrenceRegeneratedType  
Static : Completed Status  
LeadActivity.communication_type Subject  
LeadActivity.communication_type TaskSubtype  
LeadActivity.communication_type Type  
ScheduleItem.start_time EventDateTime_c  

Salesforce Task object mapping

Sellfire will use the Salesforce Task object to trigger Lead Activity. Below is the schema for how the Task object is related to other Salesforce objects that Sellfire uses. The field mappings of Tasks are pre-set by Sellfire and cannot be configured by users in the UI. If you require special mapping configurations with Salesforce Tasks, please reach out to Sellfire support (support@sellfire.com).

  • User → Task: Salesforce User has a one to many relation with Task.
  • Lead → Task: Salesforce Lead has a one to many relation with Task.
  • Contact → Task: Salesforce Contact has a one to many relation with Task.
  • Account → Task: Salesforce Account has a one to many relation with Task.

Example of how Sellfire activities appear in Salesforce

Multi-site / location sync

When a sale is made in Sellfire, Sellfire can automatically create multiple site entries in Salesforce for each of the businesses’ locations based on site data that reps enter into a multi-text custom field in Sellfire and connect them with Salesforce Accounts and a custom object.

Once a sale is made in Sellfire, Sellfire will:

  1. Create or connect to an existing Salesforce Contact.
  2. Create or connect to an existing Salesforce Account.
  3. Create or connect to an existing Salesforce Opportunity.
  4. Create new site entries in Salesforce for each value in the Sellfire multi-text custom field.
  5. Connect the Salesforce sites to the Salesforce Account.
  6. Create a Salesforce Organization entity (custom object) and connect the Salesforce Sites to it.

Requirements

  1. In Salesforce, create a custom object to act as the Organization entity as described above.
  2. In System Configuration > Your Organization > Field Manager, create a custom multi text field.
  3. Map the Sellfire custom multi text field that you created to the applicable location__c field in Salesforce.

Maintenance

Edit & delete field mappings

To edit or delete field mappings:

  1. Click on Edit at the far right of the field mapping table (shown below) under the Manage column.
  2. If editing, make any needed changes per the same process described above when creating field mappings, and click Save at the bottom right of the modal.
    Note that edits are not retroactive. They only apply for lead updates going forward.
  3. If deleting, click Delete at the bottom of the modal (shown below).
    Integrations_-_Salesforce_Delete_Mapping.png

Manage errors

Salesforce field constraints

Salesforce field constraints can cause the Sellfire -> Salesforce sync to fail. For instance, if there is a $0-10,000 constraint on the sale price field in Salesforce, and the integration attempts to sync a sale price for $11,000, the sync will fail. Or since the Salesforce field character limit is 255, if you are attempting to map a field that could contain more than 255 characters (like Google map business locations), the sync will fail. Make sure you check your Salesforce integration for these types of constraints. It is recommended that you either do not map these types of fields or remove the constraints to prevent any integration issues.

Field mapping status column

The Status column in the field mapping table (shown below) helps quickly diagnose which field mappings may have issues. If the status is "Ok," the field mapping is successfully connected. If the status is "Issue," it usually means there is a type mismatch between Sellfire and Salesforce; such as a multi-select field in Salesforce and a number field in Sellfire. Check the field managers in Sellfire (System Configuration > Your Organization > Field Manager) and Salesforce to make sure the types line up.

Integration reports

Successes and errors will get logged in the Integration Reports section found by clicking More Actions > Integration Reports in the Salesforce tile (shown below).

When opened, the Integration Report will populate all successes and errors that have occurred with the dates and reasons associated with each success and error. Sales can also be re-synced to Salesforce by clicking the Repush Event button under the Action column in the row that you would like to re-sync.