Integrating Salesforce with external systems (Ex. ERP); building custom web extension apps/batch programs to meet the specific business requirement is quite common when we work on large scale Salesforce projects.
Before we attempt to develop such solutions, having a good understanding of various integration (+custom extension & batch) scenarios we generally come across and the provisions provided by Salesforce to implement each of these scenarios helps us to pick the most efficient, scalable & reliable implementation approach.
The objective of this blog article is to list all possible integration (+custom extension & batch) scenarios and to introduce/brief various provisions provided by Salesforce to implement each of these scenario.
General Integration (+custom extension & batch) scenarios,
- Outbound Integration
- Inbound Integration
- Automated Batches
- Bulk Data Management/Migration (Export/Import)
- Custom Web Extensions (Web – Mashup, Links, Applets, Tabs,..)
- Custom Mobile Solutions
Now let us go through the provisions provided by Salesforce in order to implement each of the above scenarios,
- Outbound Integration: can be implemented in Salesforce using the below features,
- Apex Callouts
- Outbound Messaging
- Inbound Integration: The following options are available to implement Inbound Integration,
- SOAP Web Services API
- REST Web Services API
- Apex Web Services
These options can also be used in combination with Outbound Integration approaches for some specific solutions.
- Automated Batches: We can write the automated batches using APEX & run these batches as per the required frequency using APEX Scheduler. Triggers & Process Builder can also be considered for automation based on the requirement.
- Bulk Data Management: The following are the available options for Bulk Data Management. Based on the data volume, right option should be decided.
- Import wizard
- Data Loader
- Batch Apex
- Bulk API
- Custom Web Extensions (Web – Mashup, Links, Applets, Tabs,..):
- To develop a custom web page/app Salesforce provides Visualforce, Lightning Design System, AURA, APEX development framework
- To render the custom web pages developed outside salesforce within Salesforce, Canvas & Connected Apps features can be leveraged
- Custom Mobile Solutions: Salesforce provide Mobile SDK to build custom Mobile Solutions. The Salesforce Mobile SDK supports three development approaches for building mobile apps: native, HTML5, and hybrid.
Factors to be considered to pick the right approach among the available options will be covered in the subsequent blogs.
Prashanth N