Event types
Learn about event types in the Loyalty Engine, including intrinsic system events and custom events that track user actions.
An event type is a way to categorise the different types of actions or behaviours that occur in your loyalty program. Each event type represents a specific action taken by a user or a system, such as making a purchase or completing a survey. Defining event types allows you to track and respond to specific user behaviours that are important for your loyalty program.
In the Loyalty Engine, event types help you organise and manage the variety of actions that can trigger reactions and reward mechanisms.
Types of event types
There are two types of event types in the Loyalty Engine: intrinsic and custom event types.
Intrinsic event types
Intrinsic event types are predefined system events that relate to key loyalty program activities facilitated by the Loyalty Engine, such as registering an account or purchasing a reward. Intrinsic event types are integral to the platform and cannot be archived or disabled.
Clients cannot report these events directly, they are automatically triggered by calls sent to the API. For example:
When you send a call to the Register new user API endpoint, a
REGISTERED_ACCOUNT
event is automatically reported by the Loyalty Engine.When you send a command to the Purchase a reward API endpoint, a
PURCHASED_REWARD
event is automatically reported by the Loyalty Engine.
Custom event types
Custom event types are created by clients to track and report user behaviours they want to incentivise as part of their loyalty program. Custom event types represent actions that matter to your business, such as making a purchase, subscribing to a service, or engaging with content.
You can create as many custom event types as needed to represent the behaviours and activities you want to incentivise.
Reporting custom events is done using the Report an event API endpoint, so requires integration with the systems where these actions take place (e.g., CRM, e-commerce store). This allows you to send event data to the Loyalty Engine, which can then be used to trigger reactors and reward users for specific actions.
FAQs
Can I edit event types after they are created?
Yes, you can edit custom event types, but intrinsic event types cannot be modified or disabled.
How do I archive or delete an event type?
Edit the event type and set the 'Active' toggle to false, thereby making the event type inactive. Setting an event type to inactive will archive it, causing any API calls reporting this event to be rejected. You can make an event type active again at a later date if required.
What happens if I delete an event type?
Event types cannot be deleted once created, but they can be archived. Archived event types will be rejected if reported, but the event history will still be available in the event stream.
Can I have duplicate event types?
No, event type names must be unique within your tenant to avoid confusion when reporting events and building reactors.
Do custom event types have any limits on the number of attributes in the payload?
While the Loyalty Engine is flexible in defining custom event types, it’s important to ensure the payload schema is optimised and doesn’t include unnecessary data to maintain performance and clarity. Only include data you're looking to create loyalty program rules with.
Are intrinsic event types required for all loyalty programs?
Yes, intrinsic event types represent essential system actions (like registering an account or purchasing a reward) and cannot be disabled, as they are fundamental to how the Loyalty Engine operates.
Can intrinsic events be reported using the Report an event API endpoint?
No, intrinsic event types are triggered automatically by specific API commands (such as registering an account). The Report an event API endpoint is exclusively for reporting custom event types, which function separately to track client-defined actions.
Which event type or API endpoint should be used to adjust a user's points balance?
In a well-designed loyalty program, points adjustments should not be treated as standalone events. Instead, points should be adjusted as a reaction to specific user actions or events—such as making a purchase or completing a behaviour you want to incentivise.
The points adjustment itself happens through reactors that are triggered by these meaningful events. If you find yourself needing to make non-specific points adjustments frequently, whether manually or systematically, it may indicate a gap in your program design or fundamental misunderstanding of the WLL platform. The goal is to tie points adjustments to user activity rather than relying on ad-hoc changes.
While you can create a custom event type for non-specific points adjustments, it’s recommended to avoid this – but if you must, we'd advise using it sparingly and ensuring that your program properly incentivises desired user behaviours.
Last updated
Was this helpful?