Salesforce API: Extended Overview

This topic provides an overview of ClientSpace Salesforce API functionality and answers some frequently asked questions about the ClientSpace Salesforce API.

If you have specific questions about the ClientSpace Salesforce API or would like to work with us to create a custom ClientSpace Salesforce integration, log an Extranet case.

What Does the Salesforce API Do?

The Salesforce API is a two-way communication between the Sales processes in ClientSpace and Salesforce. It is customized to your business needs by PrismHR. It maintains data synchronization between a client’s ClientSpace installation and their respective Salesforce system. 

Note: A one-way configuration option is also available where you only export data to Salesforce from ClientSpace OR import data to ClientSpace from Salesforce.

If you implement the two-way configuration option, Salesforce sends Accounts, Opportunities and Contacts from Salesforce to ClientSpace at a specified Salesforce StageClosed In Salesforce, what is referred to as a Stage is the same as a Status in ClientSpace. Examples include Lead, Client, Terminated, etc..

Image Showing the Data Elements that Transfer Between ClientSpace and Salesforce

ClientSpace uses this information to create Organizations, Workspaces and Contacts in ClientSpace. ClientSpace then sends Organizations, Workspaces and Contacts information back to Salesforce (primarily to make Salesforce status updates).

For a more detailed overview of the data relationships between Salesforce and ClientSpace, see Salesforce API Data Relationships Overview.

Throughout the implementation, we reference common Salesforce terms such as Stage, Account, Opportunity, Object, and Flow. If you are new to Salesforce or just need a refresher, check out the Salesforce Terms topic. In this topic, we provide definitions of the Salesforce terms and list the comparable ClientSpace terms.

Understanding How the Salesforce API Supports the Deal Life Cycle

During the life cycle of a deal, either Salesforce or ClientSpace is responsible for the data. Typically, Salesforce owns the data in the Lead Discovery Cycle. As changes are made in Salesforce, ClientSpace is updated with those changes. When the deal has reached a certain level, ClientSpace no longer accepts changes from Salesforce but keeps Salesforce up-to-date with certain data as changes are made in ClientSpace

When ClientSpace dataforms (gen_) are updated from Salesforce, they are saved using Dataform Pipeline Logic, which executes business rules and triggers email templates.

What is Required to Implement the Salesforce API?

You initiate the process by creating a case in the Extranet indicating that you are interested in the Salesforce API. If you decide to proceed, a 16 hour project is created and assigned to a ClientSpace team member who will assist you with the implementation. This kicks off the implementation period which is broken into four phases.

Defining the Four Implementation Phases

In Phase 1, we ask you a series of questions to help us customize the implementation for your company. In Phase 2, we assist you in performing the Salesforce setup steps. In Phase 3, we complete ClientSpace setup steps. Finally, in Phase 4, we guide you in testing the integration and performing some cleanup steps after testing is complete.

Review the primary steps of each implementation phase in the image below:

What Are the Basic Fields that Can Be Mapped from Salesforce to ClientSpace?

The table below lists the basic fields that can be mapped from Salesforce to ClientSpace.

Salesforce ClientSpace

Technical Field Name

Salesforce API Path object

Field Label

Field Name

   

Organization Dataform

sfAcct.Name

Account/

Name

Name

sfAcct.Owner

Account/

Assigned To

flUserIDOwner

sfAcct.Phone

Account/

Phone

Phone

sfAcct.Fax

Account/

Fax

Fax

sfAcct.Website

Account/

Website

Website

sfOpptyty.LeadSource

Opportunities/

Source

crSource

sfAcct.Industry

Account/

Business Type

crBusinessType

sfAcct.BillingStreet

Account/

Address1, Address2

Address1

sfAcct.BillingStreet

Account/

Address2

Address2

sfAcct.BillingCity

Account/

City

City

SfAcct.BillingState

Account/

State

State

sfAcct.BillingPostalCode

Account/

Postal Code

PostalCode

sfAcct.BillingCountry

Account/

Country

Country

sfAccountID

Account/

ImportID

ImportID

   

Org Other Info Dataform

sfOppty.CloseDate

Opportunities/

Expected Close Date

ExpectedCloseDate

sfOppty.Type

Opportunities/

   

sfOppty.Lead Source

Opportunities/

   

sfOppty.Probability (%)

Opportunities/

Probability of Close

ProbabilityofClose

sfOppty.ID

Opportunities/

   
   

Contact Dataform

sfContact.AccountId

Contacts/

Organization

fkOrganizationId

sfContact.Owner

Contacts/

Assigned To

fkAssignedToUserID

sfContact.FirstName

Contacts/

First

FirstName

sfContact.LastName

Contacts/

Last

LastName

sfContact.Title

Contacts/

Job Title

Title

sfContact.Phone + Ext

Contacts/

Business Phone

BusinessPhone

sfContact.Email

Contacts/

Primary Email

Email1

sfContact.MobilePhone

Contacts/

Mobile

CellPhone

sfContact.Fax

Contacts/

Fax

Fax

sfContact.MailingStreet

Contacts/

Address 1

Address1

sfContact.MailingCity

Contacts/

City

City

sfContact.MailingState

Contacts/

State

State

sfContact.MailingPostalCode

Contacts/

PostalCode

PostalCode

sfContact.MailingCountry

Contacts/

Country

Country

sfContactID

Contacts/

Import ID

ImportId

   

Client Master Dataform

   

SIC Code

luAltIndustryCode

   

Activation Date

StartDate

sfAcct.ParentId

Account/

Parent Company

fkParentCompanyID

   

Kill Reason

luKillReason

sfOppty.Descriptions

Opportunities/

Description of Operations

DescriptionofOperations

sfOppty.StageName

Opportunities/

Status

Status

   

gen_ClientTeam

 

sfOppty.Owner

Opportunities/ 

Sales Respresentative

fkSalesRepUserID

Can I Map Custom Fields?

The ClientSpace Salesforce API allows you to connect custom Salesforce fields to fields in ClientSpace, allowing you to implement an API unique to your business. The exchange of data between the systems is highly configurable. Data elements are mapped at the field level for each system using standard ClientSpace Import Map Headers and Details. 

We will work with you to make sure that the fields required for your business needs are mapped appropriately.

Note: In Salesforce, "_c" is added to the end of the Field Name to indicate that it is a custom field:

Which Fields in ClientSpace Can Be Configured to Trigger an Export to Salesforce?

The following table lists the fields that can trigger an export from ClientSpace to Salesforce. These fields are used to trigger a ClientSpace workflow (i.e., automation) that exports to Salesforce when a value in the ClientSpace field listed below is changed. For the default PEO procedure (peo_salesforce_s_available_cs_updates), these fields and the associated system objects are as follows.

Associated System Objects

Fields

Org Trigger

  • Name

  • AKA

  • Phone

  • Fax

  • crStatus

  • Address1

  • Address2

  • City

  • State

  • PostalCode

  • Country

  • luCurrentPEO

  • crSource

  • crBusinessType

  • Website

  • IndustryCode

  • EmployerIDNumber

  • crCategory

  • DoNotCallp

     

Org Other Info Trigger

  • EmployeeCount

  • Gross Payroll

Contact Trigger

  • fkOrganization

  • fkAssignedToUserID

  • FirstName

  • LastName

  • Title

  • Category

  • BusinessPhone

  • Email1

  • CellPhone

  • Fax

  • Address1

  • City

  • State

  • PostalCode

  • Country

  • Active

Client Master Trigger

  • ClientNumber

  • Status

  • Dateof1stPayroll

  • CongractEffectiveDate

  • CorportationType

  • luAItIndustryCode

  • SalesRegion

  • fkParentCompanyID

  • luKillReason

     

Incident Trigger Fields (Task)*

  • Status

 

ContactManagementNote

  • Notes

 

Manual Sync

  • Sync with Prism HR option on Client Master

  • SFManualSync

     

* Tasks in ClientSpace can be created by Salesforce task records from a Salesforce import. (See the Process Overview diagram for details.) If one of the ClientSpace tasks that was imported from Salesforce has a status change, it can trigger a Salesforce export.

Other FAQs

Here are some other frequently asked questions that our customers have about the ClientSpace Salesforce Integration.

What Is a "Salesforce Expert"?

Earlier in this topic when we listed the primary steps in the four implementation phases of the ClientSpace Salesforce API, we mentioned that in Phase 1 (Initial Prep), we will identify your company's Salesforce Expert. As it relates to the implementation, a Salesforce Expert is someone at your company with the expertise, access permissions, and availability to work with us as a resource during the implementation period (especially during Phase 2 (Salesforce Setup). This can be your Salesforce Admin or another person with the access permissions and knowledge to assist. The resource must be able to perform tasks such as adding new fields or accounts as needed and participate in testing the interface.

SeeSalesforce API Implementation in Salesforce (Implementation Phase 2) for details of the specific steps we ask the Salesforce Expert to perform.

What Format Do We Use to Provide the List of Fields to Map to the ClientSpace Team?

We recommend listing your fields in a new Excel Workbook and adding a tab for each Salesforce Object that you would like to map to ClientSpace with columns on each tab for Field Name, Code Name, and Field Type.

See Best Practices and Tips: Creating the Salesforce List of Fields to Map.

Do You Import All Salesforce Contacts into ClientSpace?

Your company decides which contacts are imported into ClientSpace. For instance, we can bring over all contacts, the primary contact only, or no contacts at all.

Related Topics: