Sharing of records among Salesforce organizations is easier than before by implementing ‘Salesforce-Salesforce’. With this features, partners can collaborate more easily & effectively within & across Salesforce organizations.
Earlier, it needed a complex infrastructure for collaboration among multiple organizations and it was difficult. By implementing Salesforce-Salesforce integration, now partners can connect & collaborate by point and click.
Steps for implementing Salesforce-to-Salesforce:
- Enable ‘Salesforce to Salesforce Setup’ in both Source & Target organizations.
Setup -> App setup -> Customize -> Salesforce to Salesforce -> Settings. Click Edit, select Enable, and then select Save.
Customized Email templates can be used by changing it within ‘Deliverability’ of ‘Salesforce to Salesforce Settings’.
Note: Once ‘Salesforce to Salesforce Setting’ is enabled, we cannot disable it; instead, we can restrict sharing either by stop sharing or modifying the sharing setting.
- Establish a relationship by setting a connection.
Create an Account & Contact in the Target organization. An invitation would be sent to the email address given in the contact of the Target SF organization.
Create a new Connection in the ‘Source Organization’ by selecting a contact and click ‘Save & Send Invite’. An email invite would be sent to the Contact’s email with the link. Open the link and login into the target Organization, and click on ‘Accept’.
Now the connection is established. The data can be shared after publishing the objects that are going to be shared.
- Object should be published in the source SF organization.
Click the ‘Publish/Unpublish’ button within ‘Published Objects’ section. Select the object that needs to be shared, and click the ‘Save’ button.
Most of the standard objects & all custom objects can be published.
Now, publish fields by editing the published object and then selecting the fields. Click the ‘Save’ button.
- To receive data at the target organization, the published objects should be subscribed in the target SF Organization.
Click the ‘Subscribe/Unsubscribe’ button within ‘Subscribed Objects’ section. Then, select the objects that are shared (Only published objects would be displayed,) and click the ‘Save’ button.
After subscribing to the object and fields, we need to map the fields (between source organization fields to target organization fields), and click the ‘Save’ button.
- Sharing of data can be done either by manually (or) automatically via program.
Select the list of records to be shared from the list view, click the ‘Forward to Connections’ button, select the connections from the available list, and click the ‘Save’ button.
Apex Logic can be built to share the records when they meet some criteria. In addition, using the Apex Batch class, we can share the records at regular intervals of time.
How to Restrict/Stop Sharing?
- By clicking ‘Stop Sharing’ link within ‘External Sharing’ section of the shared record, we can stop the sharing. Even, If the sharing of the record is stopped, the shared record would be still available in the target organization.
- The other way is by deactivating the connection with the target organization. It can be done by clicking ‘Deactivate’ of corresponding organization within ‘Connections’ tab.
Once a connection is deactivated, it can’t be activated.
- The third way is by removing the published objects within connection. Also, the object would get removed automatically from the subscribed object list of the destination organization’s connection.
Sharing record with Non-Salesforce organization:
Selected records can be shared with a non-salesforce organization by exporting the records as csv file and by using cron jobs the csv file can be imported into another database.
There is a company called ‘XYZ’ with partners A, B, C…, If ‘XYZ’ wants to share Lead records with its partners, then the partners should be given access to all or some records of the Lead object or to the files that contain the Lead records (CSV file). Also, it is very difficult to share set of records with one partner (A) and another set of records with another partner (B) & so on.
By Implementing ‘Salesforce – Salesforce’ integration, we can easily share records. Also, we can share different set of records with different partners. It is equally easy to build reports based on the Connections and External Sharing records to track what records were shared, with whom, and how many times.
Salesforce – Salesforce integration enables Partner to collaborate easily & effectively across the organizations, and allows us to easily integrate & manage data in Salesforce.