summaryrefslogtreecommitdiff
path: root/design-documents
diff options
context:
space:
mode:
authorStefan Kügel <skuegel@web.de>2021-01-11 22:14:02 +0100
committerStefan Kügel <skuegel@web.de>2021-01-11 22:14:02 +0100
commitee35dab4b592b720138976d1fef65ca8de6d7c36 (patch)
tree5a3dc1462ac62be6b5e8c644b0260144defd5a8b /design-documents
parentded20a7da1df51d40bdf4b8a1bf23eb03599f219 (diff)
downloaddocs-ee35dab4b592b720138976d1fef65ca8de6d7c36.tar.gz
docs-ee35dab4b592b720138976d1fef65ca8de6d7c36.tar.bz2
docs-ee35dab4b592b720138976d1fef65ca8de6d7c36.zip
Changes applied according to ttn's recommendations
Diffstat (limited to 'design-documents')
-rw-r--r--design-documents/012-fee-schedule-metrics.rst72
1 files changed, 34 insertions, 38 deletions
diff --git a/design-documents/012-fee-schedule-metrics.rst b/design-documents/012-fee-schedule-metrics.rst
index efcebd73..506833ba 100644
--- a/design-documents/012-fee-schedule-metrics.rst
+++ b/design-documents/012-fee-schedule-metrics.rst
@@ -1,5 +1,5 @@
-Fees schedule and fee metrics
-#############################
+Design Doc 012: Fees schedule and fee metrics
+#############################################
.. warning::
@@ -8,41 +8,54 @@ Fees schedule and fee metrics
Summary
=======
-This chapter discusses considerations for fees from different points of view (Exchange operators, customer/users, and sellers/merchants.
+This chapter discusses considerations for fees from different points of view (Exchange operators, customers/users, and sellers/merchants).
Motivation
==========
-Fees are necessary for covering costs that Exchange operators bear for offering their services established in-house or outsourced in a data center: Variable costs (e.g. electricity and wire fees for every wired transaction to bank accounts) and expenses of constant height for hardware, company assets, marketing and staff, and so forth. They will allocate these costs to customers. The Taler protocol therefore offers different types of fees for each type of transaction that may appear in the transaction cycle. There are six fee types available which can be chosen by the Exchange operator, defining their specific value within the limits given by the protocol.
+Fees are necessary for covering costs that Exchange operators bear for offering their services established in-house or outsourced in a data center: Variable costs (e.g. electricity and wire fees for every wired transfer to bank accounts) and fixed-cost expenditures for hardware, company assets, marketing and staff, and so forth. They will allocate these costs to customers. The Taler protocol therefore offers different types of fees for each type of transaction that may appear in the transaction cycle. There are six fee types available for selection by the Exchange operator, each with a specific value within the limits given by the protocol. The protocol itself is subject to the legal framework established by (supra-)national regulatory authorities.
Any coin that has been generated or that is used (deposited) or refreshed can be charged with an applicable fee type. In addition to this, every wired amount of money can be charged with a wire fee. The six fee types are named as 'Withdrawal', 'Deposit', 'Refresh', 'Refund', 'Wire fee' and 'Closing'. The fee type 'Closing' is used for allocating costs that arise from an uncompleted withdrawal transaction when an amount of fiat money has to be wired back from the Exchange's escrow account to the bank account of origin.
-Fee types and their underlying metrics are not only due to cover real costs in the long run, but also to reward users for their economic behaviour, to prevent misuse, and to allow Exchange operators to gain certain income and most probably profits. Exchange operators are thus determining the combination of fee types and the height of each fee for every denomination of coins. Any chosen denomination (constant nominal value of coins preset by the operator by means of the Denomination key) will subsequently come along with a variety of fee types and their individually specified height.
+Fee types and their underlying metrics are intended not only to cover real costs in the long run, but also to reward users for their economic behaviour, to prevent misuse, and to allow Exchange operators to gain certain income and most probably profits. Exchange operators are thus determine the combination of fee types and the amount of each fee for every denomination of coins. Any chosen denomination (constant nominal value of coins preset by the operator by means of the Denomination key) will subsequently come along with a variety of fee types and their individually specified amounts.
Proposed Solution
=================
+The Taler protocol offers the following fee types:
+
+1. 'Withdrawal': For each successful withdrawal from the checking account, per coin
+2. 'Deposit': For spending, per coin
+3. 'Refresh': Per coin for
+ a. Refresh transactions for receiving change
+ b. Refresh of coins at the end of their validity
+ c. Abort of transactions due to network failure
+ d. Refund
+4. 'Refund': For refunds or in case of contract cancellation by seller, per coin
+5. 'Wire fee': For aggregated amounts wired by the Exchange to the merchant's checking account, per wire transfer
+6. 'Closing': In case that a withdrawal process could not be accomplished (the users' wallet did not withdraw the value from the reserve), per wire transfer from the Exchange's escrow account to the account of origin
+
Fee schedule
-==============
+============
-Whereas the Taler protocol determines types of fees, Exchange operators determine the upper and lower limits of fees using parameters. Once they have set the fee height per denomination, the algorithm of the Taler payment system will allocate costs automatically to every generated coin respectively to a wired amount.
+Whereas the Taler protocol determines types of fees, Exchange operators determine the upper and lower limits of fees using parameters. Once they have set the fee amount per denomination, the algorithm of the Taler payment system will allocate costs automatically to every generated coin respective to a wired amount.
The fee structure and its underlying metrics are also bound to rules and expectations of financial regulatory authorities like the German Federal Financial Supervisory Authority (Bundesanstalt für Finanzdienstleistungsaufsicht BaFin). Changes to the fee structure are therefore eligible only when they are in accordance with national or international laws and directives.
-Fees chosen by Exchange operators have to be explained to the users by means of comprehensive Terms and conditions of services that rule out the different and heights of fees and how they are calculated. Costs for wired amounts within the banking system (IBAN transfers to the Exchange's escrow account for the withdrawal transaction; IBAN: International Banking Account Number) have to be covered by users, so additionally Terms and conditions of their banks may be effective, too. These Terms of banking services are not part of the Taler payment system, nevertheless Exchange operators should make users aware of this fact, that each wired transactions may cause costs on their expense.
+Fees chosen by Exchange operators have to be explained to the users by means of comprehensive Terms and conditions of services that describe the fee types and amounts of fees and how they are calculated. Costs for wired amounts within the banking system (IBAN transfers to the Exchange's escrow account for the withdrawal transaction; IBAN: International Banking Account Number) have to be covered by users, so additionally Terms and conditions of their banks may be effective, too. These Terms of banking services are not part of the Taler payment system, nevertheless Exchange operators should inform users that each wired transfer may incur a fee.
1. Obligations of Exchange operators
----------------------------------------
+------------------------------------
-Exchange operators have to adhere to the fee schedule. Otherwise they can lose their interface access, have their certification revoked and, moreover, even become liable for damages. For each transaction type there is one specific fee type. Exchange operators set the height of fees. If a fee type is set to a value of 0, this fee type will not contribute to the operator's income from fees.
+Exchange operators have to adhere to the fee schedule. Otherwise they can lose their interface access, have their certification revoked and, moreover, even become liable for damages. For each transaction type there is one specific fee type. Exchange operators set the fee amount. If a fee type is set to a value of 0, this fee type will not contribute to the operator's income from fees.
-Three fee types ('Wire fee', 'Closing' and 'Recoup') will cause costs for Exchange operators due to wire transfers to accounts wired by banks. Therefore, operators must find suitable ways to have these costs covered by customers.
+Two fee types ('Wire fee', 'Closing') and the 'Recoup' protocol will cause costs for Exchange operators due to wire transfers to accounts wired by banks. Therefore, operators must find suitable ways to have these costs covered by customers.
-The 'Recoup' protocol does not allow Exchange operators to set any fee height, because reimbursing funds from an Exchange that is about to cease its activity must always be at zero costs for the users. Wiring fees in the case of 'Recoup' have to be entirely covered by Exchange operators instead.
+The 'Recoup' protocol does not allow Exchange operators to set any fee amount, because reimbursing funds from an Exchange that is about to cease its activity must always be at zero cost for the user. Wiring fees in the case of 'Recoup' have to be entirely covered by Exchange operators instead.
-Setting all of the six fee types to 0 means would simply the payment system and make it more attractive to users. However, Exchange operators need effective counter-measures against possible misuse. Transactions that are abundantly often repeated by malicious users are driving costs, thus harming operators. Making these transactions costly to those who trigger them intentionally is the only way to solve this issue.
+Setting all of the six fee types to 0 means would simplify the payment system and make it more attractive to users. However, Exchange operators need effective counter-measures against possible misuse. Transactions that are abundantly often repeated by malicious users drive up costs, thus harming operators. Making these transactions costly to those who trigger them intentionally is the only way to solve this issue.
-For example, if the Exchange operator sets the 'Refresh' fee at the level of the specific costs incurred for this transaction type, malicious cost driving with refresh does at least not damage the exchange, but only charges those users who have their coins refreshed particularly frequently (see detailed below).
+For example, if the Exchange operator sets the 'Refresh' fee at the level of the specific costs incurred for this transaction type, malicious cost driving with refresh at least does not damage the exchange, but only charges those users who have their coins refreshed particularly frequently (see detailed below).
Operators agree that their audit reports report income from fees to the auditors and, accordingly, to the supervisory authorities. Fees on coins at set the time they are issued and cannot be changed afterwards. According to the Taler protocol, fees on bank transfers can only be adjusted annually and are set by the operator for at least 2 years in the future. Thanks to this constant fee, merchants can better plan costs to be added and include them in their sales prices.
@@ -51,7 +64,7 @@ Terms and conditions of every Exchange must also clearly indicate to the user th
A private bank that hosts an Exchange and normally charges its customers for IBAN transfers has the option of waiving the applying fees for their customers when they are withdrawing from their own checking accounts into Taler wallets.
2. Buyer's obligations
------------------------
+----------------------
Prior to making a first withdrawal from an Exchange users are required to read and confirm the Terms and conditions of the relevant Exchange. This step is mandatory when changes to Terms and conditions take place. Users accept Terms and conditions by confirming them in the mobile application or on the web. Terms and conditions also require users to accept possible losses of funds in wallets through 'Refresh' fees, which can be eventually charged by Exchange operators.
@@ -62,7 +75,7 @@ In accordance with the Terms and conditions, the users agree not to make any cla
Furthermore, according to the Terms and conditions, users must accept that the IBAN transfer from the users' personal checking account to the Exchange's escrow account may incur costs depending on the contract with their banks. These costs are not related to the Taler payment system and cannot be influenced by it.
3. Obligations of merchants/sellers
-------------------------------------
+-----------------------------------
Normally, a plurality of buyers' spending transactions is summed up to one aggregated amount of revenue and wired to the receiving checking account of the merchant. Merchants can set the frequency by which these aggregated amounts are wired. Every wire transfer imposes costs on the Exchange operator collected by the operator's bank for having the amount wired. Therefore, the Exchange operator will tend to charge the 'Wire fee' to the sellers for this transaction type, as the sellers are the ones causing the aggregated transfer and not the buyers. If from a seller's point of view an Exchange operator has set the 'Wire fee' too high, the seller can make use of the Taler Merchant software and determine the so-called amortization factor to add all or part of the 'Wire fee' to the amount payable by customers who deposit coins from their wallets funded via this Exchange.
@@ -71,7 +84,7 @@ During the withdrawal process, the wallet shows to the buyer the complete fee sc
Given the case that sellers enter incorrect account data for their own checking account, they are solely liable for any resulting damage and not the Exchange operator. Sellers bear the risk of a loss of value or even a total loss of their revenue if they enter a wrong IBAN for the transfer of their revenue, although syntactically correct. Similarly, the sellers alone bear charges due to an incorrect receiving account number or other posting errors that they cause and for which manual routing becomes necessary (e.g. in the case of lapsed accounts).
4. Technical framework conditions for the collection of fees
--------------------------------------------------------------
+------------------------------------------------------------
Fees are charged per coin or per wire transfer. The number of coins at withdrawal usually increases logarithmically with the amount represented. Fees can be applied to both flow quantities (e.g. coins moved at withdrawal and deposit transactions) and static quantities (e.g. coins stored in wallets). The fees on coins may differ depending on the time of issuance of a coin and depending on the value of a coin. They are fixed for each coin with its time of issuance, so they cannot be changed subsequently during their validity by the Exchange operator.
@@ -80,27 +93,10 @@ During the entire period of validity, all Denomination keys and the selected fee
The refresh transaction is automatically triggered by the wallet software 3 months before the end of the validity of a coin. Especially if Exchange operators charge refresh fees, they have to point out this automatic feature to the users in their Terms and conditions.
-Fee types
-===========
-
-The Taler protocol offers the following fee types:
-
-1. 'Withdrawal': For each successful withdrawal from the checking account, per coin
-2. 'Deposit': For spending, per coin
-3. 'Refresh': Per coin for
- a. Refresh transactions for receiving change
- b. Refresh of coins at the end of their validity
- c. Abort of transactions due to network failure
- d. Refund
-4. 'Refund': For refunds or in case of contract cancellation by seller, per coin
-5. 'Wire fee': For aggregated amounts wired by the Exchange to the merchant's checking account, per wire transfer
-6. 'Closing': In case that a withdrawal process could not be accomplished (the users' wallet did not withdraw the value from the reserve), per wire transfer from the Exchange's escrow account to the account of origin
-
-
-Effects of fee types on Exchange operators, buyers and sellers
-------------------------------------------------------------------
+Effects of fee types on users: Buyers, Exchange operators, and sellers
+======================================================================
-Each of the above fee types is now considered viewed from the perspective of the buyer, the exchange operator, and the seller:
+Each of the above mentioned fee types is now considered viewed from the perspective of the buyer, the exchange operator, and the seller:
* 'Withdrawal' from the buyer's point of view:
@@ -124,7 +120,7 @@ During deposit, the Exchange logic compares the public key of each coin with the
* 'Deposit' from the seller's point of view:
-If an Exchange operator charges relatively high deposit fees, sellers have a means to correlate the fee height. As pointed out before, a seller must bear deposit fees, but only up to the maximum determined by the variable default_max_deposit_fee, which every seller specifies individually.
+If an Exchange operator charges relatively high deposit fees, sellers have a means to correlate the fee amount. As pointed out before, a seller must bear deposit fees, but only up to the maximum determined by the variable default_max_deposit_fee, which every seller specifies individually.
Deposit fees will also affect refund transactions, for example when a rebate is given by the seller to the customer. Only in the case of a complete withdrawal from the contract by the seller the refund transaction exempts the buyers from deposit fees. Then, the refund transaction incurs the refresh fee only that would be borne by the buyers. If the seller's refund is partly, only the seller's deposit fee is waived, which means from the buyer's perspective a partly refunded purchase with coins signed at an Exchange with high deposit fees is becoming less attractive. In other words: Deposit fees exceeding the seller's maximum value will be borne by the buyers, making the rebate worse from the buyers' perspective.