Top up via Loyalty
Overview
The Dealer loads in advance an amount into the technical account related to loyalty campaigns to be carried out on Wallet customers. The pre-loaded amount can be used to top up customers' Wallets against a conversion of loyalty points; the conversion rate loyalty points/Wallet Credit will be defined by the Dealer.
Like all other transactions, Loyalty Deposit is composed by two steps: Initialization and Confirmation/Cancellation. During the initialization phase, fees are calculated and a pending transaction is kept on the user's Wallet; finally, an asynchronous TransactionInitialized event is raised.
After that, the User can choose whether to confirm or cancel the transaction; if the transaction is cancelled, the User's pending transaction is also removed and an asynchronous TransactionCancelled event is generated. Otherwise, if the transaction is confirmed, the User's wallet balance is updated and an asynchronous TransactionConfirmed event is generated.
Sequence Diagram
We provide a detailed workflow for the loyalty deposit using the following Sequence Diagram, more details