MuleSoft Accelerator for Consumer Goods icon

MuleSoft Accelerator for Consumer Goods

(0 reviews)

Use case 1 - Product and Account Integration with Hierarchies

Run more intelligent, data-driven trade promotions with pre-built assets that surface relevant product, customer, demand planning, and pricing information from ERP and PIM systems. Easily consolidate this information into Trade Promotion Management platforms like Salesforce Consumer Goods Cloud for informed promotional planning.

Overview

See also

Description

Trade promotion management is often multi-faceted, vague, and non-lucrative. It requires effective collaboration among many key stakeholders including sales, finance, revenue growth management, demand planning, and marketing. However, the data needed to drive effective promotions is often siloed and inaccessible where it is needed most.

This use case unlocks critical data for analysis and allows key account managers and finance teams to run more efficient and data-driven trade promotions. This solution enables organizations to unify reporting and build visualizations to support their analysis of promotions, including optimizing pricing and reconciling baselines with actuals. With real-time access to this information, account teams are better equipped to optimize trade spend ROI and drive sustainable growth.

Ultimately, consumer goods companies and their stakeholders will be able to have a holistic view of their trade spend.

Glossary

TermDefinition
CGConsumer Goods
CIMThe Cloud Information Model (CIM) defines a set of standard data structures that can be used as canonical representations of common entities for integrating systems.
Global DataA Global Data service provides an accurate, consistent, and complete copy of business data for use by enterprise applications and business partners while also providing a means to link that copy to occurrences in other systems.
PIMThe system responsible for managing product information for retail and consumer goods.

Goals

  • Support the bulk creation and real-time creation of products in Salesforce CG Cloud.
  • Support the creation of Universal ID & ID attribution
  • Orchestrate product updates across designated applications
  • Support product hierarchies of a product with attributes - Category, Sub-Category, Brand, Flavor, Packaging. These attributes can be modified based on customer requirements.
  • Create and update Product Hierarchy object in Salesforce CG Cloud
  • Support the bulk creation and real-time creation of accounts in Salesforce CG Cloud.
  • Orchestrate accounts updates across designated applications
  • Support account hierarchies of an account with attributes -ParentId
  • Create and update Account Hierarchy object in Salesforce CG Cloud

Use case considerations

  • Consumer Goods products from SAP S/4 HANA are synchronised with Salesforce Consumer Goods Cloud.
    • Creation of new products
    • Updating existing products
    • Creation of product hierarchies
    • Updating product hierarchies
    • Deleting product(s)
      • This will be handled by marking products as ‘Inactive’ (productStatus in CIM and State in Salesforce Consumer Goods Cloud)
      • Physically deleting the product is out of scope (to comply with TPM best practices)
  • Creation of new accounts
  • Updating existing accounts
  • Creation of account hierarchies
  • Updating account hierarchies
  • Primary identifiers will be linked with the products and accounts in MDM. This can be removed or replaced with what customers deem fit to map and translate ID’s from one system to another to handle the correlation of products and accounts between SAP S/4 HANA and Salesforce Consumer Goods Cloud.

Technical considerations

  • Enable the creation of a universal ID in MDM that allows you to retrieve / create IDs regardless of where the product and account is created or updated
  • Use CIM as the canonical model
  • Build using top applications, inclusive of Salesforce products, but should be built to work with other endpoints as well. For this solution, leverage the following applications:
    • Salesforce Consumer Goods Cloud, SAP S/4HANA and MDM (generic)

End-to-end scenarios

  • Product(s) created in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
  • Product Hierarchy created in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
  • Product Hierarchy updated in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
  • Account(s) created in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
  • Product(s) updated in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
  • Account(s) updated in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud
  • Account Hierarchy updated in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
  • Product Hierarchy updated in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.

Solution definition

The primary set of use cases covered in the current solution involve the synchronisation of product and account data (including their hierarchies) between multiple systems.

Goal

Product synchronisation to MDM and Salesforce CG Cloud.

Main success scenario

  1. Receive a new or updated product from SAP S/4 HANA.
  2. For the first product job run/ schedule, the products will be filtered out from SAP S/4HANA by their level. Hence the first set of products will be Category, then Sub-Category, Brand, Flavor and Packaging. This ensures that the hierarchy is correctly built in Salesforce Consumer Goods Cloud. Then the products will be pulled from SAP S/4 HANA.
  3. Repeat the steps 4-6 for every product level.
  4. Attempt to match the input to an existing product in MDM
  5. If a match is found, update the existing entry in MDM. If no match is found, create a new entry in MDM and Salesforce Consumer Goods Cloud.
  6. Publish the update to Salesforce Consumer Goods Cloud registered for updates.

Goal

Account synchronisation to MDM and Salesforce Consumer Goods Cloud.

Main success scenario

  1. Receive a new or updated account from SAP S/4HANA. Every account will contain the parent account ID until it finds the top most parent in the hierarchy.
  2. Attempt to match the input to an existing product in MDM.
  3. If a match is found, update the existing entry in MDM. If no match is found, create a new entry in MDM and Salesforce Consumer Goods Cloud.
  4. Publish the update to Salesforce Consumer Goods Cloud registered for updates.

Demo video

To achieve speed and scale, consumer goods companies need to connect critical systems, applications, and data in one place. With the power of MuleSoft, key account managers, sales representatives, and finance teams can access critical data in their Trade Promotion Management platform, such Consumer Goods Cloud, for informed trade planning.

As a key account manager (KAM), collaboration is key, but with the amount of information exchanged and circulating through multiple systems, collaborating with key teams can be challenging. To achieve speed and scale, consumer goods companies need to connect critical systems, applications, and data in one place. With the power of MuleSoft, KAMs, sales representatives, and finance teams can access critical data in their Trade Promotion Management platform, such as Consumer Goods Cloud, for informed trade planning.

In this demo, learn how you can nurture more robust relationships with optimal trade tactics and connected data with MuleSoft and Salesforce.

Assumptions and constraints

The following will be used to guide or constrain the solution design at a high level:

  • The Cloud Information Model will be used as the canonical model for all business types; see the CIM usage guidelines in that asset.
  • Universal identifiers will be maintained in MDM. Wherever possible, these will be assigned as external identifiers in target systems.
  • References to the universal IDs will be reflected in Salesforce Consumer Goods Cloud using ExternalIDs to avoid conflicts with the usage of other external identifiers.
  • MDM will record only minimal information about the product in addition to establishing the correlation of productIds between SAP S/4 HANA and Salesforce Consumer Goods Cloud.

High-level architecture

Product sync HLA Account sync HLA

Sequence diagram

The diagrams below illustrates the sequence of processing product and account sync to Salesforce Consumer Goods Cloud from SAP S/4HANA.

Product sync sequence diagram Account sync sequence diagram

Processing logic

The primary handling and orchestration of products will be implemented in the Products Process API. This process can be described as follows:

  1. A product has five attributes - Category, Sub-Category, Brand, Flavor, Packaging that represent the product hierarchy where each attribute is a type of product.
  2. All the levels in the product hierarchy need to be synchronised from SAP S/4 HANA to Consumer Goods before the actual product.
  3. The bulk data upload to CG Cloud will be implemented using a batch scope where each of the steps from Step 4 - Step 6 will happen in parallel for all the products.
  4. SAP S/4HANA System API will determine the level of the product based on the availability of the five attributes.
  5. Find a matching product entry in MDM. The lookup will be done by attempting to match on the following criteria, in sequential order, returning once a match has been found:
    1. Universal Identifier (if provided)
    2. External Identifier (of source system)
  6. If a single match is found:
    1. Retrieve the existing product
    2. Apply the incoming updates and save them back to MDM
    3. If not matched on external identifier, associate it with the product
    4. Invoke System APIs to update the Salesforce Consumer Goods Cloud (see below)
    5. Associate missing external identifiers back to MDM
  7. If no match was found:
    1. Create or update a product entry in MDM
    2. Associate external identifier of source system with the product
    3. Invoke System APIs to update the downstream systems (see below)
    4. Associate new external identifiers back to MDM

The primary handling and orchestration of customers will be implemented in the Customers Process API. This process can be described as follows:

  1. A Customer has an attribute to identify the parent- parentId that represents the hierarchy where each attribute is a type of customer.
  2. All the levels in the customer hierarchy need to be synchronised from SAP S/4 HANA to Consumer Goods before the actual product.
  3. The bulk data upload to CG Cloud will be implemented using a batch scope where each of the steps from Step 4 - Step 6 will happen in parallel for all the customers.
  4. SAP S/4HANA Customer System API will determine the level of the customer based on the availability of the parentId attribute.
  5. Find a matching customer entry in MDM. The lookup will be done by attempting to match on the following criteria, in sequential order, returning once a match has been found:
    1. Universal Identifier (if provided)
    2. External Identifier (of source system)
  6. If a single match is found:
    1. Retrieve the existing product
    2. Apply the incoming updates and save them back to MDM
    3. If not matched on external identifier, associate it with the product
    4. Invoke APIs to update the Salesforce Consumer Goods Cloud (see below)
    5. Associate missing external identifiers back to MDM
  7. If no match was found:
    1. Create or update a customer entry in MDM
    2. Associate external identifier of source system with the product
    3. Invoke System APIs to update the downstream systems (see below)
    4. Associate new external identifiers back to MDM

Successful outcome

After successfully completing the update processing for all target systems, the following conditions will be met:

  1. MDM holds a record of the product and customer
  2. All target systems will hold at least some minimal representation of the same
  3. The entity created/updated in each system will reference the universal identifier from MDM
  4. MDM holds a list of all external identifiers associated with the product
  5. A complete view of the product and customer can be constructed by first retrieving the universal copy from MDM, and then from all associated downstream systems

Workflow

  1. The use case is triggered when

    • A product and its associated hierarchy is created in SAP S/4 HANA
    • An account/organization and its associated hierarchy is created iis created in SAP S/4 HANA
  2. The Products Process API invokes the SAP S/4HANA Products System API on a schedule to capture the new and updated products

  3. The Customers Process API invokes the SAP S/4HANA Customer System API on a schedule to capture the new and updated organization customers
  4. The Salesforce Consumer Goods Cloud System API creates or updates the products and accounts in Salesforce Consumer Goods Cloud.

Systems involved

  • Salesforce Consumer Goods Cloud
  • SAP S/4HANA
  • MDM (generic)

Setup instructions

MDM configuration

Follow the setup instructions in the Prerequisites tab of the MDM System API.



Before you begin

bulb.png The Getting Started with MuleSoft Accelerators guide provides general information on getting started with the accelerator components. This includes instructions on setting up your local workstation for configuring and deploying the applications.

Downloadable assets

Accelerator System APIs

Accelerator Process APIs

Accelerator Listeners

Common services (can be used across any use case)


Reviews

TypeCustom
OrganizationMuleSoft
Published by
MuleSoft Solutions
Published onJan 30, 2023
Asset overview

Asset versions for 3.0.x

Asset versions
VersionActions
3.0.0

Categories

Accelerator
Consumer GoodsNo values left to add
Industry Vertical
RetailConsumer GoodsNo values left to add

Tags