[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-docs] branch master updated: Refinement of wallet withdrawal API
From: |
gnunet |
Subject: |
[taler-docs] branch master updated: Refinement of wallet withdrawal API |
Date: |
Tue, 21 Jul 2020 18:59:44 +0200 |
This is an automated email from the git hooks/post-receive script.
torsten-grote pushed a commit to branch master
in repository docs.
The following commit(s) were added to refs/heads/master by this push:
new f3262a6 Refinement of wallet withdrawal API
f3262a6 is described below
commit f3262a657156df62f062a55aaca3b7704e0d8c35
Author: Torsten Grote <t@grobox.de>
AuthorDate: Tue Jul 21 13:59:22 2020 -0300
Refinement of wallet withdrawal API
---
taler-wallet.rst | 125 +++++++++++++++++++++++++------------------------------
1 file changed, 57 insertions(+), 68 deletions(-)
diff --git a/taler-wallet.rst b/taler-wallet.rst
index 604203b..ede006a 100644
--- a/taler-wallet.rst
+++ b/taler-wallet.rst
@@ -468,29 +468,6 @@ Add Exchange
On success, the response is an `ExchangeListItem`.
-Get Suggested Exchanges
-~~~~~~~~~~~~~~~~~~~~~~~
-
-:Name: ``"getSuggestedExchanges"``
-:Description:
- Get default exchange and the bank's suggested exchange for a given
withdrawal URI.
-:Request:
- .. ts:def:: ExchangeGetSuggestedRequest
-
- interface ExchangeGetSuggestedRequest {
- talerWithdrawUri: string;
- }
-:Response:
- .. ts:def:: ExchangeGetSuggestedResponse
-
- interface ExchangeGetSuggestedResponse {
- // Exchange suggested by the wallet
- defaultExchange?: string;
-
- // Exchange suggested by the bank
- bankSuggestedExchange?: string;
- }
-
Get Terms of Service
~~~~~~~~~~~~~~~~~~~~
@@ -543,6 +520,26 @@ Set Accepted Terms of Service Version
Withdrawal
----------
+A typical API sequence for *bank-integrated* withdrawals can for example look
like this:
+
+#. ``"getWithdrawalDetailsForUri"`` returns an amount and default exchange
+#. ``"getWithdrawalDetailsForAmount"`` returns fee information and that ToS
are not accepted
+
+ #. ``"getExchangeTos"`` are shown to the user and return currentEtag
+ #. ``"setExchangeTosAccepted"`` called with currentEtag after user accepted
+
+#. ``"acceptWithdrawal"`` after the user confirmed withdrawal with associated
fees
+
+A typical API sequence for *manual* withdrawals can for example look like this:
+
+#. ``"listExchanges"`` shows a list of exchanges to the user who picks one and
an amount
+#. ``"getWithdrawalDetailsForAmount"`` returns fee information and that ToS
are not accepted
+
+ #. ``"getExchangeTos"`` are shown to the user and return currentEtag
+ #. ``"setExchangeTosAccepted"`` called with currentEtag after user accepted
+
+#. ``"acceptManualWithdrawal"`` after the user confirmed withdrawal with
associated fees
+
Withdraw balance from test environment
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -556,29 +553,56 @@ Withdraw balance from test environment
:Response:
On success, the response is an empty object.
-
-Get Withdrawal Info For Bank-integrated Withdrawal
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Get Details For Bank-integrated Withdrawal
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:Name: ``"getWithdrawalDetailsForUri"``
:Description:
- Get information about fees for a bank-integrated withdrawal from a
taler://withdraw URI.
+ Get information about exchanges for a bank-integrated withdrawal from a
taler://withdraw URI.
:Request:
- .. ts:def:: GetManualWithdrawalDetailsRequest
+ .. ts:def:: GetWithdrawalUriDetailsRequest
- interface GetManualWithdrawalDetailsRequest {
+ interface GetWithdrawalUriDetailsRequest {
talerWithdrawUri: string;
- exchangeBaseUrl: string;
}
:Response:
.. ts:def:: WithdrawalDetailsForUri
interface WithdrawalDetailsForUri {
- // Did the user accept the current version of the exchange's
- // terms of service?
+ // The amount that the user wants to withdraw
+ amount: Amount;
+
+ // Exchange suggested by the wallet
+ defaultExchangeBaseUrl?: string;
+
+ // A list of exchanges that can be used for this withdrawal
+ possibleExchanges: ExchangeListItem[];
+ }
+
+Get Withdrawal Details
+~~~~~~~~~~~~~~~~~~~~~~
+
+:Name: ``"getWithdrawalDetailsForAmount"``
+:Description:
+ Get information about fees and exchange for a withdrawal of a given amount.
+ Can be used for both bank-integrated and manual withdrawals.
+:CLI:
+ ``taler-wallet-cli advanced manual-withdrawal-details $URL $AMOUNT``
+:Request:
+ .. ts:def:: WithdrawalDetailsRequest
+
+ interface WithdrawalDetailsRequest {
+ exchangeBaseUrl: string;
+ amount: Amount;
+ }
+:Response:
+ .. ts:def:: WithdrawalDetails
+
+ interface WithdrawalDetails {
+ // Did the user accept the current version of the exchange's terms of
service?
tosAccepted: boolean;
- // Amount that the bank will transfer to the exchange.
+ // Amount that will be transferred to the exchange.
rawAmount: Amount;
// Amount that will be added to the user's wallet balance.
@@ -606,41 +630,6 @@ Accept Bank-integrated Withdrawal
bankConfirmationUrl?: string;
}
-Get Manual Withdrawal Info
-~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-:Name: ``"getWithdrawalDetailsForAmount"``
-:Description:
- Get information about fees and exchange for a manual withdrawal of a given
amount.
-:CLI:
- ``taler-wallet-cli advanced manual-withdrawal-details $URL $AMOUNT``
-:Request:
- .. ts:def:: GetManualWithdrawalDetailsRequest
-
- interface ExchangeAddRequest {
- exchangeBaseUrl: string;
- amount: string;
- }
-:Response:
- .. ts:def:: ManualWithdrawalDetails
-
- interface ManualWithdrawalDetails {
- // Did the user accept the current version of the exchange's
- // terms of service?
- tosAccepted: boolean;
-
- // Amount that the user will transfer to the exchange.
- rawAmount: Amount;
-
- // Amount that will be added to the user's wallet balance.
- effectiveAmount: Amount;
-
- // Ways to pay the exchange.
- // Does not include the amount and message, as the
- // withdrawal has not been accepted yet.
- paytoUris: string[];
- }
-
Accept Manual Withdrawal
~~~~~~~~~~~~~~~~~~~~~~~~
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-docs] branch master updated: Refinement of wallet withdrawal API,
gnunet <=