# ERC-7641: Intrinsic RevShare Token

## Introduction

**ERC-7641** is an extension of the standard ERC-20 token, designed to integrate a seamless revenue-sharing mechanism directly into the token's functionality. It allows token holders to claim and redeem a proportional share of a communal revenue pool, enhancing the token's utility and promoting active participation in the ecosystem.

ERC-7641 is a core component of the [Initial Model Offering (IMO)](https://app.gitbook.com/o/rWlGmOlOvnmpt08RvxKm/s/llyHj70MVMOxu2WT7tZv/).

## Key Benefits

* **Revenue Sharing for Token Holders**: Provides a standardized method for distributing revenue among token holders, rewarding them for their participation and investment.
* **Funding for Projects**: Enables any project, including open-source initiatives, to tokenize their revenue streams, fostering sustainable development and community engagement.
* **Flexibility and Fairness**: Maintains the essential attributes of ERC-20 tokens while introducing mechanisms for fair revenue distribution and deflationary economics through token burning.

## How ERC-7641 Works

### 1. Revenue Sharing Mechanism

* **Claimable Revenue**: Token holders can periodically claim a portion of the revenue pool based on their token holdings at specific snapshots.
* **Snapshot Functionality**: Snapshots capture token balances and claimable revenue at certain points in time, ensuring accurate and fair distribution.
* **Proportional Distribution**: Revenue between snapshots is distributed proportionally to token holders, with a specified sharing ratio determining the portion allocated for claims.

### 2. Burning Mechanism

* **Token Burning**: Holders can burn their tokens to redeem a proportional share of the revenue pool, contributing to a deflationary model.
* **Redeemable Value**: The value redeemed upon burning is calculated based on the holder's share of the total token supply and the total redeemable revenue in the pool.
* **Deflationary Economics**: Reduces the total token supply over time, encouraging long-term holding.

## ERC-7641 Interfaces

The ERC-7641 standard introduces several interfaces to facilitate its functionality:

### Core Interface: `IERC7641`

Defines the primary functions for revenue sharing and token burning:

* **`claimableRevenue(address account, uint256 snapshotId)`**: Calculates the amount of ETH claimable by a token holder at a specific snapshot.
* **`claim(uint256 snapshotId)`**: Allows a token holder to claim their share of ETH based on a snapshot.
* **`snapshot()`**: Creates a new snapshot of token balances and claimable revenue, returning a unique snapshot ID.
* **`redeemableOnBurn(uint256 amount)`**: Calculates the amount of ETH redeemable upon burning a specified amount of tokens.
* **`burn(uint256 amount)`**: Burns a specified amount of tokens and redeems the corresponding share of the revenue pool.

### Optional Extension: `IERC7641AltRevToken`

An optional extension to support revenue sharing with alternative ERC-20 tokens beyond ETH:

* **`claimableERC20(address account, uint256 snapshotId, address token)`**: Calculates the amount of a specific ERC-20 token claimable by a holder at a snapshot.
* **`redeemableERC20OnBurn(uint256 amount, address token)`**: Calculates the amount of a specific ERC-20 token redeemable upon burning tokens.

## Use Cases

### Funding Open-Source Projects

ERC-7641 enables open-source projects to tokenize their revenue streams, providing sustainable funding and incentivizing contributions. By distributing Intrinsic RevShare tokens to contributors, projects can reflect involvement and share revenue proportionally.

### Initial Model Offering (IMO)

Combining ERC-7641 with the concept of an Initial Model Offering (IMO), open-source developers can conduct fundraising for new AI model development and create ongoing communities for their projects. Token holders benefit from revenue generated by the AI models, fostering a collaborative and sustainable ecosystem.

### Additional Resources

* **Reference Implementation**: [GitHub Repository](https://github.com/ora-io/imo-token-contract)
* **ERC-7641 Proposal**: [Ethereum Improvement Proposal](https://ethereum-magicians.org/t/erc-intrinsic-revshare-token/18999)
* **Related Concepts**:
  * **ERC-7007:** [**Verifiable AI-Generated Content Token**](https://app.gitbook.com/o/rWlGmOlOvnmpt08RvxKm/s/llyHj70MVMOxu2WT7tZv/~/changes/263/initial-model-offering-imo/erc-7007-verifiable-ai-generated-content-token)
  * [**Initial Model Offering (IMO)**](https://app.gitbook.com/o/rWlGmOlOvnmpt08RvxKm/s/llyHj70MVMOxu2WT7tZv/~/changes/263/initial-model-offering-imo/imo-introduction)
