Nevermined Subscription contracts for Solana
The objective of this repository is to provide the necessary smart contracts to enable the Nevermined Subscription protocol on the Solana blockchain. The main capabilities of the contracts are:
- Any user can register a subscription by providing the necessary information
- Every different subscription is identified by a unique identifier (tokenId)
- The attributes of each indivudual subscription are the following:
tokenId
: Unique identifier of the subscriptionowner
: Address of the user that registered the subscriptionprice
: Amount of SOL that the user is willing to pay for the subscriptioncredits
: Amount of credits that the user will receive every time the subscription is purchasedproviders
: List of accounts that are allowed to interact with the subscriptionmetadata
: Additional information about the subscription
- Any user can purchase a subscription make the payment of the price
- The user will provide the tokenId and the exact amount of SOL to be paid
- Nevermined will get a
1%
fee of the transaction - The user will receive the credits associated with the subscription
- The user can call this function multiple times allowing to accumulate credits
- The owner and the providers of the subscription can mint credits to the subscription
- The credits can be minted as a result of a purchase process or as a result of a direct minting
- The owner and the providers of the subscription can burn credits from the subscription
- The balance of credits can be be obtained by any user
- The subscription owner must be able to add providers for the subscription
- The subscription owner must be able to revoke providers from the subscription
To be defined