taler-docs

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

commit a740df5a08f16fe695334f8aace5ccb021197832
parent 63120ecba7bf99db6e3be498d6b9006d9d60ccdb
Author: bohdan-potuzhnyi <bohdan.potuzhnyi@gmail.com>
Date:   Sat, 25 Jul 2026 23:23:28 +0200

[mixed-payments] add description of updated logic for refund endpoint

Diffstat:
Mcore/merchant/post-private-orders-ORDER_ID-refund.rst | 12+++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/core/merchant/post-private-orders-ORDER_ID-refund.rst b/core/merchant/post-private-orders-ORDER_ID-refund.rst @@ -3,6 +3,10 @@ Increase the refund amount associated with a given order. The user should be redirected to the ``taler_refund_uri`` to trigger refund processing in the wallet. + Since ``vMixedPayments``. For orders with refunds settled through external payment methods, + the cumulative Taler refund must not exceed the full order total minus those + external refunds. + **Required permission:** ``orders-refund`` **Request:** @@ -24,10 +28,12 @@ The order is unknown to the merchant. Returned with ``TALER_EC_MERCHANT_GENERIC_ORDER_UNKNOWN``. :http:statuscode:`409 Conflict`: - The refund amount exceeds the amount originally paid or - the order was not yet paid. + The refund amount exceeds the amount originally paid, the combined Taler + and external refunds would exceed the full order total (since ``vMixedPayments``), or the order was + not yet paid. Returned with ``TALER_EC_MERCHANT_GENERIC_CURRENCY_MISMATCH`` or - ``TALER_EC_MERCHANT_PRIVATE_POST_ORDERS_ID_REFUND_ORDER_UNPAID``. + ``TALER_EC_MERCHANT_PRIVATE_POST_ORDERS_ID_REFUND_ORDER_UNPAID``, + ``TALER_EC_MERCHANT_PRIVATE_POST_ORDERS_ID_REFUND_INCONSISTENT_AMOUNT`` (since ``vMixedPayments``). :http:statuscode:`410 Gone`: It is too late for refunds, the exchange may have already wired the funds to the merchant.