Voyado Customer Engagement + Orisha Commerce integration
Orisha Commerce (formerly Cow Hills Retail) is a Dutch company providing omnichannel point-of-sale software for retailers. They are fully cloud-based and their POS can run on all kinds of hardware, including iOS and android, allowing staff to, for example, walk around the store and process customer’s purchases on the spot.
- Identifying a contact
- Registering a contact
- Updating a contact
- Sending transactions (receipts) to Customer Engagement
- Assigning personal promotions
- Applying promotions to purchases
- Enabling Customer Engagement to act as point follower
Prerequisites
To set up your integration you’ll need:- A login to Customer Engagement
- An API key for the Customer Engagement API
- A Treazure account
Configuration
Orisha Commerce themselves take care of the configuration. Contact them for more details.Contact page for Orisha Commerce
Contacts
An end-user in Customer Engagement is called a “contact”. In Customer Engagement there are many contact types: “Contact”, “Member” as well as custom types based on a retailer’s specific requirements. Orisha Commerce is able to search for contacts in Customer Engagement without specifying the contact type. This allows a search to be made for a contact, regardless of their contact type, using only an address or mobile number. However, all contacts registered and updated in-store through the Orisha Commerce POS will be saved as type “Member”. Your goal should be to have all your end-users as contact type “Member”. This allows them to be awarded loyalty in form of points and vouchers, making use of the power of Customer Engagement, and allows you the retailer to gather more useful data. All contact data displayed in the Orisha Commerce POS can be updated and saved. Custom attributes can also be added in the POS and then synced back to Customer Engagement.Identifying a contact
Orisha Commerce uses v1 of the Customer Engagement API endpoint /contacts. Version 1 is used because searching based on address and postal (zip) code is something still commonly done in retailers in the Netherlands amd v1 of the Customer Engagement API supports this. This is an example swagger page for the Customer Engagement API:The contact is already in the system
The contact is already in the system
id returned contains the unique contact ID and will be used in the display step below.The contact can't be found in the system
The contact can't be found in the system
Displaying a contact’s data
Now that the contact has been identified, Orisha Commerce takes their unique ID and performs a lookup against the/contactoverview endpoint in version 2 of the API.
Learn about the /contacts endpoint
Updating a contact
If a contact’s details are updated in the POS, Orisha Commerce will send an update to Customer Engagement, syncing the new values. See the Customer Engagement API documentation to learn how this is done:Learn about the /contacts endpoint
Promotions
In Treazure, coupons and vouchers are two different concepts.- Vouchers are connected to a customer’s profile and turn up automatically in the POS.
- Coupons need to be physically taken to the store either on a mobile screen or on paper.
Learn about the promotions endpoints
Creating a promotion
An Orisha Commerce promotion that uses data from Customer Engagement needs to be set up in both systems. The use of a unique ID (external promotion code) allows a Treazure voucher and a Customer Engagement multichannel promotion to be connected. Customer Engagement handles assignments of the promotion to the contact or contacts, and Orisha Commerce handles the actual price rule (20% off, 3 for 2, 20 kr discount, or whatever). Here’s how to connect a Customer Engagement multichannel promotions to a Treazure voucher.Create a multichannel promotion in Customer Engagement

Creating a promotion

Creating a promotion
Create a voucher definition in Treazure

Add voucher definition

Configure the voucher
Create a filter group in Treazure for the voucher

Create a filter group

Name the filter group

Add the voucher
Create a promotion and add the filter group

Create a new promotion

Add the filter group
Using a promotion
If the setup has been performed correctly in both Customer Engagement and Treazure, the Customer Engagement promotion should now turn up for the specified customers when they are identified in the POS and their data is fetched from Customer Engagement. As for any external promotion in Customer Engagement, the external promotion code is used by the POS to fetch the price rule from the external system (from Treazure, in this case). The Orisha Commerce POS can also show the normal promotions from Treazure that are not connected to any promotions in Customer Engagement.Redeeming a promotion
Redeeming a promotion is currently done through the receipt. The discount is applied across all items and then the promotion’s unique ID is added to the “usedPromotions” array in the payload that is sent to the Customer Engagement /receipts endpoint. This is how that looks in the payload:Learn about registering a purchase
Handling receipts
A vital part of the integration between Orisha Commerce and Customer Engagement is handling receipts. Learn more here:Handling receipts for purchases and returns
Handling purchases
If a customer makes a purchase, Orisha Commerce sends that receipt to the/receipts endpoint of the Customer Engagement API using contact ID as the identifier.
If there is a promotion or discount used, it is first applied to as a discount across each line item. The relevant promotion ID will also be included on the receipt.
Handling returns
If a customer makes a return, Orisha Commerce sends that receipt to the Customer Engagement API using a contact’s contact ID as the key. Again, see the Customer Engagement documentation for details.Customer Engagement as point follower
In this integration Treazure (Orisha Commerce’s Loyalty CRM) is the master of points and vouchers, allowing customers to buy items with points, create vouchers directly on the fly and also have different type of points-buckets. This means that Treazure decides what the points are, and Customer Engagement will act as point follower. Read more about point follower here:Learn about point follower
1. Syncing point balance from Treazure (hourly update)
1. Syncing point balance from Treazure (hourly update)
2. Adding points in Treazure through Customer Engagement
2. Adding points in Treazure through Customer Engagement
3. Fetching points history from Treazure
3. Fetching points history from Treazure