MuleSoft Accelerator for Salesforce Commerce Cloud
Use case 5 - Customer sync
Overview
The following use case is covered:
- Customer profile sync (B2C Commerce -> Service Cloud & B2C Commerce -> SAP)
This use case demonstrates how to sync customer profile data that is created or updated in B2C Commerce with Service Cloud and an external ERP like SAP.
High-level architecture
Workflow
- The user creates or updates their profile in B2C Commerce and saves it
- The custom cartridge invokes a Mule API with the customer profile data
- The customer profile is created or updated in Service Cloud as well as SAP
Sequence diagram
Systems involved
- B2C Commerce
- Service Cloud
- SAP
Setup instructions
B2C Commerce configuration
Setup B2C Commerce with the custom cartridge to invoke the B2C Commerce Experience API when a customer profile is created or updated. The custom cartridge needs to be properly installed in the active site by a qualified B2C administrator or developer.
SAP Configuration
Follow the Custom BAPI setup instructions.
Service Cloud configuration
Create the following custom fields in the Contact object:
- CC_Customer_Number____c
- External_Customer_ID____c
- External_Customer_ListID____c
- External_Customer_SiteID____c
Mule projects
- B2C Commerce Experience API | API Specification | Implementation Template
- Customers Process API | API Specification | Implementation Template
- Salesforce System API | API Specification | Implementation Template
- SAP System API | API Specification | Implementation Template
Components & configurations
Customer data elements
B2C Commerce | Service Cloud | SAP |
---|---|---|
First Name | FirstName | IV_FIRSTNAME |
Last Name | LastName | IV_LASTNAME |
IV_EMAIL | ||
Address 1 | OtherStreet | IV_ADDRESS1 |
Address 2 | OtherStreet | IV_ADDRESS2 |
City | OtherCity | IV_CITY |
State | OtherState | IV_STATE |
Country | OtherCountry | IV_COUNTRY |
Postal Code | OtherPostalCode | IV_POSTALCODE |
Contact Phone | Phone | IV_TELNO |
CustomerId | External_Customer_ID__c(Custom Field) | IV_CC_CUSTOMER |
CustomerNumber | CC_Customer_Number__c(CustomField) | N/A |
CustomerListId | External_Customer_ListID__c(CustomField) | N/A |
SiteId | External_Customer_SiteID__c(CustomField) | N/A |
ContactId | Id | N/A |