gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-taler-ops-www] branch master updated: fees


From: gnunet
Subject: [taler-taler-ops-www] branch master updated: fees
Date: Sun, 25 Feb 2024 12:32:10 +0100

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository taler-ops-www.

The following commit(s) were added to refs/heads/master by this push:
     new 244726a  fees
244726a is described below

commit 244726abae5ac3f8379ddea2bd6b5456a1f94754
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sun Feb 25 12:31:20 2024 +0100

    fees
---
 locale/de/LC_MESSAGES/messages.po |  66 +++++++++++----
 locale/en/LC_MESSAGES/messages.po |  66 +++++++++++----
 locale/fr/LC_MESSAGES/messages.po |  66 +++++++++++----
 locale/messages.pot               |  68 +++++++++++----
 static/images/stefan.gnu          |  10 +++
 static/images/stefan.png          | Bin 0 -> 5696 bytes
 static/images/stefan.svg          | 168 ++++++++++++++++++++++++++++++++++++++
 template/fees.html.j2             | 132 ++++++++++++++++++------------
 8 files changed, 451 insertions(+), 125 deletions(-)

diff --git a/locale/de/LC_MESSAGES/messages.po 
b/locale/de/LC_MESSAGES/messages.po
index fc442d6..22b14e4 100644
--- a/locale/de/LC_MESSAGES/messages.po
+++ b/locale/de/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2024-02-25 10:59+0100\n"
+"POT-Creation-Date: 2024-02-25 12:25+0100\n"
 "PO-Revision-Date: 2024-02-24 20:06+0000\n"
 "Last-Translator: Stefan Kügel <skuegel@web.de>\n"
 "Language-Team: German <https://weblate.taler.net/projects/taler-ops/website/";
@@ -154,10 +154,26 @@ msgid "Information about the fees Taler does, and does 
not collect."
 msgstr ""
 
 #: template/fees.html.j2:12
+msgid "Wire transfer fee"
+msgstr ""
+
+#: template/fees.html.j2:15
+msgid ""
+"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
+"transfer when Taler is used to deposit funds into a bank account. Merchants "
+"are encouraged to allow Taler to delay and then aggregate many small "
+"payments into a single collective wire transfer to minimize wire transfer "
+"fees. For example, by configuring a <b>wire deadline</b> of one week, all "
+"payments within a week could be aggregated into a single wire transfer, and "
+"thus only be paying the wire transfer fee once. The fee is simply subtracted "
+"from the total amount wired."
+msgstr ""
+
+#: template/fees.html.j2:30
 msgid "Deposit fees"
 msgstr ""
 
-#: template/fees.html.j2:14
+#: template/fees.html.j2:33
 msgid ""
 "Withdrawing 5&nbsp;CHF creates electronic coins with denominations of "
 "0.04&nbsp;CHF, 0.16&nbsp;CHF, 0.32&nbsp;CHF, 0.64&nbsp;CHF, 1.28&nbsp;CHF, "
@@ -166,21 +182,43 @@ msgid ""
 "with 0.01&nbsp;CHF returned as change."
 msgstr ""
 
-#: template/fees.html.j2:35
+#: template/fees.html.j2:43
+msgid ""
+"The <b>deposit fees</b> charged by Taler payment providers depend on the "
+"electronic coins used in the transaction. Merchants can offer to pay deposit "
+"fees up to a specified limit; customers have to pay deposit fees that exceed "
+"what the merchant is willing to cover. Taler wallets inform customers about "
+"applicable deposit fees they have to pay before every transaction."
+msgstr ""
+
+#: template/fees.html.j2:53
+msgid ""
+"The following table shows the deposit fee structure used by Taler Operations:"
+msgstr ""
+
+#: template/fees.html.j2:62
 #, fuzzy
 #| msgid "Tokenization"
 msgid "Coin denomination"
 msgstr "Tokenization"
 
-#: template/fees.html.j2:38
+#: template/fees.html.j2:65
 msgid "Fee per Coin"
 msgstr ""
 
-#: template/fees.html.j2:70
+#: template/fees.html.j2:95
+msgid ""
+"Merchants can set the merchant backend if they want to cover customary fees "
+"which over over-approximate typical deposit and wire fees, ensuring that "
+"customers virtually never have to pay deposit fees. The following curve "
+"shows the customary fees for different net transaction amounts."
+msgstr ""
+
+#: template/fees.html.j2:108
 msgid "Bounce fee"
 msgstr ""
 
-#: template/fees.html.j2:73
+#: template/fees.html.j2:111
 msgid ""
 "A <b>bounce fee</b> of <b>0.1&nbsp;CHF</b> is applied to wire transfers that "
 "return funds to customers when either the Taler wallet did not withdraw the "
@@ -190,26 +228,18 @@ msgid ""
 "original account."
 msgstr ""
 
-#: template/fees.html.j2:81
+#: template/fees.html.j2:121
 msgid ""
 "Payers should be careful when entering the wire transfer subject, and ensure "
 "that their wallet is online within a month of initiating the withdrawal to "
 "avoid paying bounce fees."
 msgstr ""
 
-#: template/fees.html.j2:92
-msgid ""
-"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
-"transfer when Taler is used to deposit funds into a bank account. Merchants "
-"are encouraged to allow Taler to delay and then aggregate many small "
-"payments into a single collective wire transfer to minimize wire transfer "
-"fees. For example, by configuring a <b>wire deadline</b> of one week, all "
-"payments within a week could be aggregated into a single wire transfer, and "
-"thus only be paying the wire transfer fee once. The fee is simply subtracted "
-"from the total amount wired."
+#: template/fees.html.j2:131
+msgid "Possible loss of e-money due to expiration"
 msgstr ""
 
-#: template/fees.html.j2:109
+#: template/fees.html.j2:134
 msgid ""
 "Taler eCHF is issued with a <b>1&nbsp;year</b> validity period. One month "
 "before the expiration date, you wallet should automatically exchange any "
diff --git a/locale/en/LC_MESSAGES/messages.po 
b/locale/en/LC_MESSAGES/messages.po
index 06766f0..fde67bf 100644
--- a/locale/en/LC_MESSAGES/messages.po
+++ b/locale/en/LC_MESSAGES/messages.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2024-02-25 10:59+0100\n"
+"POT-Creation-Date: 2024-02-25 12:25+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -126,10 +126,26 @@ msgid "Information about the fees Taler does, and does 
not collect."
 msgstr ""
 
 #: template/fees.html.j2:12
+msgid "Wire transfer fee"
+msgstr ""
+
+#: template/fees.html.j2:15
+msgid ""
+"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
+"transfer when Taler is used to deposit funds into a bank account. Merchants "
+"are encouraged to allow Taler to delay and then aggregate many small "
+"payments into a single collective wire transfer to minimize wire transfer "
+"fees. For example, by configuring a <b>wire deadline</b> of one week, all "
+"payments within a week could be aggregated into a single wire transfer, and "
+"thus only be paying the wire transfer fee once. The fee is simply subtracted "
+"from the total amount wired."
+msgstr ""
+
+#: template/fees.html.j2:30
 msgid "Deposit fees"
 msgstr ""
 
-#: template/fees.html.j2:14
+#: template/fees.html.j2:33
 msgid ""
 "Withdrawing 5&nbsp;CHF creates electronic coins with denominations of "
 "0.04&nbsp;CHF, 0.16&nbsp;CHF, 0.32&nbsp;CHF, 0.64&nbsp;CHF, 1.28&nbsp;CHF, "
@@ -138,19 +154,41 @@ msgid ""
 "with 0.01&nbsp;CHF returned as change."
 msgstr ""
 
-#: template/fees.html.j2:35
+#: template/fees.html.j2:43
+msgid ""
+"The <b>deposit fees</b> charged by Taler payment providers depend on the "
+"electronic coins used in the transaction. Merchants can offer to pay deposit "
+"fees up to a specified limit; customers have to pay deposit fees that exceed "
+"what the merchant is willing to cover. Taler wallets inform customers about "
+"applicable deposit fees they have to pay before every transaction."
+msgstr ""
+
+#: template/fees.html.j2:53
+msgid ""
+"The following table shows the deposit fee structure used by Taler Operations:"
+msgstr ""
+
+#: template/fees.html.j2:62
 msgid "Coin denomination"
 msgstr ""
 
-#: template/fees.html.j2:38
+#: template/fees.html.j2:65
 msgid "Fee per Coin"
 msgstr ""
 
-#: template/fees.html.j2:70
+#: template/fees.html.j2:95
+msgid ""
+"Merchants can set the merchant backend if they want to cover customary fees "
+"which over over-approximate typical deposit and wire fees, ensuring that "
+"customers virtually never have to pay deposit fees. The following curve "
+"shows the customary fees for different net transaction amounts."
+msgstr ""
+
+#: template/fees.html.j2:108
 msgid "Bounce fee"
 msgstr ""
 
-#: template/fees.html.j2:73
+#: template/fees.html.j2:111
 msgid ""
 "A <b>bounce fee</b> of <b>0.1&nbsp;CHF</b> is applied to wire transfers that "
 "return funds to customers when either the Taler wallet did not withdraw the "
@@ -160,26 +198,18 @@ msgid ""
 "original account."
 msgstr ""
 
-#: template/fees.html.j2:81
+#: template/fees.html.j2:121
 msgid ""
 "Payers should be careful when entering the wire transfer subject, and ensure "
 "that their wallet is online within a month of initiating the withdrawal to "
 "avoid paying bounce fees."
 msgstr ""
 
-#: template/fees.html.j2:92
-msgid ""
-"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
-"transfer when Taler is used to deposit funds into a bank account. Merchants "
-"are encouraged to allow Taler to delay and then aggregate many small "
-"payments into a single collective wire transfer to minimize wire transfer "
-"fees. For example, by configuring a <b>wire deadline</b> of one week, all "
-"payments within a week could be aggregated into a single wire transfer, and "
-"thus only be paying the wire transfer fee once. The fee is simply subtracted "
-"from the total amount wired."
+#: template/fees.html.j2:131
+msgid "Possible loss of e-money due to expiration"
 msgstr ""
 
-#: template/fees.html.j2:109
+#: template/fees.html.j2:134
 msgid ""
 "Taler eCHF is issued with a <b>1&nbsp;year</b> validity period. One month "
 "before the expiration date, you wallet should automatically exchange any "
diff --git a/locale/fr/LC_MESSAGES/messages.po 
b/locale/fr/LC_MESSAGES/messages.po
index 65145f4..9640726 100644
--- a/locale/fr/LC_MESSAGES/messages.po
+++ b/locale/fr/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2024-02-25 10:59+0100\n"
+"POT-Creation-Date: 2024-02-25 12:25+0100\n"
 "PO-Revision-Date: 2024-02-12 18:13+0000\n"
 "Last-Translator: Stefan Kügel <skuegel@web.de>\n"
 "Language-Team: French <https://weblate.taler.net/projects/taler-ops/website/";
@@ -144,10 +144,26 @@ msgid "Information about the fees Taler does, and does 
not collect."
 msgstr ""
 
 #: template/fees.html.j2:12
+msgid "Wire transfer fee"
+msgstr ""
+
+#: template/fees.html.j2:15
+msgid ""
+"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
+"transfer when Taler is used to deposit funds into a bank account. Merchants "
+"are encouraged to allow Taler to delay and then aggregate many small "
+"payments into a single collective wire transfer to minimize wire transfer "
+"fees. For example, by configuring a <b>wire deadline</b> of one week, all "
+"payments within a week could be aggregated into a single wire transfer, and "
+"thus only be paying the wire transfer fee once. The fee is simply subtracted "
+"from the total amount wired."
+msgstr ""
+
+#: template/fees.html.j2:30
 msgid "Deposit fees"
 msgstr ""
 
-#: template/fees.html.j2:14
+#: template/fees.html.j2:33
 msgid ""
 "Withdrawing 5&nbsp;CHF creates electronic coins with denominations of "
 "0.04&nbsp;CHF, 0.16&nbsp;CHF, 0.32&nbsp;CHF, 0.64&nbsp;CHF, 1.28&nbsp;CHF, "
@@ -156,19 +172,41 @@ msgid ""
 "with 0.01&nbsp;CHF returned as change."
 msgstr ""
 
-#: template/fees.html.j2:35
+#: template/fees.html.j2:43
+msgid ""
+"The <b>deposit fees</b> charged by Taler payment providers depend on the "
+"electronic coins used in the transaction. Merchants can offer to pay deposit "
+"fees up to a specified limit; customers have to pay deposit fees that exceed "
+"what the merchant is willing to cover. Taler wallets inform customers about "
+"applicable deposit fees they have to pay before every transaction."
+msgstr ""
+
+#: template/fees.html.j2:53
+msgid ""
+"The following table shows the deposit fee structure used by Taler Operations:"
+msgstr ""
+
+#: template/fees.html.j2:62
 msgid "Coin denomination"
 msgstr ""
 
-#: template/fees.html.j2:38
+#: template/fees.html.j2:65
 msgid "Fee per Coin"
 msgstr ""
 
-#: template/fees.html.j2:70
+#: template/fees.html.j2:95
+msgid ""
+"Merchants can set the merchant backend if they want to cover customary fees "
+"which over over-approximate typical deposit and wire fees, ensuring that "
+"customers virtually never have to pay deposit fees. The following curve "
+"shows the customary fees for different net transaction amounts."
+msgstr ""
+
+#: template/fees.html.j2:108
 msgid "Bounce fee"
 msgstr ""
 
-#: template/fees.html.j2:73
+#: template/fees.html.j2:111
 msgid ""
 "A <b>bounce fee</b> of <b>0.1&nbsp;CHF</b> is applied to wire transfers that "
 "return funds to customers when either the Taler wallet did not withdraw the "
@@ -178,26 +216,18 @@ msgid ""
 "original account."
 msgstr ""
 
-#: template/fees.html.j2:81
+#: template/fees.html.j2:121
 msgid ""
 "Payers should be careful when entering the wire transfer subject, and ensure "
 "that their wallet is online within a month of initiating the withdrawal to "
 "avoid paying bounce fees."
 msgstr ""
 
-#: template/fees.html.j2:92
-msgid ""
-"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
-"transfer when Taler is used to deposit funds into a bank account. Merchants "
-"are encouraged to allow Taler to delay and then aggregate many small "
-"payments into a single collective wire transfer to minimize wire transfer "
-"fees. For example, by configuring a <b>wire deadline</b> of one week, all "
-"payments within a week could be aggregated into a single wire transfer, and "
-"thus only be paying the wire transfer fee once. The fee is simply subtracted "
-"from the total amount wired."
+#: template/fees.html.j2:131
+msgid "Possible loss of e-money due to expiration"
 msgstr ""
 
-#: template/fees.html.j2:109
+#: template/fees.html.j2:134
 msgid ""
 "Taler eCHF is issued with a <b>1&nbsp;year</b> validity period. One month "
 "before the expiration date, you wallet should automatically exchange any "
diff --git a/locale/messages.pot b/locale/messages.pot
index ae4228a..a45a773 100644
--- a/locale/messages.pot
+++ b/locale/messages.pot
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2024-02-25 11:07+0100\n"
+"POT-Creation-Date: 2024-02-25 12:25+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -126,10 +126,26 @@ msgid "Information about the fees Taler does, and does 
not collect."
 msgstr ""
 
 #: template/fees.html.j2:12
+msgid "Wire transfer fee"
+msgstr ""
+
+#: template/fees.html.j2:15
+msgid ""
+"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
+"transfer when Taler is used to deposit funds into a bank account. "
+"Merchants are encouraged to allow Taler to delay and then aggregate many "
+"small payments into a single collective wire transfer to minimize wire "
+"transfer fees. For example, by configuring a <b>wire deadline</b> of one "
+"week, all payments within a week could be aggregated into a single wire "
+"transfer, and thus only be paying the wire transfer fee once. The fee is "
+"simply subtracted from the total amount wired."
+msgstr ""
+
+#: template/fees.html.j2:30
 msgid "Deposit fees"
 msgstr ""
 
-#: template/fees.html.j2:14
+#: template/fees.html.j2:33
 msgid ""
 "Withdrawing 5&nbsp;CHF creates electronic coins with denominations of "
 "0.04&nbsp;CHF, 0.16&nbsp;CHF, 0.32&nbsp;CHF, 0.64&nbsp;CHF, "
@@ -138,19 +154,43 @@ msgid ""
 "total of 3.24&nbsp;CHF with 0.01&nbsp;CHF returned as change."
 msgstr ""
 
-#: template/fees.html.j2:35
+#: template/fees.html.j2:43
+msgid ""
+"The <b>deposit fees</b> charged by Taler payment providers depend on the "
+"electronic coins used in the transaction. Merchants can offer to pay "
+"deposit fees up to a specified limit; customers have to pay deposit fees "
+"that exceed what the merchant is willing to cover. Taler wallets inform "
+"customers about applicable deposit fees they have to pay before every "
+"transaction."
+msgstr ""
+
+#: template/fees.html.j2:53
+msgid ""
+"The following table shows the deposit fee structure used by Taler "
+"Operations:"
+msgstr ""
+
+#: template/fees.html.j2:62
 msgid "Coin denomination"
 msgstr ""
 
-#: template/fees.html.j2:38
+#: template/fees.html.j2:65
 msgid "Fee per Coin"
 msgstr ""
 
-#: template/fees.html.j2:70
+#: template/fees.html.j2:95
+msgid ""
+"Merchants can set the merchant backend if they want to cover customary "
+"fees which over over-approximate typical deposit and wire fees, ensuring "
+"that customers virtually never have to pay deposit fees. The following "
+"curve shows the customary fees for different net transaction amounts."
+msgstr ""
+
+#: template/fees.html.j2:108
 msgid "Bounce fee"
 msgstr ""
 
-#: template/fees.html.j2:73
+#: template/fees.html.j2:111
 msgid ""
 "A <b>bounce fee</b> of <b>0.1&nbsp;CHF</b> is applied to wire transfers "
 "that return funds to customers when either the Taler wallet did not "
@@ -160,26 +200,18 @@ msgid ""
 "transferred back to the original account."
 msgstr ""
 
-#: template/fees.html.j2:81
+#: template/fees.html.j2:121
 msgid ""
 "Payers should be careful when entering the wire transfer subject, and "
 "ensure that their wallet is online within a month of initiating the "
 "withdrawal to avoid paying bounce fees."
 msgstr ""
 
-#: template/fees.html.j2:92
-msgid ""
-"A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an outgoing wire "
-"transfer when Taler is used to deposit funds into a bank account. "
-"Merchants are encouraged to allow Taler to delay and then aggregate many "
-"small payments into a single collective wire transfer to minimize wire "
-"transfer fees. For example, by configuring a <b>wire deadline</b> of one "
-"week, all payments within a week could be aggregated into a single wire "
-"transfer, and thus only be paying the wire transfer fee once. The fee is "
-"simply subtracted from the total amount wired."
+#: template/fees.html.j2:131
+msgid "Possible loss of e-money due to expiration"
 msgstr ""
 
-#: template/fees.html.j2:109
+#: template/fees.html.j2:134
 msgid ""
 "Taler eCHF is issued with a <b>1&nbsp;year</b> validity period. One month"
 " before the expiration date, you wallet should automatically exchange any"
diff --git a/static/images/stefan.gnu b/static/images/stefan.gnu
new file mode 100644
index 0000000..e0dce2c
--- /dev/null
+++ b/static/images/stefan.gnu
@@ -0,0 +1,10 @@
+# GNUplot script to generate the Stefan curve
+# This file is in the public domain.
+set xlabel 'Net amount (CHF)'
+set ylabel 'Deposit fees (CHF)'
+set xrange [0:100]
+set yrange [0:0.08]
+set size 1.0, 1.0
+set terminal svg enhanced
+set output 'stefan.svg'
+plot 0.0025 + log(x)/log(2) * 0.01 title 'Customary fees'
diff --git a/static/images/stefan.png b/static/images/stefan.png
new file mode 100644
index 0000000..b73d8e7
Binary files /dev/null and b/static/images/stefan.png differ
diff --git a/static/images/stefan.svg b/static/images/stefan.svg
new file mode 100644
index 0000000..75c4fe9
--- /dev/null
+++ b/static/images/stefan.svg
@@ -0,0 +1,168 @@
+<?xml version="1.0" encoding="utf-8"  standalone="no"?>
+<svg 
+ width="600" height="480"
+ viewBox="0 0 600 480"
+ xmlns="http://www.w3.org/2000/svg";
+ xmlns:xlink="http://www.w3.org/1999/xlink";
+>
+
+<title>Gnuplot</title>
+<desc>Produced by GNUPLOT 5.4 patchlevel 4 </desc>
+
+<g id="gnuplot_canvas">
+
+<rect x="0" y="0" width="600" height="480" fill="none"/>
+<defs>
+
+       <circle id='gpDot' r='0.5' stroke-width='0.5' stroke='currentColor'/>
+       <path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 
M0,-1 v2'/>
+       <path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 
L1,1 M1,-1 L-1,1'/>
+       <path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 
L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
+       <rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' 
y='-1' width='2' height='2'/>
+       <rect id='gpPt4' stroke-width='0.222' stroke='currentColor' 
fill='currentColor' x='-1' y='-1' width='2' height='2'/>
+       <circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' 
cy='0' r='1'/>
+       <use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
+       <path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 
L-1.33,0.67 L1.33,0.67 z'/>
+       <use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
+       <use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' 
transform='rotate(180)'/>
+       <use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
+       <use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' 
transform='rotate(45)'/>
+       <use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' 
stroke='none'/>
+       <path id='gpPt13' stroke-width='0.222' stroke='currentColor' 
d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
+       <use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' 
stroke='none'/>
+       <filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' 
height='1' width='1'>
+         <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
+         <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
+       </filter>
+       <filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' 
height='1' width='1'>
+         <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
+         <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
+       </filter>
+</defs>
+<g fill="none" color="white" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,422.40 L89.92,422.40 M574.82,422.40 
L565.82,422.40  '/> <g transform="translate(72.53,426.30)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,371.85 L89.92,371.85 M574.82,371.85 
L565.82,371.85  '/> <g transform="translate(72.53,375.75)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.01</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,321.30 L89.92,321.30 M574.82,321.30 
L565.82,321.30  '/> <g transform="translate(72.53,325.20)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.02</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,270.75 L89.92,270.75 M574.82,270.75 
L565.82,270.75  '/> <g transform="translate(72.53,274.65)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.03</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,220.20 L89.92,220.20 M574.82,220.20 
L565.82,220.20  '/> <g transform="translate(72.53,224.10)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.04</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,169.66 L89.92,169.66 M574.82,169.66 
L565.82,169.66  '/> <g transform="translate(72.53,173.56)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.05</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,119.11 L89.92,119.11 M574.82,119.11 
L565.82,119.11  '/> <g transform="translate(72.53,123.01)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.06</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,68.56 L89.92,68.56 M574.82,68.56 
L565.82,68.56  '/>     <g transform="translate(72.53,72.46)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.07</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,18.01 L89.92,18.01 M574.82,18.01 
L565.82,18.01  '/>     <g transform="translate(72.53,21.91)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" > 0.08</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,422.40 L80.92,413.40 M80.92,18.01 
L80.92,27.01  '/>     <g transform="translate(80.92,444.30)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" > 0</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M179.70,422.40 L179.70,413.40 M179.70,18.01 
L179.70,27.01  '/> <g transform="translate(179.70,444.30)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" > 20</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M278.48,422.40 L278.48,413.40 M278.48,18.01 
L278.48,27.01  '/> <g transform="translate(278.48,444.30)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" > 40</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M377.26,422.40 L377.26,413.40 M377.26,18.01 
L377.26,27.01  '/> <g transform="translate(377.26,444.30)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" > 60</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M476.04,422.40 L476.04,413.40 M476.04,18.01 
L476.04,27.01  '/> <g transform="translate(476.04,444.30)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" > 80</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M574.82,422.40 L574.82,413.40 M574.82,18.01 
L574.82,27.01  '/> <g transform="translate(574.82,444.30)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" > 100</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,18.01 L80.92,422.40 L574.82,422.40 
L574.82,18.01 L80.92,18.01 Z  '/></g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <g transform="translate(19.18,220.21) rotate(270)" stroke="none" 
fill="black" font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" >Deposit fees 
(CHF)</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <g transform="translate(327.87,471.30)" stroke="none" fill="black" 
font-family="Arial" font-size="12.00"  text-anchor="middle">
+               <text><tspan font-family="Arial" >Net amount 
(CHF)</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+       <g id="gnuplot_plot_1" ><title>Customary fees</title>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <g transform="translate(507.09,39.91)" stroke="none" fill="black" 
font-family="Arial" font-size="12.00"  text-anchor="end">
+               <text><tspan font-family="Arial" >Customary fees</tspan></text>
+       </g>
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='rgb(148,   0, 211)'  d='M515.48,36.01 L558.04,36.01 
M85.91,409.03 L90.90,358.48 L95.89,328.91 L100.88,307.93 L105.86,291.66 
L110.85,278.36
+               L115.84,267.12 L120.83,257.38 L125.82,248.79 L130.81,241.11 
L135.80,234.16 L140.79,227.81 L145.78,221.98 L150.76,216.57
+               L155.75,211.54 L160.74,206.83 L165.73,202.41 L170.72,198.25 
L175.71,194.30 L180.70,190.56 L185.69,187.00 L190.68,183.61
+               L195.66,180.37 L200.65,177.27 L205.64,174.29 L210.63,171.43 
L215.62,168.68 L220.61,166.02 L225.60,163.47 L230.59,160.99
+               L235.58,158.60 L240.56,156.29 L245.55,154.04 L250.54,151.86 
L255.53,149.75 L260.52,147.70 L265.51,145.70 L270.50,143.75
+               L275.49,141.86 L280.48,140.01 L285.46,138.21 L290.45,136.45 
L295.44,134.74 L300.43,133.06 L305.42,131.42 L310.41,129.82
+               L315.40,128.25 L320.39,126.72 L325.38,125.21 L330.36,123.74 
L335.35,122.30 L340.34,120.88 L345.33,119.49 L350.32,118.13
+               L355.31,116.79 L360.30,115.48 L365.29,114.18 L370.28,112.92 
L375.26,111.67 L380.25,110.44 L385.24,109.24 L390.23,108.05
+               L395.22,106.89 L400.21,105.74 L405.20,104.61 L410.19,103.49 
L415.18,102.40 L420.16,101.32 L425.15,100.25 L430.14,99.20
+               L435.13,98.17 L440.12,97.15 L445.11,96.14 L450.10,95.15 
L455.09,94.17 L460.08,93.20 L465.06,92.25 L470.05,91.31
+               L475.04,90.38 L480.03,89.46 L485.02,88.56 L490.01,87.66 
L495.00,86.78 L499.99,85.91 L504.98,85.04 L509.96,84.19
+               L514.95,83.35 L519.94,82.51 L524.93,81.69 L529.92,80.87 
L534.91,80.07 L539.90,79.27 L544.89,78.48 L549.88,77.70
+               L554.86,76.93 L559.85,76.17 L564.84,75.41 L569.83,74.66 
L574.82,73.92  '/></g>
+       </g>
+<g fill="none" color="white" stroke="rgb(148,   0, 211)" stroke-width="2.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="black" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+       <path stroke='black'  d='M80.92,18.01 L80.92,422.40 L574.82,422.40 
L574.82,18.01 L80.92,18.01 Z  '/></g>
+<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" 
stroke-linecap="butt" stroke-linejoin="miter">
+</g>
+</g>
+</svg>
+
diff --git a/template/fees.html.j2 b/template/fees.html.j2
index 59312f0..29830c9 100644
--- a/template/fees.html.j2
+++ b/template/fees.html.j2
@@ -4,32 +4,59 @@
   name="description"
   content="{% trans %}Information about the fees Taler does, and does not 
collect.{% endtrans %}"
 />
-{# <meta name="author" content="" /> #} {% endblock %} {# FIXME: Holy f***ing
-sh** this needs to be restructured - I'm not even going to try to do this as of
-right now. #} {% block body_content %}
+{# <meta name="author" content="" /> #}
+{% endblock %}
+{% block body_content %}
 <main id="maincontent">
-  <section class="hero">
+  <section>
+    <h2>{% trans %}Wire transfer fee{% endtrans %}</h2>
+    <div class="toggle-content">
+      <p>
+        {% trans %}
+        A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an
+        outgoing wire transfer when Taler is used to deposit funds into a bank
+        account. Merchants are encouraged to allow Taler to delay and then
+        aggregate many small payments into a single collective wire transfer to
+        minimize wire transfer fees. For example, by configuring a
+        <b>wire deadline</b> of one week, all payments within a week could be
+        aggregated into a single wire transfer, and thus only be paying the 
wire
+        transfer fee once. The fee is simply subtracted from the total amount
+        wired.
+        {% endtrans %}
+      </p>
+    </div>
+  </section>
+  <section>
     <h2>{% trans %}Deposit fees{% endtrans %}</h2>
-    <p>
-      {% trans %} Withdrawing 5&nbsp;CHF creates electronic coins with
-      denominations of 0.04&nbsp;CHF, 0.16&nbsp;CHF, 0.32&nbsp;CHF,
-      0.64&nbsp;CHF, 1.28&nbsp;CHF, and 2.56&nbsp;CHF. Paying 3.23&nbsp;CHF
-      might then use the 0.04&nbsp;CHF, 0.64&nbsp;CHF and 2.56&nbsp;CHF coins,
-      resulting in a total of 3.24&nbsp;CHF with 0.01&nbsp;CHF returned as
-      change. {% endtrans %}
-    </p>
-    <p>
-      This matters, as the <b>deposit fees</b> charged by Taler payment
-      providers depend on the electronic coins used in the transaction.
-      Merchants can offer to pay deposit fees up to a specified limit; 
customers
-      have to pay deposit fees that exceed what the merchant is willing to
-      cover. Taler wallets inform customers about applicable deposit fees for
-      every transaction. The following table shows the deposit fee structure
-      used by Taler Operations:
-    </p>
-    <table
-      class="border-spacing-2 border-separate border border-slate-500 
rounded-3xl bg-slate-50 border-opacity-50"
-    >
+    <div class="toggle-content">
+      <p>
+        {% trans %}
+        Withdrawing 5&nbsp;CHF creates electronic coins with
+        denominations of 0.04&nbsp;CHF, 0.16&nbsp;CHF, 0.32&nbsp;CHF,
+        0.64&nbsp;CHF, 1.28&nbsp;CHF, and 2.56&nbsp;CHF. Paying 3.23&nbsp;CHF
+        might then use the 0.04&nbsp;CHF, 0.64&nbsp;CHF and 2.56&nbsp;CHF 
coins,
+        resulting in a total of 3.24&nbsp;CHF with 0.01&nbsp;CHF returned as
+        change.
+        {% endtrans %}
+      </p>
+      <p>
+        {% trans %}
+        The <b>deposit fees</b> charged by Taler payment
+        providers depend on the electronic coins used in the transaction.
+        Merchants can offer to pay deposit fees up to a specified limit; 
customers
+        have to pay deposit fees that exceed what the merchant is willing to
+        cover. Taler wallets inform customers about applicable deposit fees 
they
+        have to pay before every transaction.
+        {% endtrans %}
+      </p>
+      <p>
+        {% trans %}
+        The following table shows the deposit fee structure used by Taler 
Operations:
+        {% endtrans %}
+      </p>
+      <table
+        class="border-spacing-2 border-separate border border-slate-500 
rounded-3xl bg-slate-50 border-opacity-50"
+      >
       <tr>
         <th class="text-left p-2 bg-slate-200 bg-opacity-60 rounded-2xl">
           {% trans %}Coin denomination{% endtrans %}
@@ -62,59 +89,58 @@ right now. #} {% block body_content %}
           0.0010&nbsp;CHF
         </td>
       </tr>
-    </table>
-    <br />
+      </table>
+      <br />
+      <p>
+        {% trans %}
+        Merchants can set the merchant backend if they want to cover
+        customary fees which over over-approximate typical deposit
+        and wire fees, ensuring that customers virtually never have
+        to pay deposit fees. The following curve shows the customary
+        fees for different net transaction amounts.
+        {% endtrans %}
+      </p>
+      <img alt="Customary fees for different net amounts" style="width:400px" 
src="{{ url_static('images/stefan.svg') }}">
+    </div>
   </section>
 
   <section class="toggleable">
-    <div class="title">{% trans %}Bounce fee{% endtrans %}</div>
+    <h2>{% trans %}Bounce fee{% endtrans %}</h2>
     <div class="toggle-content">
       <p>
-        {% trans %} A <b>bounce fee</b> of <b>0.1&nbsp;CHF</b> is applied to
+        {% trans %}
+        A <b>bounce fee</b> of <b>0.1&nbsp;CHF</b> is applied to
         wire transfers that return funds to customers when either the Taler
         wallet did not withdraw the amount after <b>4 weeks</b>, or immediately
         if a wire transfer subject was used that is missing the required code 
to
         associate a wallet with the wire transfer. The fee is deducted from the
-        amount transferred back to the original account. {% endtrans %}
+        amount transferred back to the original account.
+        {% endtrans %}
       </p>
       <p>
-        {% trans %} Payers should be careful when entering the wire transfer
+        {% trans %}
+        Payers should be careful when entering the wire transfer
         subject, and ensure that their wallet is online within a month of
-        initiating the withdrawal to avoid paying bounce fees. {% endtrans %}
+        initiating the withdrawal to avoid paying bounce fees.
+        {% endtrans %}
       </p>
     </div>
   </section>
 
   <div class="toggleable">
-    <div class="title">Wire transfer fee</div>
-    <div class="toggle-content">
-      <p>
-        {% trans %} A <b>wire fee</b> of <b>0.1&nbsp;CHF</b> is charged on an
-        outgoing wire transfer when Taler is used to deposit funds into a bank
-        account. Merchants are encouraged to allow Taler to delay and then
-        aggregate many small payments into a single collective wire transfer to
-        minimize wire transfer fees. For example, by configuring a
-        <b>wire deadline</b> of one week, all payments within a week could be
-        aggregated into a single wire transfer, and thus only be paying the 
wire
-        transfer fee once. The fee is simply subtracted from the total amount
-        wired. {% endtrans %}
-      </p>
-    </div>
-  </div>
-
-  <div class="toggleable">
-    <div class="title">Possible loss of e-money due to expiration</div>
+    <h2>{% trans %}Possible loss of e-money due to expiration{% endtrans 
%}</h2>
     <div class="toggle-content">
       <p>
-        {% trans %} Taler eCHF is issued with a <b>1&nbsp;year</b> validity
+        {% trans %}
+        Taler eCHF is issued with a <b>1&nbsp;year</b> validity
         period. One month before the expiration date, you wallet should
         automatically exchange any eCHF that are about to expire for new eCHF
         with an extended validity period. However, if your wallet is offline 
for
         an extended period of time, it may be unable to do so. Ensure your
-        wallet is regularly online to avoid loosing money due to expiration! {%
-        endtrans %}
+        wallet is regularly online to avoid loosing money due to expiration!
+        {% endtrans %}
       </p>
     </div>
-  </div>
+  </section>
 </main>
 {% endblock body_content %}

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]