Publish date:
Many organizations choose a best-of-breed approach to manage their key business processes. Instead of relying on a single large vendor like SAP, business leaders select the best solutions from various companies. This need for the best solutions makes it crucial to integrate them effectively. Even the best platforms work best when they all connect smoothly.
In large organizations, two standard solutions are Salesforce for Customer Relationship Management (CRM) and SAP for Enterprise Resource Planning (ERP). In this article, we will examine how to integrate Salesforce with SAP ECC 6.0 or SAP S/4HANA, explore various integration options, and share an example of a successful integration.
Benefits of Integrating Salesforce With ERP Systems Like SAP
Many tools and solutions in Salesforce, like Sales Cloud and Service Cloud, often lack complete information from other systems. Without this data, users must switch between different systems to get the whole picture. It creates a frustrating experience, hurting productivity and leading to costly mistakes.
On the other hand, integrating Salesforce with SAP offers several benefits:
-
Improved Data Quality: Integrating the two systems allows them to share data easily. It can improve data accuracy and reduce duplication.
-
Increased Efficiency: Integrating systems helps streamline business processes. It automates data entry and reduces errors, thereby improving operational efficiency.
-
Enhanced Visibility: When business users have a clear view of their customers, they can see data on sales, marketing, customer service, and billing. It enables them to make more informed decisions and enhance the customer experience.
-
Improved Collaboration: Integration enables your sales, marketing, and customer service teams to work more effectively together. It gives them real-time access to vital customer information.
-
Reduced Costs: In an integrated environment, users save time and money by automating data entry and lowering manual errors. A more efficient sales process allows sales representatives to spend more time selling and less time on administrative tasks.
-
Increased Revenue: Enhancing how customers perceive and interact with your business can improve their overall experience. A good integration helps increase sales and support business growth.
In Salesforce, Customer 360 enables users to view customer information clearly. Users can view account details, including contacts, opportunities, and activities. However, important information, such as credit status, payment history, invoices, deliveries, and attachments, is only found in SAP. It is where a well-integrated Salesforce solution becomes crucial.
Preparing the Integration Project
Integration Options
There are several ways to implement integration. These methods can be grouped into three main categories.
Custom Development (Level 1 Integration)
A custom development project can be completed without the need for an integration platform. On the Salesforce side, it will use the following APIs:
-
REST API
-
SOAP API
-
Streaming API
-
Web Service callouts
-
Salesforce Connect
If you create a direct integration from scratch, you won't need to pay for extra licenses or subscriptions beyond your basic Salesforce and SAP licenses. However, custom development requires a significant amount of effort and carries higher project risks. Additionally, Salesforce cannot connect directly with SAP standards, such as RFC (Remote Function Call), which limits the integration options.
If you want to learn more about custom development, read the Ultimate Introduction to Salesforce Integration.
IPaaS Solutions (Level 2 Integration)
Using an IPaaS (Integration Platform as a Service) can be a better option than creating custom software for integration. IPaaS solutions usually come with ready-made tools for connecting to SAP, so you don’t have to make these tools yourself. The IPaaS also manages key tasks like handling connections, user authentication, and ensuring security.
Here is a list of some commonly used iPaaS solutions to integrate SAP with Salesforce:
-
MuleSoft is the iPaaS by Salesforce. It has its strength on the Salesforce side and offers templates for SAP integration.
-
SAP CPI (Cloud Platform Integration) is SAP’s offering. It supports all SAP protocols and comes with templates for Salesforce integrations.
-
Jitterbit, Dell Boomi, IBM App Connect, and many other platforms can also be used for your integration but are less common.
SaaS With Ready-to-Use Integrations (Level 3 Integration)
SaaS (Software as a Service) solutions offer ready-to-use application content along with a platform for building integrations. It saves you time and money compared to managing a long and risky integration project. You can install the integrations and go live in just a few weeks. A license fee or subscription not only gives you access to the solution but also includes ongoing support and product updates.
Enosix and Vigience Overcast are two SaaS solutions that integrate with SAP. They provide pre-defined connections, including the user interface layer for Salesforce.
Overcast connects with more than 150 systems, including SAP, Microsoft Dynamics, and Oracle NetSuite. In addition to its ready-to-use features, Overcast allows you to create your custom integrations.
When choosing how to integrate your systems, consider the ongoing maintenance requirements. After you go live, level 1 (custom development) requires the most maintenance, while level 3 (SaaS like Enosix or Overcast) needs the least. You will need to continuously test and adjust your integrations for new Salesforce and SAP releases.
The following spider graph shows how the three options compare (the lower value is better):
Specifications
For every successful software project, start with precise specifications. In an integration project, ensure that you document a few key details at the outset to help guarantee your project's success.
-
Also Read: COMPLETE GUIDE TO SALESFORCE CTI INTEGRATION
What Needs to Be Integrated?
SAP offers a comprehensive range of business processes, objects, and data. It is crucial to choose the correct information. To understand what your users need, you can conduct interviews with them or, preferably, observe their processes and activities. Users often overlook things they consider obvious, but if you observe them working, you will see everything they do.
Document how your users interact with Salesforce and SAP. Note which information they enter into each system. Identify where they currently copy and paste information between systems. Additionally, determine where they can benefit from real-time insights.
Data Replications or Real-Time?
In general, there are two types of integrations:
-
Data Replication: Data is copied from SAP into Salesforce, either into a standard or a custom object. Typical use cases for this are:
-
SAP Business Partner to Salesforce Account
-
SAP Material to Salesforce Product
-
SAP List Prices to Salesforce Price Books
-
-
Real-Time Access: Data is not stored in Salesforce; it is requested from SAP when needed. This method is often the most reliable way to integrate because (1) the data is time-sensitive and changes often, (2) the data volume is too significant to copy all at once, or (3) the business logic in SAP that helps understand the data is too complicated to duplicate in Salesforce. Examples of real-time integrations include calculating prices in SAP and verifying material availability.
Sometimes, it makes sense to create a mix of data processes. We can replicate some data while loading other parts in real time. For example, we can copy equipment information from SAP customer service into the asset in Salesforce and then load the characteristics and measurement readings instantly.
Be sure to document the types of integration scenarios you will use and explain why you are using them. It is a good idea to establish real-time access whenever possible. This will make things easier for you in the long run.
Mapping the Data Models Between Salesforce and SAP
When you document your integration, pay close attention to your field mapping.
-
To set up data replication, identify the fields from SAP that need to match with the corresponding fields in Salesforce. Ask questions like:
-
Are the field types and lengths identical, or do I need to convert the data?
-
In which direction do I want to replicate?
-
Is my replication one-way (from SAP to Salesforce or from Salesforce to SAP) or bi-directional?
-
-
To access information in real time, you need to determine what information you want to retrieve from SAP and how you want to present it to the user.
Make sure to document everything. We often use an Excel spreadsheet for this. Here is an example of what your map might look like:
Filter
Not all data from SAP needs to be shown or copied into Salesforce. Having less data replicated and displayed can lead to better performance and a more user-friendly interface.
Document how to filter the data. For instance, do you need only active accounts from Salesforce that are in SAP, or do you also need inactive ones? Which SAP field contains this vital information?
The SAP Side – Available APIs
For a successful project, your team needs to be familiar with SAP to determine the best way to integrate it. SAP offers different types of APIs.
-
RFCs/BAPIs: BAPIs, or Business Application Programming Interfaces, use a system called RFCs, which stands for Remote Function Calls. RFC is a special protocol created by SAP. Both SAP ECC and SAP S/4HANA offer thousands of BAPIs for various business tasks, enabling users to read and write data. To connect to a BAPI, you must use one of SAP's connectors: the SAP JCo (Java Connector) or NCo (Net Connector). You can also access data from any SAP database table through RFC.
-
SOAP Web Services: SAP offers several web services that utilize the SOAP standard. However, these services only provide a small part of what SAP can do.
-
OData: SAP has created a new setup of web services based on the OData protocol. These services are lighter than BAPIs and SOAP. While the OData support is not as complete as BAPIs, it represents SAP's direction for the future.
It's best to use a standard SAP API to integrate without writing code in the SAP system. Standard APIs take into account your SAP settings and customizations. Creating your APIs in SAP can lead to a complex project that requires a significant amount of time. You also need to ensure your APIs align with SAP's update and release cycles, which could cause delays in your project.
Even without implementing changes in SAP, it is essential to have a strong understanding of SAP for any integration project. It includes understanding business processes and the available application programming interfaces (APIs).
-
Read Also: SALESFORCE MAILCHIMP INTEGRATION GUIDE
Implementation of an Integration Using the Example of Vigience Overcast
Here’s a simple example of how an integration can work. We want to display invoices for an account on its detail page under the related lists section. Since these invoices are stored in SAP, we need to set up an integration.
We have millions of invoices in SAP and create many new ones every day. It would consume a significant amount of storage in Salesforce and place a heavy load on the SAP system to replicate all of them. We want to view invoices in real time and only display them when necessary.
Vigilance Overcast is the best choice for this integration. Overcast already has a built-in component to show invoices, which we can easily install from the component library. For this tutorial, let's explore how to create the same element from scratch.
You can install Overcast in your Salesforce org through the AppExchange as a managed package. This article does not cover the installation and setup process, but you can find more information by visiting Overcast Help.
Creating an Integration Scenario
First, let’s create an integration scenario that connects to a specific API in our backend system. To do this, follow these steps:
-
Open the app launcher and select “Overcast”.
-
Go to the Integration Scenarios tab and select “New.”
-
In the popup, select the type of scenario – “Data Synchronization” or “Real-Time”. In this case, we will go with a “Real-Time Integration”.
-
Next, select the connection to be used for SAP connectivity and provide the scenario with a unique name.
-
In the final step, we need to specify which BAPI or table in SAP we want to access. In this case, it is table WB2_V_VBRK_VBRP2. BAPI and table names in SAP can be confusing, so it is often necessary to have an SAP expert help the team.
Field names can be tricky, but Overcast allows you to select precisely which fields from SAP to use in the integration. You can choose them from the same dialog.
6. Click the “Save & Activate” button. It will save the integration scenario and automatically create all the necessary APEX classes and structures in the background.
We have connected our Salesforce system with SAP. Now, we can see a list of invoices without needing to write any code or leave Salesforce.
The Overcast Component Builder
The Overcast Component Builder helps administrators create user interfaces for integrations as Lightning Components. This tool offers various starting options, including widgets, list views, and detail pages. It is a low-code tool, which means you don’t need extensive coding skills to use it. The Component Builder is driven by metadata and allows you to see a preview of the user interface while you build it.
The following screenshot shows the Component Builder with the list of invoices:
In the Component Builder, we can link the integration's input parameters to attributes of a related object. For example, we connect the SAP field KUNRG (Payer) to the custom field “Business Partner Number” on the Salesforce Account object. This setup ensures that only invoices for this account are displayed.
Like regular Lightning Components, Overcast Components can be added to page layouts using the Salesforce AppBuilder.
The final component looks like this:
Summary
Integrating Salesforce with other systems, such as SAP, is becoming increasingly important for large companies. It enables Salesforce users to access customer-related information more easily. Good integrations mean users don't have to switch between systems or re-enter data.
To ensure successful integrations, start by selecting the right tool and clearly outlining your specifications. Having team members with SAP knowledge is vital. They can pick the right APIs and understand how integration might affect your specific SAP system.
What are your experiences with integrating Salesforce and SAP? Share your thoughts in the comments below!
Looking to streamline your operations with Salesforce integration? At Codleo Consulting, we specialize in connecting Salesforce with platforms like SAP to help businesses improve efficiency and data accuracy. As a trusted Salesforce partner, we offer end-to-end integration solutions along with ongoing Salesforce support to ensure everything runs smoothly.
Codleo Consulting delivers expert Salesforce integration services across the USA—helping businesses connect systems, boost productivity, and scale with confidence.
Get in touch with our experts today and take the first step toward smarter, connected systems.