ERC20トークンを使ってBASEの入場制限をしてみた

記事
IT・テクノロジー
会員限定グッズの販売等を想定し、ERC20トークンを使ってBASEで作ったネットショップに入場制限をかけてみました。

こちらが、トークン購入ページです。
図111.png
入会ボタンを押すと1ヵ月分のトークンが購入でき、数か月分まとめて購入することもできます。
まとめて購入した場合の画面がこちら。
図110.png
2ヵ月分購入するので、メタマスクから2 ETH送金しようとしているのが分かります。
その結果がこちら。
図112.png
トランザクションが成功すると、コントラクトからイベントを記録します。
図113.png
サーバー側でイベントを感知して、トークンを送金します。
図114.png

購入画面をみると2ヵ月分のトークンが購入できています。
図116.png

BASEのページに移動します(ネットショップの内容は遊びで作ったものなので気にしないでください)。
トークンを持っていなかった場合、ダイアログが表示され操作できなくなります。
図49.png
リンクから購入ページに移動し、トークンを購入して戻ってくるとダイアログが消えます。
図1.png

最後にトークンを購入したトランザクションが入っているブロックのタイムスタンプと比較して、1ヵ月経過していたらトークンを1ヵ月分返却します。
長くなりましたので省略しますが、購入ページで退会ボタンを押すと、自分の持っているトークンを全て返金して、返却したトークン-1ヵ月分のETHが返金されます。

ユーザー側から見た場合、ずっと離れていて久しぶりに訪問しても、返却されるトークンは1ヵ月分なので、買い過ぎて損することがなく安心して利用できると考えています。

BASEに限らず、様々なコンテンツに応用できると考えておりますが、いかがでしょうか。


サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す