git.delta.rocks / unique-network / refs/commits / 307b048fa24b

difftreelog

source

doc/economic_model.md4.2 KiBsourcehistory
1# Economic Model23## Economy Goals45One of the goals of this specification is to find means to provide for network infrastructure (incentivisation of validators) and development support for NFT Parachain. Transaction fees will be used as the main source of funds. Fees will be distributed among network participants. The distribution of fees will depend on validator contribution to the network (similarly to Polkadot network) and the chosen fee structure (model).67## Summary89We are going to offer several fee models for our users. Some models will be implemented immediately, some will wait until there is a demand. 1011The fee models are setup by Collection. Every Collection has a fee model assigned to it, which determines how collection transactions are paid. Network users can choose the fee model that better suits their application. The Collection fee model can be changed later as well.1213Initially we offer 4 models for consideration:1415* User paid fees16* Pay as you go17* Prepaid plan18* Resource purchase1920## Token and Accounts2122Network Tokens are tracked via standard Balances module, which is included in NFT Parachain.2324User Account matches to user address in the network. Among other properties user Account has Balance, which will be used later on.2526## Changing Fee Model2728The dedicated module call will be added to allow updating fee structure for the collection.2930### SelectFeeModel Call3132#### Description3334Select fee model for a given collection.3536#### Permissions3738* Collection Owner39* Collection Admin4041#### Parameters4243* Collection ID44* Fee Model ID4546## User Paid Fees4748This is conventional fee model, when every Account pais for the transactions they sign and send. Transaction fee will gradually increase if the network load is higher to prevent denial of service. The same type of transaction (with the same transaction weight) will result in higher fee if previous block's weight gets close to maximum block weight. The ratio for multiplying fees will be determined empirically. The multiplication will take place until the blocks stop overpopulating, but with certain saturation. If blocks underfill, i.e. block weight is under the certain threshold, then the next block will have lower fees. The lowering will continue until blocks stop underpopulating, with some saturation.4950Each module call will have weight annotation that will determine the weight calculation for this call:5152* CreateCollection: Fixed53* ChangeCollectionOwner: Fixed54* DestroyCollection: Linear of number of items multiplied by Collection Data Size55* CreateItem: Linear of Collection Data Size56* BurnItem: Linear of Collection Data Size57* AddCollectionAdmin: Fixed58* RemoveCollectionAdmin: Fixed59* GetOwner: None60* BalanceOf: None61* Transfer: Fixed6263This model is default and will be set for each collection until collection owner decides to change it to some other model.646566### Fee Distribution6768The network owner will reserve some fixed percentage of fees, and the rest will be distributed among validators proportionally to their contribution to the network.697071## Pay As You Go7273The only difference from User Paid Fees model is that collection owner will be paying for their users. The collection owner must have enough balance on his account in order to pay for user transactions. If balances goes lower than needed, the model is temporarily switched to "User Paid Fees".747576### Fee Distribution7778Same as in User Paid Fees.798081## Prepaid Plan8283Collection Owner makes regular payments to prepay for some planned network load, i.e. some fixed number of transactions, created items, etc.848586### Fee Distribution8788Same as in User Paid Fees.899091## Resource Purchase9293Collection Owner purchases some fixed amount of network resource, which can be measured in number of users and their monthly transactions, for example. This is a one time payment. If Collection Owner decides to switch to a different fee model, the resources may be sold back to the system (with some commission).9495Received funds will be converted to DOTs and used in staking (nomination or validation), which will allow to receive the income that will pay for infrastructure and development support.9697### Fee Distribution9899Fixed percentage of staking income is distributed between validators proportionally to their contribution to the network. The rest is credited to the network owner.100