# Blockchain-Based Loyalty Management System
## 2 Literature Review
### Related Work  
This section presents an analysis of the current state of the art regarding the use of blockchain in various domains and contexts associated with loyalty programs. In [13], the authors propose and describe an implemented loyalty program that is based on blockchain. The authors identified issues related to the mechanisms of customer dissatisfaction and loyalty. Afterward, they explain the solution they propose, which consists of a smart contract created in the Ethereum network [14] and capable of producing tokens. These tokens are called TECH tokens (the name given by the authors) and are similar to cryptocurrencies. TECH tokens are stored in Ethereum wallets and can be transferred between wallets to perform payments or exchange goods in the system. Since the Ethereum network requires a fee for each transaction and the cost is expressed in the ether cryptocurrency, the authors implemented and tested the system on Rinkeby, an Ethereum-compatible test network. The implementation consisted of three distinct phases. First, the smart contract is written and deployed on the blockchain. Then, the token is created according to ERC20 standards [15], and finally, the frontend is developed in React.js for user interaction. The system has integrated Web3.js as a way to allow the frontend to communicate with the blockchain. The authors in [5] propose a universal loyalty platform. Before presenting the solution, they detail how blockchain can improve a loyalty program from both the point of view of customers and companies. The proposed solution consists of an application in which customers can use points to redeem rewards, and a website for companies to interact with and manage their business. The system uses React Native and React for mobile and website frontend, respectively. The system also uses Stellar and Hyperledger Fabric Blockchains to manage users' information and assets. At the customer level, upon registration, a Stellar account is created. This account allows the user to trade any asset type, being able to exchange points between loyalty programs. At the company level, upon registration, a Stellar account is created. During the registration process, the company can choose other companies to collaborate with. Once this entire process is over, the smart contract allocated in the Hyperledger blockchain is invoked to create and connect the inherent token to that company and link it to the Stellar account. Two studies from 2019 [16; 17] aimed to explore how blockchain can impact loyalty programs and understand their relation. Both studies presented four theoretical foundations: (1) self-determination theory (SDT) [18]; (2) customer perceived value; (3) loyalty programs' design in loyalty program efficiency; and (4) blockchain application. The authors use SDT to define four dimensions of customer motivation: economy, autonomy, competence, and relatedness. To better understand the link between SDT and customer perceived value, the authors assess customers' perceived value in three domains that they proposed: economic utility, psychological self-fulfillment, and social interaction. For the last two theoretical foundations, the authors focus more on loyalty programs, specifically on design effectiveness and blockchain infrastructure. Both papers chose BubiChain as the target blockchain infrastructure, due to its success in the loyalty program market, to undertake the evaluation. They also chose an exploratory case study on a loyalty points-based system. Although the works are analogous, the depth of the study differs between them. The authors of the first paper [16] only assess the main characteristics of blockchain integration and its impact on each SDT domain. The second paper [17] evaluates the BubiChain infrastructure itself and how it works, the main elements of the loyalty points-based system, how the code is structured, and, finally, the impact of BubiChain on participation in loyalty programs.