Common consideration for a Salesforce ERP integration

Mar 14, 2021

Integrating front and backoffice systems is a common challenge for businesses. In this post, we explore the different aspects of integrating Salesforce with ERP systems. We cover key considerations for successful adoption, such as simplicity for users and necessary data access. We also provide an overview of common integration architectures and highlight the importance of bi-directional syncing, choosing the right API, and frequency of syncs. We focus on setting up the foundation, determining workflow handover, and opening up ERP information to sales, providing examples of how these can be achieved.

A lot of businesses handle front- and back-office related tasks with different systems. In this post, we’d like to take you through the different aspects of setting up a nice integration flow, where Salesforce takes up the role of handling most of the front-office related tasks and using any ERP system for the back-office processes.

Making the right choices regarding how to successfully integrate back-office systems like e.g. ERP systems with Salesforce, is a challenge often faced when implementing Salesforce projects.

To assist in making the right choices, we’ll give a brief overview of the common architectures we utilize and what the advantages of the different setups are. We’ll tackle the different integration points subject by subject.

These are some general important considerations with regards to successful adoption:

  • The users should be able to execute their day-to-day tasks as efficiently as possible while having access to all necessary data. This should preferably be achieved by only working in their primary system and without being held back by something which is needed from someone else, in the other system.
  • Keep things as simple as possible. We don’t want users to be confused about in which system to take a certain action.

Setting up the foundation: accounts & contacts

Accounts are the core of the CRM system. Many different objects will be related to the account in one way or another. To make sure that this foundation is present in both systems, each system should contain the right subset of accounts that your business needs. In general, it seems a good idea have this data in each system:

  • Salesforce: all accounts that you’d potentially do business with, e.g. suspects, prospects, customers.
  • ERP: accounts which you do (or did) business with, e.g. customers, suppliers.

Sales reps should be able to freely create and use any account they need to drive sales while we keep the ones in the ERP to the bare minimum of what is necessary. The ERP system is only interested in accounts we’ve actually had deals with, in order to complete different tasks, as a result of those established deals such as: order management, invoicing, etc.

Once a prospect makes its first purchase and is converted to a customer, it can be automatically created in the ERP. Commonly we see that when this happens, some additional information (e.g. VAT Number) has to be completed in one or the other system prior or after the conversion.

We also have to decide which system will be the master of the accounts which exist in both systems. Most frequently, this will be the ERP system or a bi-directional sync will have to be implemented.

The same exercise has to happen on contact-level as well but it is comparable. As you might have noticed, a lot of different questions have to be answered when it comes to master data within a Salesforce/ERP integration.

Determining the handover: quotes & orders

The quote or the order are commonly the points where the workflow at Salesforce’s side ends and where the steps in the process are taken care of by the ERP.

Disclaimer: this is of course very dependent on the kind of business you are running. Salesforce also provides full quote-to-cash solutions, entirely built on the Salesforce platform. Dependent on your business needs, this could be a great solution. It can be very convenient to have the entire flow incorporated in a single system. On the other hand, some businesses have specific needs which can be handled in a more suitable way by systems which are specifically tailored towards them. ERP can be a good example of this.

Let’s assume the quote or order is the cutoff point where the ERP handles the next steps in the process, we still have some different options:

  • Do we create quotes & orders in Salesforce or is the order created directly in the ERP?
  • Will some orders be created directly in the ERP, without an opportunity and a quote in Salesforce?

Regardless of which cutoff point we’ve chosen, we’d like to create some automated processes when the deal is closed and send the sold goods and services to the appropriate object in the ERP. For instance: when a quote is signed by the customer, automatically execute these actions:

  • Create an order & order lines in the ERP system, containing all of the information which was offered in the quote.
  • Set the opportunity to closed won
  • In case this is the first deal with a prospect, update the type of the account from prospect to customer

After the order is created in the ERP, it can take care of the next steps in the process and manage different aspects for which the ERP is specifically designed e.g.:

  • Order management
  • Production
  • Inventory tracking
  • Delivery
  • Invoicing

Typically, the Salesforce flow stays in the lead until closing the deal, including the creation of the quote. This poses some additional challenges. In order to do so, it could be necessary that all product and pricing logic has to be present in both Salesforce and the ERP and is preferably only managed in one of those systems. This requires synchronization of the product master data as well. Yet another important decision that needs to be made.

Open up ERP information to Sales

Even if the ERP handles the further steps in the process, some of this information can be very relevant for a sales rep in Salesforce. For instance, these objects can be useful to sync back from the ERP to Salesforce to make them read-only available:

  • Order
  • Deliveries
  • Sales Invoices

This way an account manager has access to a 360° overview of a customer. This can be very useful since the account manager is often the person a customer is relying on, in case they have any question. This provides the account manager with all of the necessary information, only one click away.

Other than that, this information can also be used on a higher level.

For example: by having access to ERP data of your customers within Salesforce, you can take your customer segmentation to the next level. For example by reporting on the revenue they generated last year, the amount of overdue invoices or the average deal size.

Navigating the complexities of Salesforce/ERP integration

This was merely an introduction but it should have given you at least a brief idea of the possible setups. The details of these kinds of integrations can easily get rather complex. 'Syncing object X bi-directionally' is easier said than done.

We only covered the overview of the integration, some other important decisions have to be made such as:

  • Who will be handling the integration: Salesforce, ERP or are we using a middleware?
  • Can we use connectors to reduce the amount of custom logic?
  • What different types of APIs do we use?
  • What’s the frequency of the different syncs: e.g. near real-time or only once a day?

want to know more?

related content