summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--index.rst1
-rw-r--r--taler-uri.rst36
2 files changed, 37 insertions, 0 deletions
diff --git a/index.rst b/index.rst
index e883b581..4ed74072 100644
--- a/index.rst
+++ b/index.rst
@@ -60,6 +60,7 @@ interfaces between the core components of Taler.
api-auditor
api-bank
wireformats
+ taler-uri
---------
Licensing
diff --git a/taler-uri.rst b/taler-uri.rst
new file mode 100644
index 00000000..9165c281
--- /dev/null
+++ b/taler-uri.rst
@@ -0,0 +1,36 @@
+====================
+The taler URI scheme
+====================
+
+The `taler` URI scheme represents actions that are processed by a Taler wallet. The basic syntax is as follows:
+
+.. code:: none
+
+ 'taler://' action '/' params
+
+--------------------
+Requesting a Payment
+--------------------
+
+Payments are requested with the `pay` action. The parameters are a hierarchical identifier for the requested payment:
+
+
+.. code:: none
+
+ 'taler://pay/' merchant-host '/' merchant-query '/' merchant-instance '/' order-id [ '/' session-id ]
+
+The components `merchant-host`, `merchant-query` and `order-id` identify the URL that is used to claim the contract
+for this payment request.
+
+To make the URI shorter (which is important for QR code payments), `-` (minus) can be substituted to get a default value
+for some components:
+
+* the default for `merchant-instance` is `default`
+* the default for `merchant-query` is `/public/proposal`
+
+The following is a minimal example for a payment request from the demo merchant, using the default instance and no session-bound payment:
+
+.. code:: none
+
+ taler://pay/backend.demo.taler.net/-/-/2019.08.26-ABCED
+