SAP Hybris Loyalty Integration with Hybris Commerce Suite in Action
In December last year, the SAP Hybris Loyalty package was made publically available by SAP in the US market. SAP Hybris Loyalty is a new cloud based loyalty management solution that is delivered as a number of micro-services based on the Hybris-as-a-Service (YaaS) platform. At the moment, the Hybris Loyalty solution comes with out-of-the-box integration options for YaaS storefronts as well as SAP Hybris Commerce Suite (i.e., hybris on-Premise) installations. The latter scenario is particularly suitable for online retailers who already have an existing hybris web shop running and now would like to introduce a loyalty program to attain more customers and retain existing ones (see basic benefits of a using a loyalty program).
In this blog post, I will provide some insights into the key aspects of integrating SAP Hybris Loyalty with the hybris commerce platform and share some practical experiences. I will also discuss the architecture and necessary steps to get it up and running. I will not go into too much detail of how to get access to YaaS to be able to configure Hybris Loyalty in the cloud. Refer to the Getting Started guide on the YaaS homepage for more information.
Solution Overview and Architecture
SAP Hybris Loyalty gives organizations a simple way of organizing and managing loyalty programs. Once integrated with the hybris Commerce Suite landscape, organizations can create and manage loyalty programs for the hybris storefront by creating customized experiences for customers and rewarding them with loyalty rewards.
Whilst the SAP Hybris Loyalty solution runs as a YaaS service in the cloud, it also comes with several extensions for the SAP Hybris Commerce Suite which extend the hybris platform and provide additional OOTB loyalty-related functionalities and UI features. These extensions need to be added to the existing hybris Commerce instance to access those functionalities. A Data Hub instance on a separate server is required to transfer data between the hybris Commerce instance on-premise and the Hybris Loyalty solution in the cloud. To this end, a Loyalty Data Hub Adapter needs to be deployed on the Data Hub instance.
Two separate YaaS applications are required for the Data Hub and the Hybris Commerce Suite to act as endpoints for web service calls from the on-premise systems. The client ID and client secret created for these applications is used by the hybris Commerce and Data Hub instances to connect and authenticate with the YaaS platform. The following diagram provides a conceptual overview of the architecture.
Figure 1: Conceptual System Architecture
Behind the scenes
There are two types of communication between the SAP Hybris Commerce Suite and Hybris Loyalty on YaaS. The Data Hub is primarily used for the asynchronous replication of master data while direct web service calls are made for synchronous real-time requests of loyalty-related transactional data. Following are some examples that illustrate the communication between the systems.
Once the hybris Commerce electronic store is configured to run with the additional loyalty extensions, the new changes are reflected on the storefront. The first communication between the hybris storefront and Hybris Loyalty on YaaS already occurs when the user opens the login page of the e-store. The Hybris Loyalty extension in the hybris platform calls a RESTful web service in Hybris Loyalty to retrieve the current loyalty program details (program name and program ID) as well as a list of all the tiers associated with that loyalty program. This call is made directly to YaaS and does not go via the Data Hub.
Figure 2: hybris Storefront Login Page
Once the user has registered for an account, hybris Commerce converts the customer details into CSV format and exports them to the Data Hub via a local web service call between the hybris Commerce and the Data Hub instance. The Data Hub then processes the content and subsequently creates matching loyalty program members in Hybris Loyalty via a web service call to the corresponding REST service on YaaS (using the Data Hub application credentials). The loyalty program members can then be viewed and managed from the Loyalty section of the YaaS Project.
Figure 3: Hybris Loyalty Management Screen
A customer logged into their account on the hybris Commerce e-store can view their loyalty point accrual and redemption history from the Loyalty Rewards section of the storefront. Upon accessing this page, hybris sends a web service request directly to YaaS to retrieve information about the member using their email address as identifier. Another request retrieves the details of the loyalty-related member activities. All the loyalty information about that customer is available through this page.
Figure 4: Loyalty page on hybris Storefront
Simple use cases for loyalty rules
A simple scenario for using loyalty reward rules is the registration process. A rule can be added in Hybris Loyalty which will reward the customer with a certain number of loyalty points if they create an account in the hybris Commerce e-store. This is an easy way to create an incentive for the customer to register rather than using anonymous checkout, thereby opening the door for detailed analytics, personalised marketing and deeper customer engagement.
Figure 5: Sample loyalty rule defined in Hybris Loyalty
As can be seen in the screenshot, Hybris Loyalty also makes it very easy to send a welcome email to the customer once they are registered as a member in the loyalty program.
The most typical use case for loyalty program rules is of course the accrual of points when purchasing (a number of) certain products in the e-store. To show the customer how many points they will earn during checkout, hybris Commerce calls a web service in YaaS every time an item is added to the cart. The cart details are transferred in JSON format and the Hybris Loyalty service checks for possible accrual of loyalty points and sends back the new balance. Again, this can be a powerful incentive for the customer to complete the purchase.
Figure 6: Earning loyalty points during checkout
Check out this blog for more examples of how to leverage a loyalty program created in Hybris Loyalty.
SAP Hybris Loyalty provides a fairly simple way of adding a loyalty program to an existing hybris Commerce storefront. Since all the loyalty-related operations including the rule processing happen in the cloud, the changes to the on-premise hybris platform are very small. Setting up the integration with the Data Hub proved to be quite straightforward, and I had a working example running in a few hours. Some more investigation will be required to compare the features of Hybris Loyalty with those of SAP’s previous Loyalty Management solution based on SAP CRM.