From bca39b91cd13eb1d76fe37dc8d371cf8eab38083 Mon Sep 17 00:00:00 2001 From: padreug Date: Sun, 6 Jul 2025 00:54:19 +0200 Subject: [PATCH] Enhance commission memo generation in transaction processing: Added discount handling to the commission memo in LamassuTransactionProcessor, allowing for the calculation of effective commission percentages when discounts are applied. This improves clarity in transaction details by providing a more accurate representation of commissions after discounts. --- transaction_processor.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/transaction_processor.py b/transaction_processor.py index 895f8d7..a32a32c 100644 --- a/transaction_processor.py +++ b/transaction_processor.py @@ -1061,7 +1061,19 @@ class LamassuTransactionProcessor: # Create invoice in commission wallet with DCA metrics fiat_amount = transaction.get("fiat_amount", 0) commission_percentage = transaction.get("commission_percentage", 0) * 100 # Convert to percentage - commission_memo = f"DCA Commission: {commission_amount_sats:,} sats • {commission_percentage:.1f}% • {fiat_amount:,} GTQ transaction" + discount = transaction.get("discount", 0.0) # Discount percentage + + # Calculate effective commission for display + if commission_percentage > 0: + effective_commission_percentage = commission_percentage * (100 - discount) / 100 + else: + effective_commission_percentage = 0.0 + + # Create detailed memo showing discount if applied + if discount > 0: + commission_memo = f"DCA Commission: {commission_amount_sats:,} sats • {commission_percentage:.1f}% - {discount:.1f}% discount = {effective_commission_percentage:.1f}% effective • {fiat_amount:,} GTQ transaction" + else: + commission_memo = f"DCA Commission: {commission_amount_sats:,} sats • {commission_percentage:.1f}% • {fiat_amount:,} GTQ transaction" commission_payment = await create_invoice( wallet_id=admin_config.commission_wallet_id,