Integration with Salesforce


In the dynamic landscape of modern business, the effective management of sales opportunities is paramount for success. With companies increasingly relying on Customer Relationship Management (CRM) systems like Salesforce to streamline their operations, the need for seamless collaboration among team members becomes ever more crucial. Whether utilized as a standalone solution or integrated with existing CRM capabilities, MangoApps empowers teams to create, manage, and synchronize sales opportunities effortlessly.

Through its intuitive CRM configuration, MangoApps facilitates the seamless integration of data from Salesforce, ensuring that crucial opportunity information remains up-to-date and easily accessible. Moreover, MangoApps fosters engagement and expertise alignment within organizations, providing a centralized hub where teams can collaborate effectively, track progress, and allocate resources efficiently to each opportunity. By bridging the gap between CRM systems and collaborative workflows, MangoApps emerges as a vital tool in establishing and nurturing engagement across sales teams, ultimately driving business success.

Setup in Salesforce

Since the MangoApps side of the integration will require information generated from Salseforce, we will set up the configuration there first.

Within Salesforce, we will need to create a new App to sync with MangoApps. From there, we will configure the app policies to generate a Consumer Key and Secret Token.

On the Salesforce website, log into a Salesforce account using credentials associated with the System Administrator role. Click the gear icon in the top right corner of your screen and then click on the Setup option to be taken to the Setup menu.

From here, click on the Apps dropdown located under Platform Tools along the left hand menu. Click App Manager from the dropdown menu then click New Connect App button on the right hand side of your screen.

Basic Information

The following fields will need to be completed in this menu.

  • Connected App Name: Enter a descriptive name for the app connector.

  • API Name: This name will automatically populate based on the app name entered above.

  • Contact Email: Enter the email ID of the user setting this integration up on the Salesforce side.

API (Enable OAuth Settings)

Within these settings, enable:

  • OAuth Settings

  • Device Flow

The Callback URL field will be generated automatically.

Scrolling down, select all OAuth Scopes.

Below that, check the following checkboxes:

  • Require Proof Key for Code Exchange (PKCE) Extension for Supported Authorization Flows

  • Require Secret for Web Server Flow

  • Require Secret for Refresh Token Flow

  • Enable Authorization Code for Credentials Flow

  • Enable Token Exchange Flow

  • Require Secret for Token Exchange Flow

Once complete, scroll to the bottom of this page and click Save

Configure Policies

With our App created, the next step is to configure it's policies. Navigate to the new app and click Manage.

Configure the following policies as shown:

  • IP Relaxation - set to Relax IP restrictions

  • Refresh Token Policy - select Refresh Token is valid until revoked.

  • User Provisioning Settings - Enable User Provisioning should be checked.

Generate the Consumer Key

With these policies saved, return to the App and generate the Consumer Key. This will be required for completing the setup on the MangoApps side.

Generate the Secret Token

First, we need to enable the OpenID connect setting for OAuth.

To do this, navigate to the Identity dropdown along the left hand navigation menu. From the dropdown, select OAuth and OpenID Connect Settings.

From this new menu, toggle Allow OATH Username-Password Flows to ON.

With this setting enabled, we can generate the secret token. From the left hand navigation menu, click the My Personal Information dropdown menu and select Reset My Security Token.

In the resulting screen, click the Reset Security Token button. This will trigger an email with the token to be sent to email ID set for the current user's Salesforce account.

At the end of this stage, we have all the Salesforce information we need in order to begin setup on the MangoApps side.

Setup in MangoApps

To get started, from within the admin portal of your MangoApps domain, navigate to Modules > CRM > Setup.

Choose Salesforce as the provider and enter the following Salesforce details in the fields below:

  • Salesforce Web Services URL: URL of salesforce. This can be found under the user profile on salesforce side

  • Salesforce admin username: Username of the account from which an app is created on salesforce side

  • Salesforce admin password: Password of the account from which an app is created on salesforce side

  • Salesforce security token: Received on email

  • Salesforce connected app consumer key: Copy it from the Salesforce page shown in the steps above.

  • Salesforce connected app consumer secret: Copy it from the Salesforce page shown in the steps above.

After all details are entered, click Test Connection.

Upon receiving the successful connection pop-up, click the Save Settings button.

Synchronize Opportunities

After testing and saving the connect, click on the Synchronize button to manually sync Opportunities from Salesforce to MangoApps.

MangoApps automatically refreshes the module every 15 minutes and static data every 24 hours. However if you wish to perform a manual refresh immediately, you can always click this Synchronize button from admin portal CRM module.

Congratulations! You have completed the integration setup.

Testing Considerations

After entering the required Salesforce details, ensure a successful test connection. Then, proceed to synchronize and verify the seamless syncing of all opportunities from Salesforce into MangoApps.

Navigate to the User Portal on the MangoApps side, click on Opportunities and check for all the available opportunities.

Click into an Opportunity to ensure the details have been correctly synced into MangoApps from the Salesforce side.

End User Experience

While in the User Portal, click on Opportunities from the navigation panel.

Click on a specific opportunity to access its details through the widget in the news feed.

Use the News Feed module to collaborate on the opportunity with team members.

Additionally, consider enhancing your Home module by adding widgets specifically designed for managing Opportunities.

Security Considerations

When integrating with third-party software, several security considerations should be kept in mind:

Access Control

Establish a custom navigation system to restrict access to the CRM module, ensuring it is only available to user segments requiring access, such as the sales team or accounts team.

Token Management

Safeguard the confidentiality of security tokens, consumer keys, and consumer secrets by limiting their distribution solely to the admin team responsible for setting up integrations. These credentials should not be shared outside of this team to maintain security integrity.

Rollout Recommendations

With the setup and connection test complete, the following are a few recommendations when rolling out the integration for end users:

Assessment and Planning Phase

  • Identify the user segment or team that requires access to the opportunities module.

  • Determine membership criteria for each Opportunity to ensure appropriate collaboration.

Configuration and Customization

  • Designate custom admin roles or network admins responsible for setting up and managing Salesforce integration.

  • Conduct thorough sync testing to verify that the opportunity count matches between the source and destination systems.

  • Monitor the user portal to confirm that all opportunities are created with accurate details.

Training and Adoption

  • Organize training sessions for users involved in collaborating on opportunities.

  • Conduct periodic check-ins to gather feedback and ensure smooth adoption of the new system.

Last updated