ERC-7254: Token Revenue Sharing

Revenue token is a token that shares rewards for holders.


Metadata
Status: DraftStandards Track: ERCCreated: 2023-06-29
Authors
Quy Phan (@quyphandang), Quy Phan (quy.phan@cryptoviet.info)

Abstract


With the aspiration of bringing forth unique functionality and enhancing value for holders of ERC-20 tokens, our project aims to effortlessly reward token holders without necessitating users to lock, stake, or farm their tokens. Whenever the project generates profits, these profits can be distributed to the token holders.

Revenue Sharing is an extended version of ERC-20. It proposes an additional payment method for token holders.

This standard includes updating rewards for holders and allowing token holders to withdraw rewards.

Potential use cases encompass:

  • Companies distributing dividends to token holders.
  • Direct sharing of revenue derived from business activities, such as marketplaces, Automated Market Makers (AMMs), and games.

Specification


Methods

maxTokenReward

Returns max token reward.


informationOf

Returns the account information of another account with the address token and account, including: inReward, outReward and withdraw.


informationOfBatch

Returns the list account information of another account with the account, including: inReward, outReward and withdraw.


UserInformation

inReward: when user's balance decreases, inReward will be updated outReward: when user's balance increases, outReward will be updated withdraw: total amount of reward tokens withdrawn


tokenReward

Returns the list token reward address of the token.


updateReward

Updates rewardPerShare of token reward. rewardPerShare = rewardPerShare + amount / totalSupply()


viewReward

Returns the list amount of reward for an account


getReward

Gets and returns reward with list token reward.


getRewardPerShare

Returns the reward per share of token reward.


existsTokenReward

Returns the status of token reward.


Rationale


TBD

Reference Implementation


Security Considerations


Needs discussion.

Copyright


Copyright and related rights waived via CC0.