taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit 1c9d8e6cd9515d9ca3f39f7d95bc1a72498ba808
parent 2c37eb1c43c7d6e07db2643ad977b6d732098114
Author: Özgür Kesim <oec-taler@kesim.org>
Date:   Mon, 14 Jul 2025 14:30:54 +0200

[exchange] refine recoup-refresh

Diffstat:
Mcore/api-exchange.rst | 29+++++++++++++++--------------
1 file changed, 15 insertions(+), 14 deletions(-)

diff --git a/core/api-exchange.rst b/core/api-exchange.rst @@ -3441,14 +3441,10 @@ became minted, and proof ownership of the coin itself. .. http:post:: /recoup/withdraw - Demand that a batch of coins be refunded via wire transfer to the original owner. + Demand that a batch of coins be refunded to the reserve, + from which the coins were originally withdrawn. The coins must have been originated from the same call to withdraw, and be a subset of that original batch. - - The base URL for ``/recoup/``-requests may differ from the main base URL of the - exchange. The exchange MUST return a 307 or 308 redirection to the correct - base URL if this is the case. - The remaining amount on the coin will be credited to the reserve that the coins were withdrawn from, in the same withdraw request. @@ -3517,17 +3513,20 @@ became minted, and proof ownership of the coin itself. // a) the hash code of a blinded coin envelope (not to be recouped) // b) the disclosed coin details, in order to recoup it. type RecoupCoinData = - | BlindedEnvelopeHash - | RecoupDisclosedCoinDetails + | NonRecoupedCoin + | RecoupDisclosedCoinDetails, - .. ts:def:: BlindedEnvelopeHash + .. ts:def:: NonRecoupedCoin - // This is the SHA512 hash code of a blinded coin envelope, - // including the corresponding denomination's hash. - // It is the output of the TALER_coin_ev_hash function - // from libtalerutil. - type BlindedEnvelopeHash = HashCode; + interface NonRecoupedCoin { + type: "ev_hash"; + // This is the SHA512 hash code of a blinded coin envelope, + // including the corresponding denomination's hash. + // It is the output of the TALER_coin_ev_hash function + // from libtalerutil. + h: HashCode; + }; .. ts:def:: RecoupDisclosedCoinDetails @@ -3539,6 +3538,8 @@ became minted, and proof ownership of the coin itself. // for the (unblinded) coin's public key, // and the coin's signature to authorize the recoup request. interface RecoupDisclosedCoinDetails { + type: "details"; + // The coin's public key coin_pub: CoinPublicKey;