Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
Showing results for 
Search instead for 
Did you mean: 
Product and Topic Expert
Product and Topic Expert
Authors: Gianluigi Bagnoli, Knut Heusermann, Trinidad Martinez, Eddy Neveux

At SAPPHIRE SAP positioned itself as “the Experience Company powered by the Intelligent Enterprise". With the acquisition of Qualtrics SAP has now the bold vision of bringing together the operational data (O-data) held within SAP systems with the experience data (X-data) collected by Qualtrics. While O-data are intended to run the company efficiently, X-data will tell why the company wins on the market (or not), with its products and its brand.

You may now wonder whether this vision makes sense for SMBs too. The answer is simple: yes, and this blog post will show you why.


Experience Management for SMBs

Let's take for instance a classical small business: a boutique winery that sells about 20,000 bottles of wine per year. You may meet this kind of customers in many market units: Italy, France, Germany, Spain, Israel, US, Argentina, Chile and so on. There are plenty of innovative partners solutions for them, both on SAP Business One and on SAP Business By Design. They cover all the production phases, of course the logistics, the sales process, and so on. They are of course fully localized and some of them already provides advanced intelligent scenarios. So such a customer can easily find innovative solutions that fully cover all their operational needs, verticalized in their industry sector.

Now, these days, selling wine is much more complex than selling just fermented grape juice. The production processes are so advanced and so spread around the world that is very difficult to bounce on a bottle of bad wine. All wines are good these days. What makes a difference and then what sells is the narrative behind the wine: where the wine comes from (the famous terroir); whether is vinified in barriques or in steel; whether is biologic, biodynamic or natural; whether sulfur is used or not; whether bordeaux blend varieties are used, or rare forgotten autochtone ones; whether the vintage was an easy one or whether the winemaker had to struggle to make it a great wine, and so on.

Even the bottle tells a story. If it is bordelaise then it tells a story of chateaux and rich domaines where skilled international winemakers blend grapes juices for a perfect wine. On the contrary, if it is bourguignonne it tells more a story of peasants growing small single parcels of monovarietal ancient autochtone vines.

So when you buy a bottle of wine you are not looking just for grape fermented juice but for a full experience filled with narratives, which transcends the product itself. This experience can also encompasses the act itself of buying, with more and more people buying directly at the producer's where they can feel the place and the story and the people behind the mere bottle of wine.

In a word, selling wine these days is selling an experience.



This trend is global and you can find it in many other market segments. Take for instance hospitality. You can find from our partners several solutions that provide full support of an hotel operations, for instance on top of SAP Business One. These solutions fully cover the needs in this vertical market and are fully localized in the target country.

However, the factors that makes a customer to choose an hotel against another these days are more diverse than just location, cost and size of the bed. They can involve very diverse experience factors such as: "is there a vegan option for the breakfast ?" or "is there public WiFi available ?", and of course with reviews on the web, everyone can (and they do) easily check whether what is advertised on the hotel website is actually true in reality.

Again, booking a room these days is more about looking forward for an experience.


X-data + O-data for SMBs

So, you get the point: selling these days goes well beyond selling just stuff or services. It's all about experience. But how it is possible to measure experience and get useful insights back into the operations ?

Enter Qualtrics, the most recent acquisition of SAP.

Qualtrics enables companies to measure the experience of their products and brands in the market, and of course Qualtrics - as every other product in the IT world these days - is not only a product but it is also a very rich platform, built with the industry standard API-first approach. Every object in Qualtrics (like for instance Surveys) is exposed on the web by webservices. You can find a full description here: https://api.qualtrics.com

It should not come as a big surprise here that by using a loosely-coupled approach it becomes pretty easy to integrate your core ERP with Qualtrics. The core ERP as usual remains clean and all the integration software runs out of the core itself, possibly on some integration middleware such as SCP CPI. If for some reason you haven't yet heard about loosely-coupled solutions then have a look here: https://blogs.sap.com/2018/06/05/loosely-coupled-solutions-for-smbs-topics/

Let’s see in practice now how you can put your O-data and your X-data at work together. Here we will build very simple scenarios to explain how the full roundtrip goes. We will use SAP Business By Design as the O-data back-end, and we will use Public Solution Model to access the back-end ERP. In case you are not familiar with it, you can have a look here: https://blogs.sap.com/2017/10/02/sap-bydesign-public-solution-model/

You can think of sophisticated scenarios such as Insight to Action, generating Marketing campaign based on Surveys, or Lead Scoring, finding patterns and rating Leads based on results from Surveys, and so on. Of course, you can also easily reimplement all these scenarios on top of SAP Business One, by replacing the Public Solution Model with SAP Business One Service Layer (see it here: https://blogs.sap.com/2014/11/24/b1-service-layer-with-javascript-handling-b1-objects-without-net-no...)


From O-data to X-data

But let’s remain simple here and build a maintenance scenario, where you want to check how Service Orders were fulfilled to measure the experience of the customer. In this scenario every time a Service order is created in the O-data back-end then a Survey is built on-the-fly via Qualtrics API, one Survey per Service Order.

You can get the newly created Service Orders either by fetching creation events from SAP Business By Design, with a solution built with SAP Cloud Application Studio; or, more simply, you can pull at fixed intervals the latest completed SAP Business By Design Service Orders, using Public Solution Model.

Either way, once you have the list of newly created Service Orders, you can then create all the related Surveys in Qualtrics, one per Service Order.Below you can find a code snippet that shows how a Survey is created from a Service Order. It's pretty straight-forward, as expected with a loosely-coupled approach: it reads the properties of the Service Order with an ODATA GET into SAP Business By Design, and then, based on these properties, it builds a corresponding Survey using Qualtrics API. Easy.

function CreateSurveyFromServiceOrder(serviceOrderID, callback) {
var options = {}

// Get Service Order Name from ByDesign via OData
options = {
url = "https://{0}.sap.com//sap/byd/odata/cust/v1/tmserviceorder/ServiceOrderCollection('{1}')?$format=json".format(bydtenantname, bydserviceorderid),
method = "GET",
headers: {
"x-csrf-token": bydCsrfToken,
"Accept": "application/json",
"Content-Type": "application/json",
"Authorization": "Basic " + bydAuthToken

request(options, function (error, response, bydRespBody) {
if (error) {
} else {

// Create a Survey in Qualtrics
options = {
url: "https://{0}.qualtrics.com/API/v3/survey-definitions".format(qualtricsDataCenter),
headers: {
'x-api-token': qualtricsAPIToken,
'Accept': 'application/json',
'Content-Type': 'application/json'

body: JSON.stringify({SurveyName: "Survey for Service Order " + bydRespBody.d.results.Name, Language: "EN", ProjectCategory: "CORE"})

request.post(options, function (err, res, body) {
if (res.statusCode != 200) {
logError(qualtrics_createservicedef, res, body)
callback(body, res.statusMessage)

else {
callback(null, body);


In this snippet the only property used is the Service Order name, but of course this Survey creation can go further, as Qualtrics provides access to other objects such as the Questions in the Survey itself, the Flow by which these questions are presented, and so on.

You may want to create different Surveys with different Questions based on a customer segmentation, or propose different Flows of Questions. This customer segmentation may be simply derived by some other retrieved O-data, such as the spending of the customer in the last quarter, or it can be based on much more sophisticated ML models.


From X-data back to O-data

Once the Survey is created, then it’s deployed and sent out. At this point, you receive the answers and of course feedback them back into some action in the ERP. For simplicity’s sake, in this example Survey results are just sent back in a field of the Service Order.

Have a look at the video below to see how it’s done. This integration scenario is built on SCP CPI, and, again, it's based on both Qualtrics events and on SAP Business By Design Public Solution Model.

In a real world scenario, between the X-data and the O-data you can (and you should) put a lot of intelligence in order to process all the experience data and distil some useful insight to your ERP.

To do that you can either use all the statistical algorithms that Qualtrics provides out-of-the-box or use all the intelligent Enterprise services that SCP provides you, for instance sentiment analysis, text analysis, topic detection, R-based statistical analysis and so on.

Besides, this intelligence can be based on diverse data. Think about a customer that produces and sells connected goods and wants to measure the customers experience. Connected goods is a pretty large category, as these days almost everything can be connected, from healthcare devices to sport shoes. You can mesh Qualtrics Survey data together with IoT data that shows how the product itself is used. Or think about measuring the perception of a company brand: you can mesh Qualtrics Survey data together with the sentiment against the brand as found in social media. And so on.



You have seen in this blog post how O-data and X-data can be easily integrated for SMBs too. A loosely-coupled approach, based on APIs and SCP CPI makes it easy to couple them together, All the Intelligent Enterprise framework plays here a crucial role to build the right questions to your market and to distil useful insight to feed your operations.

You can find the all the source code corresponding to this sample at the following link.