2 July 2018

When talking about blockchain-based projects, we usually mean cryptocurrencies and exchanges for them. However, there are many ways to apply this technology, and today we want to talk about the loyalty points system on the blockchain.

When working with customers, the majority of shops, malls, beauty salons and other service-providing companies use discount systems and accumulation of loyalty points. We analyzed the possibility of using tokens as bonus points for one of our clients.

Our goal was to implement an option to exchange clients’ bonus points (tokens) for services, sell them for fiat money or exchange them for points of other suppliers to increase the flow of the potential buyers. We called this project Ерe main function of the project - decentralized storage, transparent distribution and the bonus points exchange.

We looked into the specifics of implementing decentralized storage and distribution of bonus points based on the smart contracts for the Ethereum network. It was important to understand how to provide support for different types of tokens within a single smart contract.

We studied this issue and now can state: it is possible.

There are following possibilities inside Proof of Concept of such project:

  • A smart contract issues tokens, which we call "points".
  • A smart contract handles different types of tokens simultaneously within an intelligent bonus points ecosystem
  • Points can be issued (as tokens) and distributed to customers or burned.
  • There is an option to issue additional points and check the number of undistributed and already given ones.

Different service providers use different loyalty systems - electronic points, paper coupons, etc. Our system will let consumers who have bonus points from different suppliers exchange them or sell for Fiat.

For such types of project, we suggest using this stack of technologies:

  • Smart-contract on Solidity for the Ethereum network
  • For a smart contract API - JavaScript with the Ethereum web3.js library using the self-documented REST API
  • For developing and testing a smart-contract - Truffle framework
  • For a smart-contract management - module on NodeJS.
2 July 2018