summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2024-04-23 13:25:27 +0200
committerChristian Grothoff <christian@grothoff.org>2024-04-23 13:25:27 +0200
commitcc19de5812747329ffc5ebd0d36b4525cbbd0ce2 (patch)
treebcd39346f096131ee1b972b0e8018ade8b205d6e
parenta5869e599c206aa0ba0eeccd02cb517594bb0495 (diff)
downloaddocs-cc19de5812747329ffc5ebd0d36b4525cbbd0ce2.tar.gz
docs-cc19de5812747329ffc5ebd0d36b4525cbbd0ce2.tar.bz2
docs-cc19de5812747329ffc5ebd0d36b4525cbbd0ce2.zip
-formatting
-rw-r--r--design-documents/023-taler-kyc.rst89
1 files changed, 45 insertions, 44 deletions
diff --git a/design-documents/023-taler-kyc.rst b/design-documents/023-taler-kyc.rst
index c00a7532..f0907f99 100644
--- a/design-documents/023-taler-kyc.rst
+++ b/design-documents/023-taler-kyc.rst
@@ -442,10 +442,15 @@ body.
// Should always be ``TALER_EC_EXCHANGE_GENERIC_KYC_REQUIRED``.
code: number;
- // Human-readable description of the error, i.e. "missing parameter", "commitment violation", ...
- // Should give a human-readable hint about the error's nature. Optional, may change without notice!
+ // Human-readable description of the error, i.e. "missing parameter",
+ // "commitment violation", ... Should give a human-readable hint
+ // about the error's nature. Optional, may change without notice!
hint?: string;
+ // Hash of the payto:// account URI for which KYC
+ // is required.
+ h_payto: PaytoHash;
+
// Public key associated with the account. The client must sign
// the initial request for the KYC status using the corresponding
// private key. Will be either a reserve public key or a merchant
@@ -544,10 +549,6 @@ New endpoints
interface AccountKycStatus {
- // Current time of the exchange, used as part of
- // what the exchange signs over.
- now: Timestamp;
-
// Current AML state for the target account. True if
// operations are not happening due to staff processing
// paperwork *or* due to legal requirements (so the
@@ -644,18 +645,17 @@ New endpoints
provider, the SPA must request the respective process to be set-up by the
exchange via the ``/kyc-start/`` endpoint.
- **Request**:
-
- *If-None-Match*:
+ **Request:**
- The client MAY provide an ``If-None-Match`` header with an ETag.
+ *If-None-Match*:
+ The client MAY provide an ``If-None-Match`` header with an ETag.
- :query timeout_ms=MILLISECONDS:
- *Optional.* If specified, the exchange will wait up to MILLISECONDS for
- a change to a more recent legitimization measure before returning a 304
- Not Modified status.
+ :query timeout_ms=MILLISECONDS:
+ *Optional.* If specified, the exchange will wait up to MILLISECONDS for
+ a change to a more recent legitimization measure before returning a 304
+ Not Modified status.
- **Response**:
+ **Response:**
:http:statuscode:`200 OK`:
The body is a `KycProcessClientInformation`.
@@ -735,13 +735,13 @@ New endpoints
``$ID`` will encode both the ``$TARGET_TOKEN`` and the index of the selected
measure (but this should be irrelevant for the client).
- **Request**:
+ **Request:**
Basically oriented along the possible formats of a HTTP form being
POSTed. Details will depend on the form. The server will try to decode the
uploaded body from whatever format it is provided in.
- **Response**:
+ **Response:**
:http:statuscode:`204 No Content`:
The information was successfully uploaded. The SPA should fetch
@@ -762,11 +762,11 @@ New endpoints
practice, ``$ID`` will encode both the ``$TARGET_TOKEN`` and the index of
the selected measure (but this should be irrelevant for the client).
- **Request**:
+ **Request:**
Use empty JSON body for now.
- **Response**:
+ **Response:**
:http:statuscode:`200 Ok`:
The KYC process was successfully initiated. The URL is in a
@@ -959,14 +959,15 @@ New endpoints
KYC checks (by name) with their descriptions and a list of AML programs with
information about the required context.
- **Request**:
+ **Request:**
- *Taler-AML-Officer-Signature*: The client must provide Base-32 encoded EdDSA
- signature with ``$OFFICER_PRIV``, affirming the desire to obtain AML data.
- Note that this is merely a simple authentication mechanism, the details of
- the request are not protected by the signature.
+ *Taler-AML-Officer-Signature*:
+ The client must provide Base-32 encoded EdDSA signature with
+ ``$OFFICER_PRIV``, affirming the desire to obtain AML data. Note that
+ this is merely a simple authentication mechanism, the details of the
+ request are not protected by the signature.
- **Response**:
+ **Response:**
:http:statuscode:`200 Ok`:
Information about possible measures is returned in a
@@ -1060,23 +1061,23 @@ New endpoints
are computed on-demand. (This is OK as such requests
should be rare.)
- **Request**:
+ **Request:**
*Taler-AML-Officer-Signature*:
The client must provide Base-32 encoded EdDSA signature with
- ``$OFFICER_PRIV``, affirming the desire to obtain AML data. Note that this
- is merely a simple authentication mechanism, the details of the request are
- not protected by the signature.
-
- :query start_date=TIMESTAMP:
- *Optional*. Specifies the date when to
- start looking (inclusive). If not given, the start time of the
- exchange operation is used.
- :query end_date=TIMESTAMP:
- *Optional*. Specifies the date when to
- stop looking (exclusive). If not given, the current date is used.
+ ``$OFFICER_PRIV``, affirming the desire to obtain AML data. Note that this
+ is merely a simple authentication mechanism, the details of the request are
+ not protected by the signature.
+
+ :query start_date=TIMESTAMP:
+ *Optional*. Specifies the date when to
+ start looking (inclusive). If not given, the start time of the
+ exchange operation is used.
+ :query end_date=TIMESTAMP:
+ *Optional*. Specifies the date when to
+ stop looking (exclusive). If not given, the current date is used.
- **Response**:
+ **Response:**
.. ts:def:: EventCounter
@@ -1091,7 +1092,7 @@ New endpoints
Obtain list of AML decisions (filtered by $STATE). ``$STATE`` must be
either ``normal``, ``pending`` or ``frozen``.
- **Request**
+ **Request:**
*Taler-AML-Officer-Signature*:
The client must provide Base-32 encoded EdDSA signature with
@@ -1108,7 +1109,7 @@ New endpoints
interpretation. Defaults to ``INT64_MAX``, namely the biggest row id
possible in the database.
- **Response**
+ **Response:**
:http:statuscode:`200 OK`:
The responds will be an `AmlRecords` message.
@@ -1155,7 +1156,7 @@ New endpoints
Obtain deails about an AML decision.
- **Request**
+ **Request:**
*Taler-AML-Officer-Signature*:
The client must provide a Base-32 encoded EdDSA signature with
@@ -1167,7 +1168,7 @@ New endpoints
*Optional*. If set to yes, we return all historic
decisions for the account, and not only the last one.
- **Response**
+ **Response:**
:http:statuscode:`200 OK`:
The responds will be an `AmlDecisionDetails` message.
@@ -1244,9 +1245,9 @@ New endpoints
**Request:**
- The request must be an `AmlDecision` message.
+ The request body must be an `AmlDecision` message.
- **Response**
+ **Response:**
:http:statuscode:`204 No content`:
The AML decision has been executed and recorded successfully.