Salesforce CRM Connector Installation and Configuration
This section covers the installation process for the BluSynergy Salesforce app.
Notes:
Please be aware that you need to be licensed by BluSynergy for this product, additional monthly charges will apply.
You need "Billing Administrator" security role in BluSynergy and System Administrator profile in your Salesforce organization where you will be installing the BluSynergy application for Salesforce.
1. Install Package
After logging into salesforce.com, click on the link below to begin the installation process.
BluSynergy Salesforce Connector Version 1.4
https://login.salesforce.com/packaging/installPackage.apexp?p0=04tE0000000V7zT
BluSynergy Salesforce Connector Version 1.6 is required only if you are using Person Accounts (B2C model) in Salesforce and in this case, use this URL to install the package into any organization:
https://login.salesforce.com/packaging/installPackage.apexp?p0=04tE0000000V9F8
Note: If you are installing into a sandbox organization, then use this link (note the initial portion of the URL with "test.salesforce.com")
https://test.salesforce.com/packaging/installPackage.apexp?p0=04tE0000000V9F8
Fig 1.1. below displays the components included in the package. Fill Password and click on Submit
(Note : To obtain the password contact with Blusynergy Support at support@blusynergy.com)
Fig 1.1. Package Installation
Fig 1.2. below displays the components included in the package. Click on Continue
Fig 1.2. Package Installation
Fig 1.3 Click on Next
Fig 1.3. Package Installation
2. Configure Access Level
In the next step you are prompted for the Security Level. Select Grant Access to all Users and click Next to continue. If you wish to give only specific users access to the billing and payment information, then you may create a Salesforce Profile with the appropriate permissions (please review the Salesforce documentation on how to configure this). You may also choose to use Salesforce Permission Sets.
Fig 2.1 Security Level
Click on Install to Install Package
Fig 2.2 Install Package
3. Confirm Installation Complete
Once the package is installed, a confirmation message similar to the one in the figure below will appear. You may click the "View Components" button to see the custom objects created so that you can decide on permissions and security controls.
The next step is to create a new "Remote Site". Click on "Remote Site Settings" as show in the image
Fig 3.1 Install Complete.
4. Create New Remote Site
This security related step is to instruct your Salesforce instance that you permit access to the BluSynergy applications.
Click on "New Remote Site" as shown in the image below
Fig 4.1 Remote Site Settings
Enter BluSynergy_Billing_Site in the Name and BluBilling site url of your organization in the Remote Site URL. This will be of the form:
https://yourcompany.blubilling.com/
Notes:
"yourcompany" will typically be the short name assigned to your company.
"blubilling.com" may change depending on the product (eBill vs BluBilling) and production vs staging.
Contact support@blusynergy.com if you do not know your site url.
Fig 4.1 Remote Site Settings
The following screen shows the Remote Site after it has been created.
Fig 4.2 Remote Site Settings
5. Configure BluSynergy For Salesforce
This step directs the mode for BluSynery to communicate with your Salesforce instance.
Login to your BluSynergy system and navigate to [System >> IntegrationSettings >> SalesforceCRM]
and configure as appropriate for your organization.
Salesforce Integration Mode - this controls the level of functionality/integration enabled. Please ensure that you are contractually licensed for the appropriate functionality.
Enable Outbound Notifications - in this context "outbound" refers to API calls made from BluSynergy to Salesforce. This option is required if you wish to have native Invoice and Payment objects populated inside Salesforce as well as custom fields added to standard objects (like the Current Balance and Billing Status fields on the Account object).
Enable Inbound Access - in this context "inbound" refers to API calls made from Salesforce to BluSynergy. This option is required if you wish to have access to the "Show Billing and Payments" functionality inside Salesforce.
Both - This combines both the above capabilities.
Disabled - use this option to temporarily disable integration while performing large data loads, etc.
Inbound User Name - This is required if "Inbound Access" or "Both" are selected. Populate this if you wish to create a BluSynergy login dedicated for Salesforce API access.
Inbound Password - the password for the above login. Use at least 1 upper and lower case alphabet plus at least one number.
Enable Chatter Posts - If you enable this checkbox, then a Chatter post will be published to each Account when financial activity occurs (e.g., an invoice is generated or payment is posted).
Enable Salesforce Production - leave unchecked on Sandbox and Developer instances and checked on Production instances.
Make sure you are able to save your settings successfully.
Fig 5.1. Configure BluSynergy.
Note that creating the username and password on the above screen is equivalent to going to the [System >> Staff Members] screen and creating a User with the "Web Service Programmatic API Access" security role.
6. Create a "Connected App" in Saleforce
After you configure your Remote Site (for outbound access from Salesforce to BluSynergy), you now need to configure inbound access (from BluSynergy to Salesforce) by creating a "Connected App". You must perform this action while logged into Salesforce as the user under whose security context you want the BluSynergy API to operate.
This implies that all Invoices, Payments, etc will be owned by this Salesforce user, and from a security standpoint, this is the only user that must be given read-write access to the BluSynergy custom objects like Invoice, Payment, etc.
Go to Apps page by clicking on the link in left menu as shown in the image below.
Fig 6.1 Create connecting App
Then click on "New" Button to start creating a Connected App.
Fig 6.2 Create connecting App
Now create a connected app using the appropriate values for your organization
Make sure the call back Url is in this form (replace "yourcompany" with your assigned url or domain prefix):
https://yourcompany.blubilling-test.com/salesforce/callBack
Fig 6.3 Enter details for the Connected App
Now obtain the Consumer Key and Consumer Secret which will be used later to authorize the app.
Fig 6.4 Settings for the Connected App
Consumer Key and Consumer Secret are generated.
Fig 6.5 API Authentication settings for the Connected App
Note that you may get a message
7. Configure Connector Options
Now switch back to Salesforce to configure the options you wish to enable inside Salesforce. Navigate to the "+" tab and click the "BluSynergy" link as shown in the circled areas below
Fig 7.1. Navigating to the connector configuration
If you're upgrading from an older version, you may already have an entry as seen in Fig 7.2b below (in which case you may simply click "Edit"), else use the "New" button to create a new entry as seen in Fig. 7.2a below.
Fig. 7.2a. Configuring the BluSynergy parameters for the first time.
Enter these values:
Username: Enter the value from Step 5
Password: Enter the value from Step 5
Endpoint URL: yourcompany.blubilling-test.com
Login URL: /widget/refresh_salesforce
CSS URL: /css/salesforce.css
Fig 7.2b. Click on the "Edit" button to change the default settings if you already have an entry
Fig 7.3. below shows the various options available for the connector. Note that these settings apply to all Salesforce users that have authorization to view the connector.
Fig 7.3. Configuration options for the connector.
After you save the above settings, go back to the previous screen and click on the link "Configure Inbound Integration". Enter the Salesforce Consumer Key and Salesforce Consumer Secret obtained from Step 5.
Click on "Verify" Button to complete the authorization process.
Notes: To make verification successful, you'll need to authorize the app in your organization, your profile, or your user.
To authorize all users in the org, you can go to Setup > Manage Apps > Connected Apps, edit app, and set Permitted Users to "All users may self-authorize."
To authorize usage just for your user profile (e.g. System Administrators), go to the same area, but click on the label of the app (BluSynergy), then add your profile to the list.
You could also add a permission set to the list, then add the permission set to your user account. This will enable access just for you.
Fig 7.4: Configure Connector Options
After successful verification you will be asked for permission to allow BluSynergy's requests. Click on "Allow".
You will be redirected to Thank you page.
Note: If you see this error:
error=redirect_uri_mismatch&error_description=redirect_uri%20must%20match%20configuration
Then the typical cause is that the callback URL in In step #6 Create a "Connected App" in Saleforce does not tally with the endpoint URL in fig 7.3 above.
8. Configure Account Screen
In order to have the BluSynergy features show up on the Salesfoce "Account" page, you have two options:
Option 1 - Assign the BluSynergy Account page layout that provides the appropriate buttons, links, fields, etc. This option is suitable if you have not customized your Salesforce Account page. This is accessed via [AppSetup >> Customize >> Account >> Page Layouts >> Page Layout Assignment >> Edit the Assignment] screen.
Fig 8.1 Assigning Page Layout by Profile
Fig 8.2 Account View Mapping in Salesforce.com
Fig 8.3 Account View Mapping in Salesforce.com
Option 2 - On the other hand, if you have customized your Salesforce Account page, then you may wish to control the placement and availability of various BluSynergy fields and buttons on your Salesforce Account webpage. Contact BluSynergy support for this option or have your Salesforce administrator customize the screen layout. This is done by going to [App Setup >> Customize >> Accounts >> Page Layouts] and dragging and dropping various "fields" and "buttons" on the screen template.
fig 8.4 dragging fields and buttons onto account page.
fig 8.5 account page with new fields added.
9. Configure the Workflow to Map the Appropriate Salesforce field to the BluSynergy Customer Account Number
There needs to be a single field in your Salesforce Account object that maps to the BluSynergy Customer Account Number. A workflow is utilized to copy this user defined field into the "BluSynergy Customer No" field in the Salesforce Account object. This field is automatically created by the connector during installation.
Go to [SetUp >> Build >> Create >> Workflow and Approvals >> Workflow Rules >> New Rule] and
Select the Object Account
Enter the name of the rule: “BluSynergy CustomerNo Synch”
Evaluation Criteria: Select “created, and any time it’s edited to subsequently meet criteria”
Rule Criteria : “Account: BluSynergy Customer ID” not equal to “null”
Fig 9.1. Blusynergy workflow for Salesforce connector
Then, continue with the following steps:
Save the rule.
Edit the Workflow Action
Click on Add Work Flow action then click on “add new field update”
Enter the name and unique name the select the field to be updates as “BluSynergy Customer No” and then check the radio button “Use a formula to set the new value”.
Then enter the field name of your Salesforce Account object that you wish to map to the BluSynergy Customer No (it is "Account Number" in Fig 7.2 below but you could map it to any field of your choice).
Finally you need to verify that this is working by creating a new Account, and assigning a value to your chosen field. On saving the account, the "BluSynergy Customer No" field should be updated to the same value as well.
Fig 9.2. Blusynergy workflow for Salesforce connector
Once you add 'field updates', it will be displayed in the Workflow field updates table.
10. Synchronize the IDs for your existing Customers/Accounts
If you have existing "Customers" in BluSynergy or "Accounts" in Salesforce that need to be mapped, then you will need to perform a data synchronization so that the system identifiers from each system is cross populated in the other system. Contact professional services for this task.
11. Create Salesforce Tabs for Invoices and Payments
Go to [Setup >> Create >> Tabs >> Custom Object Tabs(section) >> New >> Select Object and Style >> Next >> Add to profiles-> Next->Save.
fig 11.1 creating custom tabs
Select the object and create new tab.
fig 11.2 select object
Click on "Next" and finish creating custom tabs.
This concludes the setup and configuration process.