If you're not ready to dive feet first into the Salesforce integration, this is a great place to get your toes wet! Here you'll find an intro to the Salesforce integration, learn about the Object mapping options and the role each integration option serves.
Intro to Objects
Objects represent database tables that contain your organization's information. Objects already created for you by Salesforce are called "Standard Objects" while Objects you create are called "Custom Objects". Once an Object exists or has been created in Salesforce, it can be added to the Salesforce integration settings for mapping from the Form.
Salesforce Standard Objects Available
Primary Mapping Fields
There are four options available for mapping Form Fields to Salesforce Objects. These include Fields, Values, Lookups, and Links. Below is a brief description of each option and how these can be used between the Form and Salesforce.
Fields: This option is used strictly for mapping Fields from the Form to the Objects in Salesforce. Once "Field" has been selected, the drop-down to the right will list all available fields on the Form that can be linked to the Object. Currently, there is not an option to map multiple Form fields to a single Object in Salesforce.
Values: With the Value option selected, you will be able to enter the specific Object Value so that when the Form is submitted, the Object will be linked to that Value. When using Values, the entered Value MUST exist within Salesforce and be an exact match to the Salesforce Value; for this, we recommend copying and pasting to avoid any unintentional typos which will result in errors.
Lookups: Given a parameter to look for and a mapped field to send data to, this option will attempt to find an already-existing Salesforce Object to associate a relationship field (Owner ID, for example) into. The first drop-down list that appears contains the types of Salesforce Objects that can be looked up along with the specific Object field to attempt the look up. The secondary drop-down list will contain a list of fields to map the data into that will contain the lookup value.
Links: Here you will find all existing Objects that you have already setup in your integration or you can choose an Object under the "New Object" heading to quickly add and map the integration in this settings. Link is strictly for connecting one upserted/created Object to another upserted/created Object. Both Objects must be modified or created when the integration runs (on submission) in order for a Link to be possible; in all other cases, "Lookup" should be used instead.
Additionally, Links can only be made in one direction. For instance, you can link a Contact to an Account, but you cannot also link the same Contact back to the same Account. You also cannot use triangle links. For example, if you are wanting to map a Campaign, a Lead, and an Account, you won't be able to have a Lead that is linked to the Campaign which is linked to the Account which is linked back to the Lead. In either of these scenarios, none of the inter-linked Objects will be created.
Adding, Refreshing & Deleting Objects:
To add a new Objects to the Salesforce integration, choose the Object from the "Select Object" drop down menu. If you want to map multiple Objects of the same kind, such as three "Contact" Objects, for example, you will want to choose "Contact" from the "Select Object" drop down menu three times and this will add "Contact 1", "Contact 2" and "Contact 3" to the integration settings which can then be mapped.
Object Refresh and Delete options can be found to the right of each Object heading.
Using the Upsert Function
The Upsert function allows you to create new records and update existing records to avoid unwanted duplicates when data is submitted to Salesforce from the Form. The Salesforce phrase "Upsert" is a mashup of the use-terms for "Insert" + "Update" when handling Salesforce records.
The Upsert call is available for Objects if the Object has an external ID field or a Field with the idLookup field property. Not all fields utilize the Upsert function in the Formstack integration settings. This option is determined by Salesforce and there is currently not a way through the Formstack app to force an Object to Upsert.
One field you can Upsert by is the Email Address field. If you include an email address field on your Form and check the "Upsert" option in the integration settings, records will be updated by that Email Address if a record already exists under that Email Address. In this case, if you do not check "Upsert", then a new record will be created upon each submission.
Mapping Custom Objects
Custom Objects are custom database tables that allow you to store information unique to your organization. These Objects can be created in Salesforce and then setup in the integration settings to be mapped between the Form and Salesforce account.
To use Custom Objects, you will want to create these in Salesforce first. Once this is done, the Custom Object will appear in the left-hand column and can be mapped using the drop down menus in the right-hand column. In the example below, "Trialer Emails Response" was added to Salesforce as our Custom Object and "Trialer Status" is the field from our Form which has been mapped to the Object.
If your Custom Objects are not listed in the Salesforce integration settings, there are a couple things you can check:
1. Are these fields listed on the Page Layout in your Salesforce page?
2. The Salesforce Account you are using has access to all of those Objects. We only display Objects available to the Profile associated with the Salesforce Login on the Form integration so you’ll want to be sure those fields are available under this login account.
3. Try refreshing the Object list in the integration settings. This can be done by clicking the refresh icon to the right of the Object heading.
4. You may also want to try removing the Object and/or Integration and then re-add it to the Form to reset the field mapping options.
Assignment and Email Rules
The Salesforce integration includes a series of Email options that can be enabled depending on how you would like to automate your organization’s Object generation and support processes. Below, we've outlined each Email Rule and how it functions when enabled.
Use Default Assignment Rule: When used, this setting ensures that any assignment rules such as "Assign all new Contacts to John", for instance, run when the Salesforce Objects are created.
Auto Response Emails: This setting determines whether Auto-Responder emails for Object creations (typically for Leads or Cases) are sent when the appropriate Objects are created.
Other Emails: Will check to see if Emails that would be sent outside the organization are sent. These emails are generally sent when creating, editing, or deleting a Contact for a Case.
User Emails: Confirms that emails that would be sent to users inside the organization are actually sent. These emails are typically sent when resetting a password, creating a new User, adding comments to a Case, or creating/modifying a Task.
The last option available when setting up the Salesforce integration is an "Email On Failure" option. This allows you to insert your email and/or those on your team so that you will be notified if a submission fails to post to Salesforce due to a Salesforce related error. When this happens, you will receive an email notifying you of the issue and a brief description of the error in question.
Note: If you plan to map credit card fields to Salesforce, note that credit card numbers will be sent as a masked number with the last four digits showing.