2 Popular Ways To Accomplish Salesforce Alfresco Integration

DZone 's Guide to

2 Popular Ways To Accomplish Salesforce Alfresco Integration

Integrating Salesforce and Alfresco is not as tedious a task as it might sound. This article discusses two ways in which this integration can be accomplished.

· Integration Zone ·
Free Resource

Whenever an enterprise tries to get a foot in the market it has two prime challenges amongst the rest: one is customer relationship management and the other is document management. To conquer both these issues, we have two imperative systems, the alpha dogs in their domain right now: Salesforce and Alfresco. One is the undisputed king of customer relationship management and the other has become the synonym of document management.

Image title

So there's no doubt about the magical outcome when these two excellent systems join hands, unleashing the power and strengths of both the systems. However, integrating Salesforce and Alfresco is not as tedious a task as it might sound. There are two ways in which this can be accomplished:

  • Integrating Salesforce with Alfresco using an app.
  • Integrating Salesforce with Alfresco using RESTful API.

Integration Using App

The idea of Salesforce and Alfresco integration is so apt and lucrative that Alfresco itself came out with the flourishing idea of a Salesforce native app. It is mostly a click-and-play structure and it requires minimum or almost no coding to accomplish this integration. You just need to go to Salesforce AppExchange, install the Alfresco app, and do the necessary configurations and mappings. You'll need to create an account for both Salesforce and Alfresco. (As per your need you may also have to buy the Alfresco subscription.)

Click here to visit the app page.

Image title

This method seems to be a cakewalk, so you must be wondering what is the need of a custom solution, but as the complexity of the systems increases, we need to switch to custom API solutions.

Integration Using RESTful API

Most of the medium- to large-scale enterprises opt for Salesforce Alfresco integration using RESTful APIs from both Salesforce and Alfresco. Using RESTful API also has two methods:

  • First, that uses CMIS (Content Management Interoperability Services) and Rest API, and
  • Second that makes use of custom data exchange standards.

However using the first method (CMIS standards) is more advisable. CMIS is international standard to connect two or more content management systems. CMIS is preferable as it provides the flexibility to switch from one system to another without affecting the other systems integrated with them. If you want to switch to new CRM or ECM systems in future, you just need to change the CRM or CMS and add the new system to the previous CMIS connectors, and you will have the whole new integrated system running without needing to customize the connector to facilitate the new system.

  • Click here for Salesforce API
  • Click here for Alfresco API

When we integrate Salesforce and Alfresco we get the best of both worlds, we not only get a superb workflow manager but at the same time we have an absolute document manager and lucid viewer. Alfresco provides a lot of free storage space, so you get more space to store your documents at a much lower cost. An additional factor to support their integration—apart from ease of management—is that Salesforce limits the size of files or documents to 5 MB, but in the case of Alfresco they have liberty pertaining to the size.

However, creating custom APIs is a critical and tedious task. You have to ensure that your connector API is flexible enough to accommodate changes and at the same time, it is secure enough to handle sensitive data. Simultaneously, speed should not be compromised under pressure, so it calls for expert help.

alfresco, alfresco software inc, crm, ecm, salesforce, salesforce app development, salesforce app exchange, salesforce customization, salesforce integration

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}