With Showpad's Salesforce integration, users can significantly reduce their administrative tasks by easily logging their Showpad activities in Salesforce. When configured, users will find the ability to log any Showpad email or link shares to the corresponding contact, lead, opportunity, or account in Salesforce. In Salesforce, we first allow requests coming from the Showpad domain. Then, we configure the settings in Showpad's Online Platform.
You need this to succeed
- Active Admin privileges on both the Showpad and Salesforce platforms
- Showpad Ultimate plan
- Salesforce Enterprise or Unlimited plan
- The users logging their activity to Salesforce need
- API access
- Access to the records you wish for them to log to (such as Account, Opportunity, Lead, and Contact)
- Create, edit, and view permission for Tasks
- Before following these steps, please ensure your Salesforce instance is connected in Showpad’s Online Platform. Read how to do so here.
See how it's done
- Configure CORS
- Filter contacts and configure object logging
- Assure proper task type
- Basic troubleshooting
Do this step by step
Configure CORS
The first step in configuring the Salesforce integration is to allow requests coming from the Showpad domain. Salesforce allows its customers to control which websites are allowed to use the Salesforce API. This helps keep your Salesforce instance secure by only allowing requests from known sites and denying all others.
This setting is called CORS (Cross-Origin Resource Sharing) and configuration is required for Showpad to integrate with Salesforce. The instructions below show how a Salesforce Admin can enable our Showpad domain to make requests to your Salesforce instance.
Setting this up allows:
- Showpad to create a Salesforce Activity whenever a user in the Showpad app or the Web App shares content with a prospect or customer.
- Showpad to create a Salesforce Event whenever a user on any mobile app wants to log a meeting to Salesforce.
- Go to the Setup page in Salesforce.com as a Salesforce admin.
- In the left menu, search for CORS. You can also manually select Security Controls > CORS.
- Add a New Allowed Origin.
- Add https://*.showpad.biz and click Save. Here you will be using an asterisk instead of your organization name.
Note: If the permission Modify All Data is disabled in Salesforce, we will inform you on Showpad's Online Platform that we could not verify the CORS configuration. You will still be able to continue setting up the integration when you see this warning.
- When composing an email share, Salesforce will retrieve suggested entries from your full contact list. Influencing and limiting this query is a possibility for certain use cases, talk to your customer success manager if you’d like to find out more.
Filter contacts and configure object logging
- Start by selecting which contacts users can view in the Filters tab. This will be the contacts that populate when they are sending an email Share in Showpad. In the CRM data to Showpad section, click Edit for Filter contacts & leads.
- Choose whether users can view:
- All contacts (meaning all contacts that they have access to within Salesforce according to their Profile, Permission, and Sharing Rules settings).
- Only user's contacts (meaning only contacts they are set as the Owner of in Salesforce).
- Click Save.
- To enable advanced logging to custom objects, navigate to the Showpad data to CRM section and click Edit. Account and Opportunity will be selected by default, and you can check other boxes to indicate other relevant custom objects for the “Related To” field. This allows your users to relate shares to objects other than accounts or opportunities when logging tasks.
- In Salesforce, the custom object needs to have the Allow Activities and Allow Search boxes checked in the Optional Features and Search Status sections.
- Select the custom objects you want to log activity against then click Save. The list you see has the same objects that are available in the connected SFDC’s instance in the Related To field of a Task. Users are not able to log meetings to a custom object.
- It is possible to control which user groups can use the Salesforce integration. In the Admin Settings, click Features from the left side menu. Scroll down to Salesforce Connection, and select All Users, or Select Groups. If desired, choose which groups you wish to have access, then click Apply.
- When a Share is logged, you'll see the email body and a link to view the Share as the recipient in the comments of the Task Information. Depending on how your settings are configured, it will look similar to this for your users.
- Optionally, you can allow Showpad email share activity to be logged to multiple contacts. To do so, navigate in Salesforce to Setup, Feature Settings, Sales, then Activity Settings. Enable the 'Allow Users to Relate' option.
If you've already connected your Salesforce instance to Showpad before enabling this option, please return to the CRM set up in Showpad's Online Platform. In the logging section, click edit to open then Save your logging objects again. This will re-sync the Salesforce multiple contacts setting.
Ensure task type
When creating the logged activities, Showpad can set the Salesforce ‘type’ field to a relevant value based on the specific type of share logged (Showpad share, Showpad email, shared space, etc) which can help with reporting. To assure tasks get this type, these values should be present in Salesforce before connecting your Salesforce instance in OP. To add them afterwards, you can trigger a re-sync of the available task types by opening and re-saving the custom objects tab as described in step 2 above.
Basic Troubleshooting
OAuth authentication error
The Showpad and Salesforce integration works with a server to server communication. A consequence of this is that the originating user IP address will be changed with Showpad's address during the login process.
In cases where Login IP ranges are used, or when users experience OAuth sign-in errors, we recommend changing the settings in the OAuth app from Enforce IP restrictions to Relax IP restrictions.
The Relax IP restrictions setting allows users to run the connected Showpad app without IP restrictions. You can find these settings in the Salesforce Administer section.
- In Setup, search Connected Apps. Open the Connected Apps OAuth Usage options in the Manage Apps tab.
- Find the Showpad Salesforce Integration app and click Install.
- From the Connect Apps OAuth Usage list, click Manage App Policies.
- Click Edit Policies. Click the IP Relaxation drop down menu, then change Enforce IP restrictions to Relax IP restrictions.
- Click Save.
Salesforce connection is not working on the Web app
Make sure you are working on a browser that fully supports HTML, for a full overview of our browser requirements, click here.
Please make sure that in the Security settings, you have the miscellaneous option set to enable for both internet and intranet. If this is not the case, Internet Explorer will not allow the Showpad page to connect to the Salesforce domain and get the contacts and leads data.
- Go to Settings, Internet Options, Security.
- You should see an Internet icon, make sure it is selected. If they are using Local intranet, make sure to apply the same change there as well.
- Choose Custom.
- Scroll until you find the below, make sure Access data sources across domains is enabled
- Apply and save.
- Make sure to apply the same settings for their Local intranet as well.
- You will also have to make sure you have your CORS set-up in your Salesforce instance.
XMLHttpRequest cannot load, the Response has status code 401
To make Salesforce API calls we need a valid access token. The access token is obtained on the Showpad servers and not in the user's browser. If the Salesforce setting "locks the session to the IP address" is activated, it means that we can only send api calls from the Showpad servers, because we requested the Salesforce token on our servers. Using that access token on a different IP address (your browser), it will not work due to this Salesforce setting. If you switch off this setting, the access token can be used in the browser as well and you'll be able to make Salesforce requests in the Web app.
Note that the mobile apps don't use our servers to request a new access token, so they don't have this issue.
Navigate to Session Settings and ensure the box for Lock sessions to the IP address from which they originated is unchecked.