summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2021-07-22 19:58:46 +0200
committerFlorian Dold <florian@dold.me>2021-07-22 19:59:25 +0200
commit59606705d11c3173e87873d700075b4a6acff2f0 (patch)
tree0e4ea151c28bc2b64bc8a4acb230c18781ca8c11
parent265fff6ca125bed77b1745cf8bbda0e58871e160 (diff)
downloadmerchant-59606705d11c3173e87873d700075b4a6acff2f0.tar.gz
merchant-59606705d11c3173e87873d700075b4a6acff2f0.tar.bz2
merchant-59606705d11c3173e87873d700075b4a6acff2f0.zip
comment about abort-pay
m---------contrib/merchant-backoffice0
-rw-r--r--src/backend/taler-merchant-httpd_post-orders-ID-pay.c9
2 files changed, 9 insertions, 0 deletions
diff --git a/contrib/merchant-backoffice b/contrib/merchant-backoffice
-Subproject fe987187e178816d42ed12178d430c8771cb5a7
+Subproject 4320467db1392e5f48a4acd079f7e2a253cf998
diff --git a/src/backend/taler-merchant-httpd_post-orders-ID-pay.c b/src/backend/taler-merchant-httpd_post-orders-ID-pay.c
index 233ed183..2efbade0 100644
--- a/src/backend/taler-merchant-httpd_post-orders-ID-pay.c
+++ b/src/backend/taler-merchant-httpd_post-orders-ID-pay.c
@@ -1044,6 +1044,15 @@ check_coin_refunded (void *cls,
{
struct PayContext *pc = cls;
+ /* We look at refunds here that apply to the coins
+ that the customer is currently trying to pay us with.
+
+ Such refunds are not "normal" refunds, but abort-pay refunds, which are
+ given in the case that the wallet aborts the payment.
+ In the case the wallet then decides to complete the payment *after* doing
+ an abort-pay refund (an unusual but possible case), we need
+ to make sure that existing refunds are accounted for. */
+
for (unsigned int i = 0; i<pc->coins_cnt; i++)
{
struct DepositConfirmation *dc = &pc->dc[i];