taler-docs

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

commit 0dd932ed2fedc5cd5f2bd0b0045d23926e699ce4
parent 67c0b0223b365e38a73cb5d89df651c264f51759
Author: Özgür Kesim <oec-taler@kesim.org>
Date:   Fri, 22 Dec 2023 23:10:13 +0100

refine conflict errors for deposit

Diffstat:
Mcore/api-exchange.rst | 23+++++++++++++----------
1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/core/api-exchange.rst b/core/api-exchange.rst @@ -540,7 +540,9 @@ possibly by using HTTPS. .. http:get:: /wire - Returns a list of payment methods supported by the exchange. The idea is that wallets may use this information to instruct users on how to perform wire transfers to top up their wallets. + Returns a list of payment methods supported by the exchange. The idea is + that wallets may use this information to instruct users on how to perform + wire transfers to top up their wallets. **Response:** @@ -2944,15 +2946,16 @@ proof to the seller for the escrow of sufficient fund. The deposit operation has either failed because a coin has insufficient residual value, or because the same public key of a coin has been previously used with a different denomination. - Which case it is - can be decided by looking at the error code - (``TALER_EC_EXCHANGE_DEPOSIT_CONFLICTING_CONTRACT`` (same coin used in different ways), - ``TALER_EC_EXCHANGE_GENERIC_INSUFFICIENT_FUNDS`` (balance insufficient) or - ``TALER_EC_EXCHANGE_GENERIC_COIN_CONFLICTING_DENOMINATION_KEY`` - (same coin public key, but different denomination)). - The fields of the response are still evolving (see bug 7267), - for now the format of the response is a `DepositDoubleSpendError`. - The request should not be repeated again with this coin. + Which case it is can be decided by looking at the error code: + + 1. ``TALER_EC_EXCHANGE_DEPOSIT_CONFLICTING_CONTRACT`` (same coin used in different ways), + 2. ``TALER_EC_EXCHANGE_GENERIC_INSUFFICIENT_FUNDS`` (balance insufficient), + 3. ``TALER_EC_EXCHANGE_GENERIC_COIN_CONFLICTING_DENOMINATION_KEY`` (same coin public key, but different denomination). + 4. ``TALER_EC_EXCHANGE_GENERIC_COIN_CONFLICTING_AGE_HASH`` (same coin public key, but different age commitment). + + The request should not be repeated again with this coin. Instead, the client + can get from the exchange via the ``/coin/$COIN_PUB/history`` endpoint the record + of the transactions known for this coin's public key. :http:statuscode:`410 Gone`: The requested denomination key is not yet or no longer valid. It either before the validity start, past the expiration or was revoked. The response is a