From 3f648bcadcd2013d20061c0249b1d73c7f93cad8 Mon Sep 17 00:00:00 2001
From: clauspeterhuebner
Date: Wed, 7 Jan 2026 16:41:52 +0100
Subject: [PATCH] only send TX-Receive-Email after disbursement if
recipient.email exists
---
.../resolver/TransactionLinkResolver.ts | 38 +++++++++++++------
1 file changed, 26 insertions(+), 12 deletions(-)
diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.ts b/backend/src/graphql/resolver/TransactionLinkResolver.ts
index 28412ea59..d5da5a612 100644
--- a/backend/src/graphql/resolver/TransactionLinkResolver.ts
+++ b/backend/src/graphql/resolver/TransactionLinkResolver.ts
@@ -674,18 +674,32 @@ export class TransactionLinkResolver {
methodLogger.error(errmsg)
throw new LogError(errmsg)
}
- await sendTransactionReceivedEmail({
- firstName: recipientFirstName,
- lastName: recipientUser.lastName,
- email: recipientUser.emailContact.email,
- language: recipientUser.language,
- memo,
- senderFirstName: senderUser.firstName,
- senderLastName: senderUser.lastName,
- senderEmail: senderUser.emailContact.email,
- transactionAmount: new Decimal(amount),
- })
-
+ if(recipientUser.emailContact?.email !== null){
+ if (methodLogger.isDebugEnabled()) {
+ methodLogger.debug('Sending Transaction Received Email to recipient:', recipientUser.firstName, recipientUser.lastName)
+ }
+ try {
+ await sendTransactionReceivedEmail({
+ firstName: recipientFirstName,
+ lastName: recipientUser.lastName,
+ email: recipientUser.emailContact.email,
+ language: recipientUser.language,
+ memo,
+ senderFirstName: senderUser.firstName,
+ senderLastName: senderUser.lastName,
+ senderEmail: senderUser.emailContact.email,
+ transactionAmount: new Decimal(amount),
+ })
+ } catch (e) {
+ const errmsg = `Send Transaction Received Email to recipient failed with error=${e}`
+ methodLogger.error(errmsg)
+ throw new Error(errmsg)
+ }
+ } else {
+ if (methodLogger.isDebugEnabled()) {
+ methodLogger.debug('Recipient as foreign user has no email contact, not sending Transaction Received Email to recipient:', recipientUser.firstName, recipientUser.lastName)
+ }
+ }
} catch (e) {
const errmsg = `Disburse JWT was not sent successfully with error=${e}`
methodLogger.error(errmsg)