diff --git a/Plugins/BTCPayServer.Plugins.Prism/BTCPayServer.Plugins.Prism.csproj b/Plugins/BTCPayServer.Plugins.Prism/BTCPayServer.Plugins.Prism.csproj
index 883d92d..dd81dad 100644
--- a/Plugins/BTCPayServer.Plugins.Prism/BTCPayServer.Plugins.Prism.csproj
+++ b/Plugins/BTCPayServer.Plugins.Prism/BTCPayServer.Plugins.Prism.csproj
@@ -11,7 +11,7 @@
LN Prism
Automated value splits for lightning.
- 1.1.3
+ 1.1.4
diff --git a/Plugins/BTCPayServer.Plugins.Prism/Components/PrismEdit.razor b/Plugins/BTCPayServer.Plugins.Prism/Components/PrismEdit.razor
index 5c0ad9a..aee304d 100644
--- a/Plugins/BTCPayServer.Plugins.Prism/Components/PrismEdit.razor
+++ b/Plugins/BTCPayServer.Plugins.Prism/Components/PrismEdit.razor
@@ -160,6 +160,7 @@ else
private void SatBreakerOnPrismUpdated(object sender, PrismPaymentDetectedEventArgs e)
{
+ if(e.StoreId != StoreId) return;
if (e.Settings != Settings && e.Settings.Version != Settings.Version)
{
Settings.DestinationBalance = e.Settings.DestinationBalance;
diff --git a/Plugins/BTCPayServer.Plugins.Prism/SatBreaker.cs b/Plugins/BTCPayServer.Plugins.Prism/SatBreaker.cs
index 57d772b..60ead58 100644
--- a/Plugins/BTCPayServer.Plugins.Prism/SatBreaker.cs
+++ b/Plugins/BTCPayServer.Plugins.Prism/SatBreaker.cs
@@ -362,7 +362,7 @@ namespace BTCPayServer.Plugins.Prism
{
prismSettings.DestinationBalance[destination] = currentBalance + splitMSats;
}
- else
+ else if(splitMSats > 0)
{
prismSettings.DestinationBalance.Add(destination, splitMSats);
}
@@ -438,8 +438,13 @@ namespace BTCPayServer.Plugins.Prism
prismSettings.PendingPayouts ??= new();
prismSettings.PendingPayouts.Add(payout.PayoutData.Id,
new PendingPayout(payoutAmount, reserveFee));
- prismSettings.DestinationBalance.AddOrReplace(destination,
- amtMsats - (payoutAmount + reserveFee) * 1000);
+ var newAmount = amtMsats - (payoutAmount + reserveFee) * 1000;
+ if(newAmount == 0)
+ prismSettings.DestinationBalance.Remove(destination);
+ else
+ {
+ prismSettings.DestinationBalance.AddOrReplace(destination,newAmount);
+ }
result = true;
}
}