This was a tutorial I did a while back but struggled to upload, apparently there was a corrupt frame so had to re-render it.
Anyway, its not a full step by step but a run through of a pre-configured setup for a customer.
It includes a points based on ticket value system which is automatically allocated to the loyalty card entity selected for ticket on payment.
Points allocation is logged on the ticket with a state.
I added the ability to enter the ticket number in an automation flow to claim unused points. This is like at tesco they can scan your receipt bar-code and your card to allocate you points if you didnt have your card when making the original purchase.
There is a button to show the current loyalty entity point balance and its discount value. The discount is manually applied to a ticket using this button. There is limits that discount applied can only match the ticket value ie not end up being a refund.
The customer in question used a barcode scanner and printed cards with barcode for identifying the entities. Given the use of barcode scanner the ‘claim unused points’ flow was done in a way to easily use barcode scanner to scan a bar-code for ticket number/id aswell.