merchant

Merchant backend to process payments, run by merchants
Log | Files | Refs | Submodules | README | LICENSE

commit 351e03c2c4f733722004b4dbccb3b412a1d9b592
parent 1030eb67707813fd87b92e95fbb032b90fe77a05
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun,  7 Jun 2026 23:06:33 +0200

fix #11483

Diffstat:
Msrc/backend/taler-merchant-httpd_delete-private-accounts-H_WIRE.c | 20++++++++++++++++++++
1 file changed, 20 insertions(+), 0 deletions(-)

diff --git a/src/backend/taler-merchant-httpd_delete-private-accounts-H_WIRE.c b/src/backend/taler-merchant-httpd_delete-private-accounts-H_WIRE.c @@ -22,6 +22,7 @@ #include "taler-merchant-httpd_delete-private-accounts-H_WIRE.h" #include <taler/taler_json_lib.h> #include <taler/taler_dbevents.h> +#include "taler-merchant-httpd_mfa.h" #include "merchant-database/inactivate_account.h" #include "merchant-database/event_notify.h" @@ -49,6 +50,25 @@ TMH_private_delete_account_ID (const struct TMH_RequestHandler *rh, "h_wire"); } GNUNET_assert (NULL != mi); + { + /* MFA needed: deleting a bank account changes the + account configuration of the instance. */ + enum GNUNET_GenericReturnValue ret; + + ret = TMH_mfa_check_simple ( + hc, + TALER_MERCHANT_MFA_CO_ACCOUNT_CONFIGURATION, + mi); + GNUNET_log (GNUNET_ERROR_TYPE_INFO, + "Account deletion MFA check returned %d\n", + (int) ret); + if (GNUNET_OK != ret) + { + return (GNUNET_NO == ret) + ? MHD_YES + : MHD_NO; + } + } qs = TALER_MERCHANTDB_inactivate_account (TMH_db, mi->settings.id, &h_wire);