project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

CryptoRestaurantWeek: Loyalty & Payments

Merchant and Foodie incentivized loyalty platform with Defi yield opportunities

CryptoRestaurantWeek: Loyalty & Payments

Created At

ETHOnline 2022

Project Description

At CRW we stand behind infrastructure growth of digital assets and execute creative campaigns for mass adoption of decentralized technologies. Our mission focuses on the intersection between powerful technology and its positive influence on everyday consumers. We therefore create human centered on-boarding campaigns that hit the heart… and stomach!

The main goal in this hackathon is to discover a way to incentivize dining experiences, enjoying delicious deals while settling bills with crypto currencies AND maintaining PRIVACY.

Market Problem: Legacy systems charge exorbitant fees while adding NO value to merchants.

Solution: Gamified Loyalty & Digital Payments Platform

Technical Problem:

  1. Zero Knowledge How do we ensuring that both FOODIE and RESTAURANT Merchant accounts holding crypto are kept private. When settling the restaurant bill in crypto, no matter the wallet used, how can we hide the information about owner holdings.

  2. Loyalty Point Swaps If we have an in-app non-monetary token CRW, how do we ensure this token remain a steady value only in-app. We want loyalty points to connect to off-ramps and redeemed in crypto or fiat. We also want loyalty points to swap into yielding opportunities on protocols like Aave. What is the best way to do this in the back end with the lost simple user experience?

Solution: 1] Create ERC20 CRW Loyalty Token

Non-monetary token, only to distribute to FOODIE for completing CryptoRestaurantWeek incentives, ie...settling bill in crypto, writing a review, sharing a picture of food etc... CRW, like airline miles will have a redemption process and purchasing option. FOODIES can simply pay in the loyalty token instead of their crypto. FOODIES can buy CRW with crypto or earn them. Now we their private wallets can remain private from merchants.

How it's Made

POLYGON/OPTIMISM: The CRW Loyalty Token -non-monetary layer -not to be listed on exchanges -must be given or other nft smart contract for purchase using Lens CODE: To Be deployed on Polygon Smart Contracts needed: deployed when FOODIE Makes Reservation and settles in CRYPTO deployed when FOODIE completes any incentive xxx offered by CRW ACTivatoin We can think loyalty points instead about these being nfts on LENS also like a coupon system for quick redemption. Some issues regarding design of token: We ran into different design issues regarding: The restaurants being unchecked in their duty to correctly validate whether a user has arrived to their appointment, and ultimately settled in crypto. they should get some points for simply showing up and a greater amount of points for settling in featured coin. We need to verify this by restaurant. -Perhaps until we know a better way, FOODIE can use their WORLDCOIN Badge LENS profile to send screenshot of settle bill in crypto ether scan and resturant bill - then NFT sent via lens... Also, not finding a good storage structure for appointments such that we can correctly validate reservation availability. Can we install an open table API? We found a mapping software PROXI they have a mapping element with opentable integration that we can load all restaurants participating in the ACTivation. See cryptorestaurantweek.com/dc However, how could we make this software talk to the smart contract to verify the 1] Reservation is made 2] Reservation is settled We want these to be done on chain through the FOODIE Wallet ID but again we want privacy on side of how much is in account. How many reservations completed by FOODIE is okay to show - we want to use GRAPH subgraph to query this and make a cool FOODIE Leaderboard to display and gamify the eating experience city by city and globally. Our current POC design doesn't check for restaurant capacity or availability. Also, the restaurant may forget to validate a user, or may validate users that haven't been there. These are some design issues that we encountered gave thought but have not baked in a real solutions due to time constraints. We are aware of these issues and how problematic they can be. Other Design Elements: LENS: We created a CryptoRestaurantWeek.lens profile We want to also create a FOLLOW MODULE that speaks with the CRW erc20 Token when deployed OR reads the FOODIEID NFT WALLET to see if they have participated in CRW ACTivation in any city in order to enter. Within the token gated LENS community are will be access to Delicious Deals and other initiatives the partner RESTAURANTS will offer. There will also be badges related to TOP FOODIE, TOP GIVER etc... It would be nice if we also use Graph here to automate the badging system - can Graph talk to Lens? WORLDCOIN APP We created a CryptoRestaurantWeek project in the dashboard. That is as far as we could get with time and resources. We want LENS id - of followers in CryptoRestaurantWeek.lens to have special BADGE from Worldcoin. This integrated in lens but also in the CRW Dapp. Badge will show that one account is one legitimate FOODIE RESTAURANTS will feel comfortable giving out Delicious Deals and One time use coupons, like first time percentage off to be redeemed. They do not want multiple accounts created and redeeming Delicious Deals more than once. We want to integrate in the Lens - Worldcoin connection as well as in CRW APP Login as an elevated status sign-up. Our next plan would be to determine above and take machines for opening and verifying accounts to CryptoRestaurantWeek ACTivation in Bogota - during EthBogota and Devcon. Would we have the CRW Dapp completed by then??? maybe and if not we could apply to hack again over there - still run the ACTivation but not with the full MVP in use. THE GRAPH: To create a subgraph that will query the FOODIE ID Wallets & CRW LOYALTY points system for the purpose of having a detailed CRYPTO RESTAURANT WEEK FOODIE LEADERBOARD We would download the graph cli, node and make a subgraph. We did not have time to test also considering we need user data and need more time to deploy CRW smart contract and allocate to a few FOODIE wallet accounts to start talking. How would this ZKapp speak to the CRW Foodie wallet ? using the Provider - what would be the exact flow of FOODIE ENTER RESTAURANT RESTAURANT CHECK FOODIE ID - SCAN CODE? SCAN CODE THAT LEADS TO DATA SET? ALREADY HAVE LINK TO DATA SET AND INPUT THE FOODIE WALLET TO CHECK We are no able to fully address how flow will work without more understanding of provider details and how system works overall. we would like to explore this further and see also if the full dream of ZK design for the whole experience is possible with mina. WALLETCONNECT: We will start with updating the simple website made on gitbook. We will add - wallet connect integration so that users can connect wallet and then later book reservation and receive points. www.cryptorestaurantweek.com would be where they would connect. Time constraints prevented us from experimenting in he actual implementation but it should be possible. Later we plan to make a mobile app on Flutter and also integrate WallerConnect AAVE: We want to explore how we can redeem CRW Loyalty token or LENS nft into monetary crypto that is on exchanges to then have users have options to lend-borrow and stake that crypto with provider like aave. We want an easy way for them to plug and play into earning rewards by swaping out CRW loyalty points in their wallets to these opportunities. <this would be an integration within the mobile app, we are thinking to explore further when we get to this point. We want to encourage FOODIES and MERCHANTS using CRW LOYALTY swapped coins to investment and return generating opportunities that are safe. Some implementation details on how we achieve this:

  1. user will request to deposit a determined amount of CRW-CP tokens via the mobile app and get some yields in CRW-CP tokens.
  2. the smart contract will take the request and deposit an equivalent amount (the ratio is 1 CRW-CP token = 1 USDC) of usdc in the AAVE pool. the owner of this deposit position will be the smart contract.
  3. After this step, the lending position will start to generate some yields in USDC
  4. When the user decides to withdraw his tokens, the smart contract will also close the open position in AAVE and get his staked USDC back along with the accrued interests
  5. After that, the smart contract will mint new CRW-CP tokens equivalent to the closed USDC position (staked amount + interests) and transfer them to the users.
background image mobile

Join the mailing list

Get the latest news and updates