Events in EpisXperience
EpisXperience’s strength lies in its robust event-driven architecture. Events define the core behaviours and triggers within the system, allowing businesses to create complex customer journeys and responses to specific behaviours.
An event represent a significant change or occurrence within EpisXperience that triggers a response or action. It represents something that has happened within a system, such as a user interaction, a state change, or the completion of a task.
Here are some examples of events:
Customer Registration – Triggers when a new user joins the loyalty program.
Point Earned – Triggers whenever a customer earns loyalty points
Reward Redemption – Fires when a customer redeems a reward.
Event
EpisXperience comes with a set of predefined built-in event. You can think of each event as a structured list of properties describing what has happened, who executed an action that triggered an event, a time when the event and many more.
Many events are triggered by the EpisXperience during its operation. Some examples of these events are Points earned and Tier changed. We call these events Internal built-in events.
On the other side, many events can be triggered from the external systems. Some examples of these events are Survey completed, Order received and Reward claimed. We call these events External built-in events. These events are triggered using various APIs provided by the EpisXperience platform.
Since companies have diverse business requirements, a user can create new custom events to meet any specific business requirement. Using Custom events EpisXperience can be customised to work with any external system ranging from eCommerce solutions, Internet-of-Things platform, Customer portals or any other. Customer events are triggered using various APIs provided by the EpisXperience platform.
Structure of an Event
An event is a structured list of properties describing whas has happened, who executed an action, a time of the event and many more details. Some examples of the properties are ID of a customer, ID of a transaction, name of a reward, number of customer’s earned points. Events are stored in a dedicated Events space in the EpisXperience. These properties can be used to customize the behavioor of EpisXperience.
External built-in events and Custom events can be extended with additional properties in the Space settings → Custom properties and Events.
Each event is registered with the following default properties:
Attribute | Description |
|---|---|
| The ID of the registered event. |
| The unique identifier of the action to be registered as an event (e.g. |
| The customizable name of the registered action (e.g., Customer purchase or Checkout event) |
| The date of the event registration in YYYY-MM-DD format. |
| The time of the event registration in ISO Date format. |
| The unique ID of the customer who performed the interaction. |
| The points earned for the given event point-based loyalty schemes. The value can be negative to remove points from the customers' point balance. The default value is 0. |
| Shows the sender IP address for an event sent in through APIs. |
| This shows the source of the event:
|
| Helps to identify the origin of the event.
|
Event Management
There is no limit to the number of events that can be recorded in EpisXperience.
Events are immutable, meaning that once they are created, they cannot be deleted, modified, backdated, or reassigned to different customers*. As a result, EpisXperience does not provide any API methods or interfaces to remove events. This immutability ensures the integrity of the data, which serves as the foundation for the functionalities of the Loyalty Engine.
To address scenarios where adjustments are needed, EpisXperience offers multiple ways to negate or modify the impact of specific events on a customer's point balance or tier. For instance:
The revert-sale event reverts all the loyalty related operations of a previously completed sale.
The revert-position event reverts all the loyalty related operations of a single position of a sale.
Additionally, some events directly influence a customer's data. For example, point_add and point_sub events modify the customer's score profile attribute, enabling point-based adjustments.