From a5405106c2a5a0eee277e51f51ba33b9d419797e Mon Sep 17 00:00:00 2001 From: Akshay Date: Tue, 11 Jan 2022 11:26:02 +0100 Subject: [PATCH 01/20] Issue-#849: Update marketplace content --- content/tutorials/marketplace.md | 44 ++++++++------------------------ 1 file changed, 10 insertions(+), 34 deletions(-) diff --git a/content/tutorials/marketplace.md b/content/tutorials/marketplace.md index e40ea5a0..4f05b4df 100644 --- a/content/tutorials/marketplace.md +++ b/content/tutorials/marketplace.md @@ -3,43 +3,19 @@ title: Set Up a Marketplace description: --- -In Ocean, marketplaces and publishers are different roles. A common setup is for one organization to do both. We focus on that here. +## About marketplace -## The Steps +Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provider a web interface for accessing assets published on the chain. By default, the assets are pulled from Aquarius hosted by Ocean Protocol. To extend the existing features of the marketplace, developers can fork the marketplace. -1. Develop the first cut of the app. -1. Prepare some initial data assets. -1. Deploy to production. +By doing so, developers can: -## Develop a First Cut of the App +- Change the name of the marketplace. +- Implement their own branding, style. +- Change the source of asset information. +- Change fee address. -Here are some approaches: +## Forking marketplace -- Fork [Ocean Market](https://github.com/oceanprotocol/market) code. -- Build from [Ocean React hooks](https://github.com/oceanprotocol/react). -- Build up from [ocean.js](https://github.com/oceanprotocol/ocean.js) or [ocean.py](https://github.com/oceanprotocol/ocean.py) drivers. +To setup a marketplace follow the steps here: -## Prepare Some Initial Data Assets - -When you deploy, you'll want some initial data assets for your market to offer. - -Ocean supports several types, such as Azure and S3 storage. The [tutorials](/tutorials/) section provides more info. - -## Deploy to Production - -When developing your app, you'll likely use Barge to run all the Ocean Protocol components on your local machine. - -When it comes time to go to production, you will have to run these components: - -- Your marketplace/publisher app -- Aquarius (with Elasticsearch) -- Provider-py - -Of course, there are many other things that must be handled in production: - -- Security of the infrastructure where the software is running -- Monitoring -- Log aggregation, storage, and search -- Handling crashes or other faults - -Each of those is beyond the scope of these docs. +[Launch a blockchain-based data marketplace in under 1 hour](https://blog.oceanprotocol.com/launch-a-blockchain-based-data-marketplace-in-under-1-hour-9baa85a65ece) From 60c0c9a5eaabe0e441f0d1b7e11a78916573185f Mon Sep 17 00:00:00 2001 From: Akshay Date: Tue, 18 Jan 2022 07:31:08 +0100 Subject: [PATCH 03/20] Issue-#849: Fees --- content/tutorials/marketplace-fees.md | 16 ++++++++++++++++ data/sidebars/tutorials.yml | 2 ++ 2 files changed, 18 insertions(+) create mode 100644 content/tutorials/marketplace-fees.md diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md new file mode 100644 index 00000000..175d8bd6 --- /dev/null +++ b/content/tutorials/marketplace-fees.md @@ -0,0 +1,16 @@ +--- +title: Fees +description: The Ocean Protocol defines various fees for creating a sustainability loop. +--- + +## Path to sustainability + +Ocean Protocol aims to be a community-driven project. Through OceanDAO, the project aims at achieving decentralized governance and sustainability loop. For the project to grow and improve, the participants need to be rewarded for their contributions. The Ocean Protocol's smart contracts include a fee mechanism to maintain the sustainability loop. + +### Community fee + +### Market fee + +## Further reading + +- [The Web3 Sustainability Loop](https://blog.oceanprotocol.com/the-web3-sustainability-loop-b2a4097a36e) diff --git a/data/sidebars/tutorials.yml b/data/sidebars/tutorials.yml index 75280355..8325e1e8 100644 --- a/data/sidebars/tutorials.yml +++ b/data/sidebars/tutorials.yml @@ -34,6 +34,8 @@ items: - title: Set Up a Marketplace link: /tutorials/marketplace/ + - title: Fees + link: /tutorials/marketplace-fees/ - group: Compute-to-Data items: From 9a27067f7a72ffa9bbb981984d42b5b12c01c418 Mon Sep 17 00:00:00 2001 From: Akshay Date: Mon, 14 Mar 2022 23:16:11 +0100 Subject: [PATCH 04/20] Issue-#913: Add content on fees --- content/tutorials/marketplace-fees.md | 47 +++++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 175d8bd6..1b69a6dc 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -7,9 +7,52 @@ description: The Ocean Protocol defines various fees for creating a sustainabili Ocean Protocol aims to be a community-driven project. Through OceanDAO, the project aims at achieving decentralized governance and sustainability loop. For the project to grow and improve, the participants need to be rewarded for their contributions. The Ocean Protocol's smart contracts include a fee mechanism to maintain the sustainability loop. -### Community fee +## Fee types -### Market fee +### Swap fee + +Swap fees are collected whenever someone swaps a datatoken for basetoken (e.g., OCEAN) or basetoken for datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange. +These are the fees that are applied whenever a user swaps basetoken or datatoken: + +- Publisher Marketplace swap fee +- Consumer Marketplace swap fee +- Provider Consumption Fees +- [Ocean Community Fee](#ocean-community-fee) + +### Publish fee + +Publish fees will be charged to a publisher when they publish an asset. + +Currently, no fees are applicable in Ocean's default marketplace. However, it is possible to charge a publish fee in the custom marketplace by adding an extra transaction in the publish flow. + +Based on the use case of the marketplace, the marketplace owner can decide if this fee should be charged or not. + +### Consume fee + +Consume fee is charged when a user holding datatoken exchanges it for a compute service, downloading a data asset or an algorithm. + +The following fees apply to the consumption of data assets as a part of Consume fee: + +- Consume Market Consumption Fee +- Publisher Market Consumption Fee +- Provider Consumption Fees +- [Ocean Community Fee](#ocean-community-fee) + +### Ocean Community fee + +Ocean's smart contract collects the **Ocean Community fee** during a swap operation. These fees are reinvested in community projects via Ocean DAO and other initiatives. Currently. This fee is set to 0 (as long as either Ocean or H20 are used as the base token in the market) in the smart contract but can be updated by the Ocean Protocol foundation. + +Whereas a fee of 0.1% is applicable on all swaps using another token as the base token. + +### Provider fee + +Provider is a component of Ocean Protocol's ecosystem which facilitates data consumption, starting compute jobs, encryption of DDOs, and decryption of DDOs. Provider also validates if the user can access a particular data asset or service. To know more about Provider, click here. + +Provider fees are paid to the individual or organization running their Provider instance whenever a user consumes a data asset or swaps a datatoken for a basetoken. These fees can be set to an absolute amount, and the receiver can also decide which token to receive the fees in - they don't have to be in the same currency used in the consuming market. + +Provider fee can also be used to charge for computing resources. Based on the compute resources needed to run an algorithm in the Compute-to-Data environment, a consumer can choose the amount of pay according to their needs. + +This fee incentivizes individuals and organizations to run their provider instances and charge consumers according to resource usage. ## Further reading From b16855b55e1202e27ddd5b1cfebd2e7e68c9b668 Mon Sep 17 00:00:00 2001 From: Akshay Date: Tue, 15 Mar 2022 10:27:36 +0100 Subject: [PATCH 05/20] Fix codeclimate issue --- src/templates/RestApi.jsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/templates/RestApi.jsx b/src/templates/RestApi.jsx index 6caaed56..5b458a41 100644 --- a/src/templates/RestApi.jsx +++ b/src/templates/RestApi.jsx @@ -30,6 +30,7 @@ export default function RestApiDoc({ location, pageContext }) {
From 0353aaf523a097d9ddf6374a999291137514dba2 Mon Sep 17 00:00:00 2001 From: Akshay Date: Wed, 23 Mar 2022 17:21:31 +0100 Subject: [PATCH 06/20] Issue:#849: Add table for fees --- content/tutorials/marketplace-fees.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 1b69a6dc..efd45a6a 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -54,6 +54,31 @@ Provider fee can also be used to charge for computing resources. Based on the co This fee incentivizes individuals and organizations to run their provider instances and charge consumers according to resource usage. +## Fee values + +| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | +| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | +| publishMarket: Pools | Set in market config, by OPF Value = 0 (agreed Feb 28 by T, A, Mihai, Matthias, Ana) | Set in market config, by publishMarket | +| publishMarket: FixedRate | Set in market config, by OPF Value = 0 (agreed etc.) | SSet in market config, by publishMarket | +| consumeMarket: Pools | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by consumeMarket | +| consumeMarket: FixedRate: ERC20Template | Hardcoded to 0 in contract | | +| consumeMarket: FixedRate: EnterpriseTemplate | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by consumeMarket | +| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | OPF gov can update in smart contract Value = 0.1% (agreed etc.) | | +| Ocean Community: Pools & FixedRate: other basetoken | OPF gov can update in smart contract Value = 0.2% (agreed etc.) | | +| Pool Liquidity Provider (LP): Pools only | Default 1%; Set by pool creator on contract deployment Min allowed (in contract) = 0.001% Min allowed (in Ocean Market) = 0.1% Max allowed (in contract) = 10% Min allowed (in Ocean Market) = 10% | | +| Publish Fees | | | +| (no publish fees) | - | - | +| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | +| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by PublishMarket | +| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by ConsumeMarket | +| Ocean Community - Fee = fixed price in DT | Goal: to avoid wash consume in DF, assuming APY < 125%) OPF gov can update Value = 0.03 DT (agreed etc.) for all initial templates | | +| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | +| Token in which fee is charged: PROVIDER_FEE_TOKEN | OCEAN | E.g. USDC | +| Download: COST_PER_MB | Set in Provider envvars, by OPF Value = 0 (agreed etc.) | Set in Provider envvars, by 3rd party running Provider | +| Compute: COST_PER_MIN | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 60 secs max Value = 0 (agreed etc) | Set in OperatorEngine envvars, by 3rd party running Provider | +| Compute: COST_PER_MIN | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 1 h max Value = 1.0 OCEAN / min (agreed etc) (high cost incentivizes serious people to run their own provider) | Set in OperatorEngine envvars, by 3rd party running Provider | +| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | + ## Further reading - [The Web3 Sustainability Loop](https://blog.oceanprotocol.com/the-web3-sustainability-loop-b2a4097a36e) From 04c80bf62e29305dd69c124da217e19f74a8a184 Mon Sep 17 00:00:00 2001 From: Akshay Date: Wed, 23 Mar 2022 18:34:18 +0100 Subject: [PATCH 07/20] Issue-#849: Fix _ issues --- content/tutorials/marketplace-fees.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index efd45a6a..92e6ccb2 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -73,10 +73,10 @@ This fee incentivizes individuals and organizations to run their provider instan | consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by ConsumeMarket | | Ocean Community - Fee = fixed price in DT | Goal: to avoid wash consume in DF, assuming APY < 125%) OPF gov can update Value = 0.03 DT (agreed etc.) for all initial templates | | | Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | -| Token in which fee is charged: PROVIDER_FEE_TOKEN | OCEAN | E.g. USDC | +| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | | Download: COST_PER_MB | Set in Provider envvars, by OPF Value = 0 (agreed etc.) | Set in Provider envvars, by 3rd party running Provider | -| Compute: COST_PER_MIN | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 60 secs max Value = 0 (agreed etc) | Set in OperatorEngine envvars, by 3rd party running Provider | -| Compute: COST_PER_MIN | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 1 h max Value = 1.0 OCEAN / min (agreed etc) (high cost incentivizes serious people to run their own provider) | Set in OperatorEngine envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 60 secs max Value = 0 (agreed etc) | Set in OperatorEngine envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 1 h max Value = 1.0 OCEAN / min (agreed etc) (high cost incentivizes serious people to run their own provider) | Set in OperatorEngine envvars, by 3rd party running Provider | | Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | ## Further reading From 37842b23521419aaaf70c92660444c8091e2b39c Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 27 Mar 2022 21:26:05 +0200 Subject: [PATCH 08/20] Issue:#849: Fees doc --- content/tutorials/marketplace-fees.md | 54 +++++++++++++-------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 92e6ccb2..bb49b597 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -5,7 +5,7 @@ description: The Ocean Protocol defines various fees for creating a sustainabili ## Path to sustainability -Ocean Protocol aims to be a community-driven project. Through OceanDAO, the project aims at achieving decentralized governance and sustainability loop. For the project to grow and improve, the participants need to be rewarded for their contributions. The Ocean Protocol's smart contracts include a fee mechanism to maintain the sustainability loop. +Ocean Protocol aims to be a community-driven project. Through OceanDAO, the project aims at achieving decentralized governance and sustainability loop. For the project to grow and improve, the participants are rewarded for their contributions. The Ocean Protocol's smart contracts include a fee mechanism to maintain the sustainability loop. ## Fee types @@ -23,7 +23,7 @@ These are the fees that are applied whenever a user swaps basetoken or datatoken Publish fees will be charged to a publisher when they publish an asset. -Currently, no fees are applicable in Ocean's default marketplace. However, it is possible to charge a publish fee in the custom marketplace by adding an extra transaction in the publish flow. +Currently, no fees are applicable in Ocean's default marketplace. However, it is possible to charge a publishing fee in the custom marketplace by adding an extra transaction in the publish flow. Based on the use case of the marketplace, the marketplace owner can decide if this fee should be charged or not. @@ -40,44 +40,44 @@ The following fees apply to the consumption of data assets as a part of Consume ### Ocean Community fee -Ocean's smart contract collects the **Ocean Community fee** during a swap operation. These fees are reinvested in community projects via Ocean DAO and other initiatives. Currently. This fee is set to 0 (as long as either Ocean or H20 are used as the base token in the market) in the smart contract but can be updated by the Ocean Protocol foundation. +Ocean's smart contract collects the **Ocean Community fee** during a swap operation. These fees are reinvested in community projects via Ocean DAO and other initiatives. Currently, this fee is set to 0 (as long as either Ocean or H20 are used as the base token in the market) in the smart contract but can be updated by the Ocean Protocol foundation. Whereas a fee of 0.1% is applicable on all swaps using another token as the base token. ### Provider fee -Provider is a component of Ocean Protocol's ecosystem which facilitates data consumption, starting compute jobs, encryption of DDOs, and decryption of DDOs. Provider also validates if the user can access a particular data asset or service. To know more about Provider, click here. +Provider is a component of Ocean Protocol's ecosystem which facilitates data consumption, starts compute jobs, encrypts DDOs, and decrypts DDOs. Provider also validates if the user can access a particular data asset or service. To know more about Provider, click [here](https://github.com/oceanprotocol/provider). Provider fees are paid to the individual or organization running their Provider instance whenever a user consumes a data asset or swaps a datatoken for a basetoken. These fees can be set to an absolute amount, and the receiver can also decide which token to receive the fees in - they don't have to be in the same currency used in the consuming market. -Provider fee can also be used to charge for computing resources. Based on the compute resources needed to run an algorithm in the Compute-to-Data environment, a consumer can choose the amount of pay according to their needs. +Provider fee can also be used to charge for computing resources. Based on the compute resources needed to run an algorithm in the Compute-to-Data environment, a consumer can choose the amount to pay according to their needs. This fee incentivizes individuals and organizations to run their provider instances and charge consumers according to resource usage. ## Fee values -| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | -| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | -| publishMarket: Pools | Set in market config, by OPF Value = 0 (agreed Feb 28 by T, A, Mihai, Matthias, Ana) | Set in market config, by publishMarket | -| publishMarket: FixedRate | Set in market config, by OPF Value = 0 (agreed etc.) | SSet in market config, by publishMarket | -| consumeMarket: Pools | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by consumeMarket | -| consumeMarket: FixedRate: ERC20Template | Hardcoded to 0 in contract | | -| consumeMarket: FixedRate: EnterpriseTemplate | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by consumeMarket | -| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | OPF gov can update in smart contract Value = 0.1% (agreed etc.) | | -| Ocean Community: Pools & FixedRate: other basetoken | OPF gov can update in smart contract Value = 0.2% (agreed etc.) | | -| Pool Liquidity Provider (LP): Pools only | Default 1%; Set by pool creator on contract deployment Min allowed (in contract) = 0.001% Min allowed (in Ocean Market) = 0.1% Max allowed (in contract) = 10% Min allowed (in Ocean Market) = 10% | | -| Publish Fees | | | -| (no publish fees) | - | - | -| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | -| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by PublishMarket | -| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | Set in market config, by OPF Value = 0 (agreed etc.) | Set in market config, by ConsumeMarket | -| Ocean Community - Fee = fixed price in DT | Goal: to avoid wash consume in DF, assuming APY < 125%) OPF gov can update Value = 0.03 DT (agreed etc.) for all initial templates | | -| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | -| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | -| Download: COST_PER_MB | Set in Provider envvars, by OPF Value = 0 (agreed etc.) | Set in Provider envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 60 secs max Value = 0 (agreed etc) | Set in OperatorEngine envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 1 h max Value = 1.0 OCEAN / min (agreed etc) (high cost incentivizes serious people to run their own provider) | Set in OperatorEngine envvars, by 3rd party running Provider | -| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | +| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | +| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------ | +| publishMarket: Pools | Set in market config, by OPF Value = 0 | Set in the market config, by the publishing market | +| publishMarket: FixedRate | Set in market config, by OPF Value = 0 | Set in the market config, by the publishing market | +| consumeMarket: Pools | Set in market config, by OPF Value = 0 | Set in market config, by consumeMarket | +| consumeMarket: FixedRate: ERC20Template | Hardcoded to 0 in contract | | +| consumeMarket: FixedRate: EnterpriseTemplate | Set in market config, by OPF Value = 0 | Set in market config, by consumeMarket | +| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | OPF gov can update in smart contract Value = 0.1% | | +| Ocean Community: Pools & FixedRate: other basetoken | OPF gov can update in smart contract Value = 0.2% | | +| Pool Liquidity Provider (LP): Pools only | Default 1%; Set by pool creator on contract deployment Min allowed (in contract) = 0.001% Min allowed (in Ocean Market) = 0.1% Max allowed (in contract) = 10% Min allowed (in Ocean Market) = 10% | | +| Publish Fees | | | +| (no publish fees) | - | - | +| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | +| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | Set in market config, by OPF Value = 0 | Set in market config, by PublishMarket | +| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | Set in market config, by OPF Value = 0 | Set in market config, by ConsumeMarket | +| Ocean Community - Fee = fixed price in DT | Goal: to avoid wash consume in DF, assuming APY < 125%) OPF gov can update Value = 0.03 DT for all initial templates | | +| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | +| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | +| Download: COST_PER_MB | Set in Provider envvars, by OPF Value = 0 | Set in Provider envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 60 secs max Value = 0 | Set in OperatorEngine envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 1 h max Value = 1.0 OCEAN / min (high cost incentivizes serious people to run their own provider) | Set in OperatorEngine envvars, by 3rd party running Provider | +| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | ## Further reading From 73a10a79abca9a1238dbdadb9839b3b697b1fc8c Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 27 Mar 2022 21:28:02 +0200 Subject: [PATCH 09/20] Issue:#849: Fees doc --- content/tutorials/marketplace-fees.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index bb49b597..79d4e831 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -5,7 +5,7 @@ description: The Ocean Protocol defines various fees for creating a sustainabili ## Path to sustainability -Ocean Protocol aims to be a community-driven project. Through OceanDAO, the project aims at achieving decentralized governance and sustainability loop. For the project to grow and improve, the participants are rewarded for their contributions. The Ocean Protocol's smart contracts include a fee mechanism to maintain the sustainability loop. +Ocean Protocol is a community-driven project. Through OceanDAO, the project aims at achieving decentralized governance and sustainability loop. For the project to grow and improve, the participants are rewarded for their contributions. The Ocean Protocol's smart contracts include a fee mechanism to maintain the sustainability loop. ## Fee types From a5e3e561d7eb7d962ba62bc996f515886471e6dc Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 27 Mar 2022 21:31:27 +0200 Subject: [PATCH 10/20] Issue:#849: Marketplace doc --- content/tutorials/marketplace.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/tutorials/marketplace.md b/content/tutorials/marketplace.md index 4f05b4df..2ae74d32 100644 --- a/content/tutorials/marketplace.md +++ b/content/tutorials/marketplace.md @@ -9,10 +9,10 @@ Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provider a web By doing so, developers can: -- Change the name of the marketplace. +- Change the source of the asset information. - Implement their own branding, style. - Change the source of asset information. -- Change fee address. +- Customise the fees ## Forking marketplace From 7db90f4b77f26ae6865cdee9ea2c141b2b2bfc41 Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 27 Mar 2022 21:37:32 +0200 Subject: [PATCH 11/20] Issue:#849: Marketplace doc --- content/tutorials/marketplace.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/marketplace.md b/content/tutorials/marketplace.md index 2ae74d32..2c55196d 100644 --- a/content/tutorials/marketplace.md +++ b/content/tutorials/marketplace.md @@ -5,7 +5,7 @@ description: ## About marketplace -Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provider a web interface for accessing assets published on the chain. By default, the assets are pulled from Aquarius hosted by Ocean Protocol. To extend the existing features of the marketplace, developers can fork the marketplace. +Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provides a web interface for accessing assets published on the chain. By default, the metadata of the assets are pulled from Aquarius hosted by Ocean Protocol. To extend the existing features of the marketplace, developers can fork the marketplace. By doing so, developers can: From a16b18cfa662cd3011fb1b0c3398c89fd4b81efb Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 27 Mar 2022 21:41:26 +0200 Subject: [PATCH 12/20] Issue:#849: Marketplace doc --- content/tutorials/marketplace.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/tutorials/marketplace.md b/content/tutorials/marketplace.md index 2c55196d..cd61c1cf 100644 --- a/content/tutorials/marketplace.md +++ b/content/tutorials/marketplace.md @@ -9,9 +9,9 @@ Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provides a web By doing so, developers can: +- Change the name of the marketplace. +- Implement their own branding and style. - Change the source of the asset information. -- Implement their own branding, style. -- Change the source of asset information. - Customise the fees ## Forking marketplace From 361a7b44d7548ae98aa2b7622831eaae1c9e302b Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 27 Mar 2022 21:51:38 +0200 Subject: [PATCH 13/20] Issue:#849: Fees doc --- content/tutorials/marketplace-fees.md | 44 +++++++++++++-------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 79d4e831..4f4b0aa6 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -56,28 +56,28 @@ This fee incentivizes individuals and organizations to run their provider instan ## Fee values -| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | -| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------ | -| publishMarket: Pools | Set in market config, by OPF Value = 0 | Set in the market config, by the publishing market | -| publishMarket: FixedRate | Set in market config, by OPF Value = 0 | Set in the market config, by the publishing market | -| consumeMarket: Pools | Set in market config, by OPF Value = 0 | Set in market config, by consumeMarket | -| consumeMarket: FixedRate: ERC20Template | Hardcoded to 0 in contract | | -| consumeMarket: FixedRate: EnterpriseTemplate | Set in market config, by OPF Value = 0 | Set in market config, by consumeMarket | -| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | OPF gov can update in smart contract Value = 0.1% | | -| Ocean Community: Pools & FixedRate: other basetoken | OPF gov can update in smart contract Value = 0.2% | | -| Pool Liquidity Provider (LP): Pools only | Default 1%; Set by pool creator on contract deployment Min allowed (in contract) = 0.001% Min allowed (in Ocean Market) = 0.1% Max allowed (in contract) = 10% Min allowed (in Ocean Market) = 10% | | -| Publish Fees | | | -| (no publish fees) | - | - | -| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | -| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | Set in market config, by OPF Value = 0 | Set in market config, by PublishMarket | -| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | Set in market config, by OPF Value = 0 | Set in market config, by ConsumeMarket | -| Ocean Community - Fee = fixed price in DT | Goal: to avoid wash consume in DF, assuming APY < 125%) OPF gov can update Value = 0.03 DT for all initial templates | | -| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | -| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | -| Download: COST_PER_MB | Set in Provider envvars, by OPF Value = 0 | Set in Provider envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 60 secs max Value = 0 | Set in OperatorEngine envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | Set in OperatorEngine envvars, by OPF OPF Provider hardware setup: 1 cpu, 1 h max Value = 1.0 OCEAN / min (high cost incentivizes serious people to run their own provider) | Set in OperatorEngine envvars, by 3rd party running Provider | -| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | +| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | +| --------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | +| publishMarket: Pools | 0 | Set in the market config, by the publishing market | +| publishMarket: FixedRate | 0 | Set in the market config, by the publishing market | +| consumeMarket: Pools | 0 | Set in market config, by consumeMarket | +| consumeMarket: FixedRate: ERC20Template | 0 | | +| consumeMarket: FixedRate: EnterpriseTemplate | 0 | Set in market config, by consumeMarket | +| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | 0.1% | | +| Ocean Community: Pools & FixedRate: other basetoken | 0.2% | | +| Pool Liquidity Provider (LP): Pools only | 1% and then the max and min values | | +| Publish Fees | | | +| (no publish fees) | - | - | +| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | +| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by PublishMarket | +| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by ConsumeMarket | +| Ocean Community - Fee = fixed price in DT | Goal: to avoid wash consume in DF, assuming APY < 125%) OPF gov can update Value = 0.03 DT for all initial templates | | +| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | +| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | +| Download: COST_PER_MB | 0 | Set in Provider envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | 0 | Set in OperatorEngine envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | 1.0 OCEAN/min | Set in OperatorEngine envvars, by 3rd party running Provider | +| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | ## Further reading From 2a717c3ccc70f74b8ced3ae3e6d8d5e572b7b8de Mon Sep 17 00:00:00 2001 From: Akshay Date: Sun, 27 Mar 2022 22:04:02 +0200 Subject: [PATCH 14/20] Issue:#849: Fees doc --- content/tutorials/marketplace-fees.md | 44 +++++++++++++-------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 4f4b0aa6..e4b6c1f5 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -56,28 +56,28 @@ This fee incentivizes individuals and organizations to run their provider instan ## Fee values -| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | -| --------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | -| publishMarket: Pools | 0 | Set in the market config, by the publishing market | -| publishMarket: FixedRate | 0 | Set in the market config, by the publishing market | -| consumeMarket: Pools | 0 | Set in market config, by consumeMarket | -| consumeMarket: FixedRate: ERC20Template | 0 | | -| consumeMarket: FixedRate: EnterpriseTemplate | 0 | Set in market config, by consumeMarket | -| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | 0.1% | | -| Ocean Community: Pools & FixedRate: other basetoken | 0.2% | | -| Pool Liquidity Provider (LP): Pools only | 1% and then the max and min values | | -| Publish Fees | | | -| (no publish fees) | - | - | -| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | -| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by PublishMarket | -| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by ConsumeMarket | -| Ocean Community - Fee = fixed price in DT | Goal: to avoid wash consume in DF, assuming APY < 125%) OPF gov can update Value = 0.03 DT for all initial templates | | -| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | -| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | -| Download: COST_PER_MB | 0 | Set in Provider envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | 0 | Set in OperatorEngine envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | 1.0 OCEAN/min | Set in OperatorEngine envvars, by 3rd party running Provider | -| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | +| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | +| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------ | +| publishMarket: Pools | 0 | Set in the market config, by the publishing market | +| publishMarket: FixedRate | 0 | Set in the market config, by the publishing market | +| consumeMarket: Pools | 0 | Set in market config, by consumeMarket | +| consumeMarket: FixedRate: ERC20Template | 0 | | +| consumeMarket: FixedRate: EnterpriseTemplate | 0 | Set in market config, by consumeMarket | +| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | 0.1% | | +| Ocean Community: Pools & FixedRate: other basetoken | 0.2% | | +| Pool Liquidity Provider (LP): Pools only | 1% and then the max and min values | | +| Publish Fees | | | +| (no publish fees) | - | - | +| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | +| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by PublishMarket | +| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by ConsumeMarket | +| Ocean Community - Fee = fixed price in DT | 0.03 DT | | +| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | +| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | +| Download: COST_PER_MB | 0 | Set in Provider envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | 0 | Set in OperatorEngine envvars, by 3rd party running Provider | +| Compute: `COST_PER_MIN` | 1.0 OCEAN/min | Set in OperatorEngine envvars, by 3rd party running Provider | +| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | ## Further reading From d3abe243c50e873f9ffaefe460778cf0c3b4d400 Mon Sep 17 00:00:00 2001 From: Ana Loznianu Date: Mon, 28 Mar 2022 12:52:29 +0300 Subject: [PATCH 15/20] Updated "Fee values" table and minor change on the "About marketplace" section --- content/tutorials/marketplace-fees.md | 39 +++++++++++++-------------- content/tutorials/marketplace.md | 2 +- 2 files changed, 20 insertions(+), 21 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index e4b6c1f5..6e377de7 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -56,28 +56,27 @@ This fee incentivizes individuals and organizations to run their provider instan ## Fee values -| Swap Fees (Fixed Price or Auto) | Value in Ocean Market, using any Provider | Value in Other Markets | +| Swap Fees | Value in Ocean Market, using any Provider | Value in Other Markets | | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------ | -| publishMarket: Pools | 0 | Set in the market config, by the publishing market | -| publishMarket: FixedRate | 0 | Set in the market config, by the publishing market | -| consumeMarket: Pools | 0 | Set in market config, by consumeMarket | -| consumeMarket: FixedRate: ERC20Template | 0 | | -| consumeMarket: FixedRate: EnterpriseTemplate | 0 | Set in market config, by consumeMarket | -| Ocean Community: Pools & FixedRate: basetoken is OCEAN, H2O, .. (“approved token”) | 0.1% | | -| Ocean Community: Pools & FixedRate: other basetoken | 0.2% | | -| Pool Liquidity Provider (LP): Pools only | 1% and then the max and min values | | -| Publish Fees | | | -| (no publish fees) | - | - | -| Order Fees (taken on order/consume) The consumer has 1.0 datatokens, they use it to get access to the dataset. | | | -| publishMarket - Fee is an absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by PublishMarket | -| consumeMarket - Fee is an absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by ConsumeMarket | -| Ocean Community - Fee = fixed price in DT | 0.03 DT | | -| Ocean Provider Fees | OPF-run Provider | 3rd party-run Provider | +| publishMarket: Pools | 0% | Set in the market config, by the publishing market. | +| publishMarket: FixedRate | 0% | Set in the market config, by the publishing market. | +| consumeMarket: Pools | 0% | Set in market config, by the consuming market. | +| consumeMarket: FixedRate
ERC20Template | 0% | 0% | +| consumeMarket: FixedRate
EnterpriseTemplate | 0% | Set in market config, by the consuming market. | +| Ocean Community: Pools & FixedRate
OCEAN, H2O as basetoken | 0.1% | 0.1% | +| Ocean Community: Pools & FixedRate
other basetoken | 0.2% | 0.2% | +| Pool Liquidity Provider (LP) | 1% | Set by the pool creator on contract deployment.
Min = 0.001%(contract) & 0.1%(market)
Max = 10%(contract & market) | +| Publish Fees | 0% | 0% | +| Order Fees
The consumer has 1.0 datatokens, they use it to get access to the dataset.
| | | +| publishMarket
Absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by the publishing market. | +| consumeMarket
Absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by the consuming market. | +| Ocean Community
Fixed price in DT | 0.03 DT | 0.03 DT | +| Ocean Provider Fees | OPF Provider | 3rd party Provider | | Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | -| Download: COST_PER_MB | 0 | Set in Provider envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | 0 | Set in OperatorEngine envvars, by 3rd party running Provider | -| Compute: `COST_PER_MIN` | 1.0 OCEAN/min | Set in OperatorEngine envvars, by 3rd party running Provider | -| Ocean Community (percent from above) | OPF gov can update in smart contract 0% of Provider fee | | +| Download: `COST_PER_MB` | 0 | Set in Provider envvars. | +| Compute: `COST_PER_MIN` | 0 | Set in OperatorEngine envvars. | +| Compute: `COST_PER_MIN` | 1.0 OCEAN/min | Set in OperatorEngine envvars. | +| Ocean Community | 0% of the Provider fee | 0% of the Provider fee | ## Further reading diff --git a/content/tutorials/marketplace.md b/content/tutorials/marketplace.md index cd61c1cf..89359c1e 100644 --- a/content/tutorials/marketplace.md +++ b/content/tutorials/marketplace.md @@ -5,7 +5,7 @@ description: ## About marketplace -Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provides a web interface for accessing assets published on the chain. By default, the metadata of the assets are pulled from Aquarius hosted by Ocean Protocol. To extend the existing features of the marketplace, developers can fork the marketplace. +Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provides a web interface for accessing assets published on the chain. By default, assets metadata is pulled from Aquarius, component hosted by Ocean Protocol. To extend the existing features of the marketplace, developers can fork the marketplace. By doing so, developers can: From 069a20b68fc645414d7a78dcf6a2a642950eee44 Mon Sep 17 00:00:00 2001 From: Ana Loznianu Date: Mon, 28 Mar 2022 13:45:10 +0300 Subject: [PATCH 16/20] Added environment to the compute: cost_per_min --- content/tutorials/marketplace-fees.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 6e377de7..e20988d2 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -74,8 +74,8 @@ This fee incentivizes individuals and organizations to run their provider instan | Ocean Provider Fees | OPF Provider | 3rd party Provider | | Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | | Download: `COST_PER_MB` | 0 | Set in Provider envvars. | -| Compute: `COST_PER_MIN` | 0 | Set in OperatorEngine envvars. | -| Compute: `COST_PER_MIN` | 1.0 OCEAN/min | Set in OperatorEngine envvars. | +| Compute: `COST_PER_MIN`
Environment: 1 CPU, 60 secs max | 0 | Set in OperatorEngine envvars. | +| Compute: `COST_PER_MIN`
Environment: 1 CPU, 1 hour max | 1.0 OCEAN/min | Set in OperatorEngine envvars. | | Ocean Community | 0% of the Provider fee | 0% of the Provider fee | ## Further reading From ac937436fb909c1883ebef903bbef2c44d9838e2 Mon Sep 17 00:00:00 2001 From: Ana Loznianu Date: Tue, 29 Mar 2022 17:55:22 +0300 Subject: [PATCH 17/20] Updated fees table with min and max values, adjuted the UI of the table and changed "basetoken" to "base token" --- content/tutorials/marketplace-fees.md | 52 +++++++++++++-------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index e20988d2..56667abb 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -11,8 +11,8 @@ Ocean Protocol is a community-driven project. Through OceanDAO, the project aims ### Swap fee -Swap fees are collected whenever someone swaps a datatoken for basetoken (e.g., OCEAN) or basetoken for datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange. -These are the fees that are applied whenever a user swaps basetoken or datatoken: +Swap fees are collected whenever someone swaps a datatoken for base token (e.g., OCEAN) or base token for datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange. +These are the fees that are applied whenever a user swaps base token or datatoken: - Publisher Marketplace swap fee - Consumer Marketplace swap fee @@ -40,15 +40,15 @@ The following fees apply to the consumption of data assets as a part of Consume ### Ocean Community fee -Ocean's smart contract collects the **Ocean Community fee** during a swap operation. These fees are reinvested in community projects via Ocean DAO and other initiatives. Currently, this fee is set to 0 (as long as either Ocean or H20 are used as the base token in the market) in the smart contract but can be updated by the Ocean Protocol foundation. +Ocean's smart contract collects the **Ocean Community fee** during a swap operation. These fees are reinvested in community projects via Ocean DAO and other initiatives. Currently, this fee is set to 0.1% (as long as either Ocean or H20 are used as the base token in the market) in the smart contract but can be updated by the Ocean Protocol foundation. -Whereas a fee of 0.1% is applicable on all swaps using another token as the base token. +Whereas a fee of 0.2% is applicable on all swaps using another token as the base token. ### Provider fee Provider is a component of Ocean Protocol's ecosystem which facilitates data consumption, starts compute jobs, encrypts DDOs, and decrypts DDOs. Provider also validates if the user can access a particular data asset or service. To know more about Provider, click [here](https://github.com/oceanprotocol/provider). -Provider fees are paid to the individual or organization running their Provider instance whenever a user consumes a data asset or swaps a datatoken for a basetoken. These fees can be set to an absolute amount, and the receiver can also decide which token to receive the fees in - they don't have to be in the same currency used in the consuming market. +Provider fees are paid to the individual or organization running their Provider instance whenever a user consumes a data asset or swaps a datatoken for a base token. These fees can be set to an absolute amount, and the receiver can also decide which token to receive the fees in - they don't have to be in the same currency used in the consuming market. Provider fee can also be used to charge for computing resources. Based on the compute resources needed to run an algorithm in the Compute-to-Data environment, a consumer can choose the amount to pay according to their needs. @@ -56,27 +56,27 @@ This fee incentivizes individuals and organizations to run their provider instan ## Fee values -| Swap Fees | Value in Ocean Market, using any Provider | Value in Other Markets | -| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------ | -| publishMarket: Pools | 0% | Set in the market config, by the publishing market. | -| publishMarket: FixedRate | 0% | Set in the market config, by the publishing market. | -| consumeMarket: Pools | 0% | Set in market config, by the consuming market. | -| consumeMarket: FixedRate
ERC20Template | 0% | 0% | -| consumeMarket: FixedRate
EnterpriseTemplate | 0% | Set in market config, by the consuming market. | -| Ocean Community: Pools & FixedRate
OCEAN, H2O as basetoken | 0.1% | 0.1% | -| Ocean Community: Pools & FixedRate
other basetoken | 0.2% | 0.2% | -| Pool Liquidity Provider (LP) | 1% | Set by the pool creator on contract deployment.
Min = 0.001%(contract) & 0.1%(market)
Max = 10%(contract & market) | -| Publish Fees | 0% | 0% | -| Order Fees
The consumer has 1.0 datatokens, they use it to get access to the dataset.
| | | -| publishMarket
Absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by the publishing market. | -| consumeMarket
Absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by the consuming market. | -| Ocean Community
Fixed price in DT | 0.03 DT | 0.03 DT | -| Ocean Provider Fees | OPF Provider | 3rd party Provider | -| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | -| Download: `COST_PER_MB` | 0 | Set in Provider envvars. | -| Compute: `COST_PER_MIN`
Environment: 1 CPU, 60 secs max | 0 | Set in OperatorEngine envvars. | -| Compute: `COST_PER_MIN`
Environment: 1 CPU, 1 hour max | 1.0 OCEAN/min | Set in OperatorEngine envvars. | -| Ocean Community | 0% of the Provider fee | 0% of the Provider fee | +| Swap Fees | Value in Ocean Market, using any Provider | Value in Other Markets | +| :------------------------------------------------------------ | :----------------------------------------:| :----------------------------------------------------------------------------------------------------------------------------------------------- | +| publishMarket: Pools | 0% | Set in the market config, by the publishing market.
Min = 0.001%
Max = 10% | +| publishMarket: FixedRate | 0% | Set in the market config, by the publishing market.
Min = 0.001%
Max = 50% | +| consumeMarket: Pools | 0% | Set in market config, by the consuming market.
Min = 0.001%
Max = 10% | +| consumeMarket: FixedRate
ERC20Template | 0% | 0% | +| consumeMarket: FixedRate
EnterpriseTemplate | 0% | Set in market config, by the consuming market. | +| Ocean Community: Pools & FixedRate
OCEAN, H2O as base token| 0.1% | 0.1% | +| Ocean Community: Pools & FixedRate
other base token | 0.2% | 0.2% | +| Pool Liquidity Provider (LP) | 1% | Set by the pool creator on contract deployment.
Contracts
Min = 0.001%
Max = 10%
Market
Min = 0.1%
Max = 10%| +| Publish Fees | 0% | 0% | +| Order Fees
1 datatoken available to get dataset acces | | | +| publishMarket
Absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by the publishing market. | +| consumeMarket
Absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by the consuming market. | +| Ocean Community
Fixed price in DT | 0.03 DT | 0.03 DT | +| Ocean Provider Fees | OPF Provider | 3rd party Provider | +| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | +| Download: `COST_PER_MB` | 0 | Set in Provider envvars. | +| Compute: `COST_PER_MIN`
Environment: 1 CPU, 60 secs max | 0 | Set in OperatorEngine envvars. | +| Compute: `COST_PER_MIN`
Environment: 1 CPU, 1 hour max | 1.0 OCEAN/min | Set in OperatorEngine envvars. | +| Ocean Community | 0% of the Provider fee | 0% of the Provider fee | ## Further reading From da65fbccd57f1d83e05d865a769aa443f688fc12 Mon Sep 17 00:00:00 2001 From: Ana Loznianu Date: Wed, 30 Mar 2022 11:10:05 +0300 Subject: [PATCH 18/20] Updated "Fees" document based on the PR feedback --- content/tutorials/marketplace-fees.md | 30 ++++++++++++++++----------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 56667abb..0a0228fd 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -5,13 +5,17 @@ description: The Ocean Protocol defines various fees for creating a sustainabili ## Path to sustainability -Ocean Protocol is a community-driven project. Through OceanDAO, the project aims at achieving decentralized governance and sustainability loop. For the project to grow and improve, the participants are rewarded for their contributions. The Ocean Protocol's smart contracts include a fee mechanism to maintain the sustainability loop. +Ocean Protocol achieves sustainability via the [Web3 sustainability loop](https://blog.oceanprotocol.com/the-web3-sustainability-loop-b2a4097a36e). +- The project grows and improves through the efforts of OceanDAO grant recipients. +- The OceanDAO votes to decide which proposals receive grants. +- Grant funds are sourced from the Ocean Protocol community treasury. +- The Ocean Protocol community collects fees when users interact with the protocol, thus completing the sustainability loop. ## Fee types ### Swap fee -Swap fees are collected whenever someone swaps a datatoken for base token (e.g., OCEAN) or base token for datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange. +Swap fees are collected whenever someone swaps a datatoken the base token (e.g., OCEAN) or base token for a datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange. These are the fees that are applied whenever a user swaps base token or datatoken: - Publisher Marketplace swap fee @@ -21,17 +25,17 @@ These are the fees that are applied whenever a user swaps base token or datatoke ### Publish fee -Publish fees will be charged to a publisher when they publish an asset. +Publish fees can be charged to a publisher when they publish an asset. -Currently, no fees are applicable in Ocean's default marketplace. However, it is possible to charge a publishing fee in the custom marketplace by adding an extra transaction in the publish flow. +Currently, the Ocean marketplace does not charge a publishing fee. Custom marketplaces can charge a publishing fee by adding an extra transaction in the publish flow. Based on the use case of the marketplace, the marketplace owner can decide if this fee should be charged or not. ### Consume fee -Consume fee is charged when a user holding datatoken exchanges it for a compute service, downloading a data asset or an algorithm. +Consume fees (aka. Order fees) are charged when a user holding a datatoken exchanges it for the right to download an asset or to start a compute job that uses the asset. -The following fees apply to the consumption of data assets as a part of Consume fee: +These are the fees that are applied whenever a user consumes an asset: - Consume Market Consumption Fee - Publisher Market Consumption Fee @@ -40,19 +44,21 @@ The following fees apply to the consumption of data assets as a part of Consume ### Ocean Community fee -Ocean's smart contract collects the **Ocean Community fee** during a swap operation. These fees are reinvested in community projects via Ocean DAO and other initiatives. Currently, this fee is set to 0.1% (as long as either Ocean or H20 are used as the base token in the market) in the smart contract but can be updated by the Ocean Protocol foundation. +Ocean's smart contracts collect **Ocean Community fees** during swap and order operations. These fees are reinvested in community projects via OceanDAO and other initiatives. -Whereas a fee of 0.2% is applicable on all swaps using another token as the base token. +For swaps involving approved base tokens like OCEAN and H2O, the Ocean Community swap fee is 0.1%. For swaps involving other base tokens, the Ocean Community swap fee is 0.2%. The Ocean Community order fee is 0.3 DT per order operation. + +These fees can be updated by the Ocean Protocol Foundation. ### Provider fee -Provider is a component of Ocean Protocol's ecosystem which facilitates data consumption, starts compute jobs, encrypts DDOs, and decrypts DDOs. Provider also validates if the user can access a particular data asset or service. To know more about Provider, click [here](https://github.com/oceanprotocol/provider). +Provider is a component of Ocean Protocol's ecosystem that facilitates data consumption, starts compute jobs, encrypts DDOs, and decrypts DDOs. Provider also validates if the user can access a particular data asset or service. To learn more about Provider, click [here](https://github.com/oceanprotocol/provider). -Provider fees are paid to the individual or organization running their Provider instance whenever a user consumes a data asset or swaps a datatoken for a base token. These fees can be set to an absolute amount, and the receiver can also decide which token to receive the fees in - they don't have to be in the same currency used in the consuming market. +Provider fees are paid to the individual or organization running their Provider instance when the user orders an asset. These fees can be set to an absolute amount, not as a percentage. The provider can also specify which token the fees must be paid in - they don't have to be the same token used in the consuming market. -Provider fee can also be used to charge for computing resources. Based on the compute resources needed to run an algorithm in the Compute-to-Data environment, a consumer can choose the amount to pay according to their needs. +Provider fees can also be used to charge for computing resources. Based on the compute resources needed to run an algorithm in the Compute-to-Data environment, a consumer can choose the amount to pay according to their needs. -This fee incentivizes individuals and organizations to run their provider instances and charge consumers according to resource usage. +These fees incentivize individuals and organizations to run their provider instances and charge consumers according to resource usage. ## Fee values From 7ad5c5efba9ad86a190b55414de74a7600ab4fb5 Mon Sep 17 00:00:00 2001 From: Akshay Date: Wed, 30 Mar 2022 10:21:57 +0200 Subject: [PATCH 19/20] Issue-#849: Fix lint issues --- content/tutorials/marketplace-fees.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index 0a0228fd..b3a4639a 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -6,6 +6,7 @@ description: The Ocean Protocol defines various fees for creating a sustainabili ## Path to sustainability Ocean Protocol achieves sustainability via the [Web3 sustainability loop](https://blog.oceanprotocol.com/the-web3-sustainability-loop-b2a4097a36e). + - The project grows and improves through the efforts of OceanDAO grant recipients. - The OceanDAO votes to decide which proposals receive grants. - Grant funds are sourced from the Ocean Protocol community treasury. @@ -44,9 +45,9 @@ These are the fees that are applied whenever a user consumes an asset: ### Ocean Community fee -Ocean's smart contracts collect **Ocean Community fees** during swap and order operations. These fees are reinvested in community projects via OceanDAO and other initiatives. +Ocean's smart contracts collect **Ocean Community fees** during swap and order operations. These fees are reinvested in community projects via OceanDAO and other initiatives. -For swaps involving approved base tokens like OCEAN and H2O, the Ocean Community swap fee is 0.1%. For swaps involving other base tokens, the Ocean Community swap fee is 0.2%. The Ocean Community order fee is 0.3 DT per order operation. +For swaps involving approved base tokens like OCEAN and H2O, the Ocean Community swap fee is 0.1%. For swaps involving other base tokens, the Ocean Community swap fee is 0.2%. The Ocean Community order fee is 0.3 DT per order operation. These fees can be updated by the Ocean Protocol Foundation. From 47c0a76474fe6c297e447783e8bb96ff89728893 Mon Sep 17 00:00:00 2001 From: Ana Loznianu Date: Wed, 30 Mar 2022 15:10:14 +0300 Subject: [PATCH 20/20] Added disclaimer of fee tables values and split the table in two based on the header options --- content/tutorials/marketplace-fees.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/content/tutorials/marketplace-fees.md b/content/tutorials/marketplace-fees.md index b3a4639a..af439724 100644 --- a/content/tutorials/marketplace-fees.md +++ b/content/tutorials/marketplace-fees.md @@ -16,7 +16,7 @@ Ocean Protocol achieves sustainability via the [Web3 sustainability loop](https: ### Swap fee -Swap fees are collected whenever someone swaps a datatoken the base token (e.g., OCEAN) or base token for a datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange. +Swap fees are collected whenever someone swaps a datatoken for base token (e.g., OCEAN) or base token for a datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange. These are the fees that are applied whenever a user swaps base token or datatoken: - Publisher Marketplace swap fee @@ -63,6 +63,8 @@ These fees incentivize individuals and organizations to run their provider insta ## Fee values +The table is periodically updated. Users are advised to confirm new values through the [contracts](https://github.com/oceanprotocol/contracts) and the [market](https://github.com/oceanprotocol/market). + | Swap Fees | Value in Ocean Market, using any Provider | Value in Other Markets | | :------------------------------------------------------------ | :----------------------------------------:| :----------------------------------------------------------------------------------------------------------------------------------------------- | | publishMarket: Pools | 0% | Set in the market config, by the publishing market.
Min = 0.001%
Max = 10% | @@ -78,7 +80,9 @@ These fees incentivize individuals and organizations to run their provider insta | publishMarket
Absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by the publishing market. | | consumeMarket
Absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by the consuming market. | | Ocean Community
Fixed price in DT | 0.03 DT | 0.03 DT | -| Ocean Provider Fees | OPF Provider | 3rd party Provider | + +| Ocean Provider Fees | OPF Provider | 3rd party Provider | +| :------------------------------------------------------------ | :----------------------------------------:| :----------------------------------------------------------------------------------------------------------------------------------------------- | | Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC | | Download: `COST_PER_MB` | 0 | Set in Provider envvars. | | Compute: `COST_PER_MIN`
Environment: 1 CPU, 60 secs max | 0 | Set in OperatorEngine envvars. |