I am writing this blog to talk about my experience with having C4C as the frontend connecting to multiple ERP backends,
Enterprises have multiple ERP backends, either due to complexity of the Business Units, acquisitions, or mergers. For a global sales or service leader, sometimes its imperative to get information across BUs with trends that can affect pipeline for example, and have a call to action message for sales team. C4C also has extended app, which features latest RUI version of CRM, and is device agnostic.
Some of the the components that need to be completed are listed below. They do not represent the complete list of work needed.
ID mapping - Make sure that for automated interfaces, id mapping is working, and for manual loads, based on system instance id, you have right ids mapped for integration. This is important if you want to use ERP IDs in C4C for these objects.
Communication Arrangements - Communication Arrangements is an important aspect to monitor payloads. You will need at least 2 arrangements for each object depending on number of ERP you are connecting to single C4C tenant.
Multiple ERP BAdI - This is an important BAdI to determine which ERP the payload goes out to, and creates subsequent process documents. An example for the BAdI is shown below. An example would be which ERP does the pricing request call gets routed?
Codelist mapping - Important to note here is that you have to create a code list mapping group, one per ERP. This is the most important aspect of the integration, as different ERP can have different names/codes for same C4C code.
Once the codelist mapping group has been created, corresponding codelists need to be mapped. Inheritance concept applies.
Source system identifier - It is important to consider the source system identifier field on master data and transaction objects to easily differentiate for users visually, and via search query, which source system is originating system of record. For example, in case of multiple accounts with same name in two ERPs, apart from number range and other differentiators, this field can be used to build queries based on business role fro example.
PI namespace - Since we had 2 ERP to integrate with, we used the concept of “tracks” for each integration. For each track of integration, we placed those customized mappings into its own custom namespace
Please revisit the blog, as I will update the blog with new URLs and learnings.