White Paper of Subscription NFT: For Game Pass & Membership Card


Subscription NFTs is used for streaming payments by allowing payments to be made in real time, based on seconds of usage. This model enables the NFT to grant access or benefits during the payment period. Sakaba is working on a tool that allows game developers to integrate subscription NFTs without needing to write code.

For example, imagine transforming a GamePass into a subscription NFT. Players could purchase a GamePass NFT, which might also be offered as a Free Mint, depending on the business model, and activate it within the game. This grants them access to special rewards for a fee calculated per second. This system offers players the freedom to engage with the premium content as they wish, joining or leaving at any time.

In this case, due to the nature of the payment, the accumulated points obtained for accessing rewards in the free pass, which are typically seen in traditional GamePasses, might not directly apply to the rewards accessed by purchasing the premium pass. It is likely that a different set of points would be introduced, accumulated only during the GamePass NFT’s application in the game.


User Flow

STEP 0: Sakaba initializes the Membership NFT contract factory

  • Sakaba starts to deploy a new Membership NFT Contract Factory to the blockchain.
  • By executing a call to this Contract Factory, it can generate different NFT contracts for each game which would like to use Sakaba’s service.

STEP 1: Game owner or SaaS team applies new project

  • Once a game owner or SaaS team applies their new game or service project to Sakaba, Sakaba can execute the Contract Factory to generate a unique NFT contract specifically for that game or service project. In this case, we'll mark it as the green color.
  • The Contract Factory will record and store all the details of the NFT contracts it generates. For instance, it will record the game or service and its corresponding contract as key-value pairs. Additionally, it will record information about users who mint or burn NFTs through the contract. This means that our frontend and backend systems can query the on-chain data of this Contract Factory to obtain more details.

STEP 2: User starts new stream and mint the Membership Ticket

  • After announcing the game or service, the frontend will display a button labeled "Start to Play.
  • When a user clicks the button, they will execute the Superfluid contract to initiate token streaming during the subscription period. Simultaneously, the Superfluid contract will automatically mint an NFT, which serves as Proof of Subscription (PoSub, 支払い証明書).
    • Reference: _Superfluid for Web3 Games
    • Streams are represented as NFTs and can be used as:
      • Assets
      • Access to communities or features
      • Proof-of-income by the holder, to borrow against both in and out of the game
  • By holding the Proof of Subscription NFT, users can execute the aforementioned green contract to mint a rental-mechanism Membership Ticket NFT (会員チケット).
  • The end time of rental period is as same as the subscription period, that is, at the end of subscription, the rental NFT will automatically transfer back to the Rental Storage side.
  • On the other hand, the green contract, which enables users to mint the Membership Ticket NFT, will first check the user's wallet to determine whether they possess the Proof of Subscription NFT or not.

STEP 3: Game owner on SaaS team verifies the membership

  • By holding both the Proof of Subscription and Membership Ticket NFTs, users can gain access to the game or service.
  • On the other hand, the game owner or SaaS team should verify the user's on-chain data during the login process. If the user does not possess both NFTs, it indicates that they may have failed to subscribe or are outside the subscription period, and as a result, they cannot access the game or service.

STEP 4: At the ended of subscription period

  • At the end of the subscription period, the Proof of Subscription NFT will be automatically transferred to the 0x00 (null) address, also known as being burned, through the mechanism of the Superfluid contract.
  • Also, the rental Membership Ticket NFT will be transferred back to Rental Storage.
  • Subsequently, as the user's wallet no longer holds both NFTs, the user will not be able to access the game or service.

STEP 5: User restart the subscription

  • After a certain period, if a user wishes to play or use the game or service again, in other words, resubscribe to the gaming / service, they can re-execute the Superfluid contract to obtain a new Proof of Subscription NFT for the new subscription period.
  • In this scenario, the Proof of Subscription NFT will be re-minted, and the Membership Ticket NFT will be re-rented issued by the Rental Storage. With both of these NFTs, the user can re-enter the game or restart the subscription service.