You have to call the OData Service CUAN_IMPORT_SRV in order to load master data like contacts or products and interaction data into SAP Hybris Marketing Cloud and SAP Hybris Marketing. Normally you have a middle ware like SAP HANA Cloud Integration (HCI) in place to connect your source system or source CSV File with the OData Service. If you require a test data upload of CSV data, you can use the following tutorial.
Prerequisites:
- Install SOAP UI:
This tutorial uses the open source product SOAP UI for uploading data. Therefore first install the tool.
- Import SOAP UI project:
Import the SOAP UI project XML by choosing File -> Import Project. You find the XML under https://mdocs.sap.com/mcm/public/v1/open?shr=NAQUF-BRLdOsHpQEtCDCyS7lgtQFZ1FROnygWLvBR3U.
- Creating of Communication User:
- Creation in SAP Hybris Marketing Cloud:
Log On to your SAP Hybris Marketing Cloud System. Ensure that your user has access to the business catalogue Communication Management:
Open the app Communication Systems and choose New. Enter a system ID like SOAP_UI_UPLOAD. The host is localhost. Create a new Inbound User, e.g. MKT_UPLOAD:
Afterwards open the app Communication Arrangements. Create a new communication arrangement for scenario SAP_COM_0003 (Marketing – Master Data Integration) and SAP_COM_0004 (Marketing – Business Data Integration) and assign your newly created communication system. The inbound communication user should be taken over and you should see the OData service CUAN_IMPORT_SRV in the inbound services section:
- Creation in SAP Hybris Marketing:
Log on to your SAP Hybris Marketing Backendsystem. Copy role SAP_CEI_ECOMMERCE_INTEGRATION and maintain the authorization values. Create a service user and assign your copied role to this user.
Prepare Data Files
The data upload requires 2 files, one CSV File containing the data and one text file containing the mapping of CSV columns to OData Properties.
The CSV File requires a header row. Line items have to be separated by semicolon. This is an example for products:
ID_ORIGIN;ID;DESCRIPTION
EXTERNAL;P1;Product 1
EXTERNAL;P2;Product 2
EXTERNAL;P3;
EXTERNAL;P4;Product 4
The metadata file must contain the mapping from the OData Service property to the CSV column separated by colon. The corresponding metadata file for product therefore would look like this:
IdOrigin:ID_ORIGIN
Id:ID
Description:DESCRIPTION
Your CSV file can contain more columns than you want to upload to the system. Only columns mapped in your metadata file will be uploaded. You can open the OData metadata document with any browser by entering the URL:
https://<your host name>/sap/opu/odata/sap/cuan_import_srv/$metadata?saml2=disabled
You will be prompted to enter a user and password. Logon with your communication user.
Specialties for Contact and Interaction Files
For contacts and interactions you are able to upload depending data. In case of contacts those depending data are facet information. For interactions you can upload products. In order for the tool to find the depending data a key column is needed in the data files. For contacts the data files could look like this:
Contact Data File:
KEY;ID_ORIGIN;ID;NAME_FIRST;NAME_LAST;DATE_OF_BIRTH
1;FILE_UPLOAD;4711;Jane;Doe;19800920
2;FILE_UPLOAD;4712;John;Doe;19790405
Facet Data File:
KEY;ID_ORIGIN;ID;OPTIN
1;EMAIL;jane.doe@email.com;Y
1;SMS;12345;N
2;EMAIL;john.doe@email.com;N
If you want to provide a Date of Birth for contacts you have to provide the date in format yyyyMMdd. Timestamps have to be provided in format yyyyMMdd or yyyyMMddHHmmss. If you are not providing a timestamp for a contact, the current time is taken. For interactions a timestamp is always required.
Data Load
- Open the imported project in SOAP UI and drill down to your desired data upload:
- Double click the upload to open it:
- Double click on Inputs to enter the needed upload information:
- You can now start the upload. Close the inputs window and press the start button of the upload case:
- When the upload was successful the upload will end with a corresponding success message. If the upload fails, your data might have incorrect values. Check the script log for error. You can always start the upload again.