fix: lnbits fee calc (#1243)

* fix: lnbits fee calc
This commit is contained in:
tsk
2025-10-31 12:20:44 -04:00
committed by GitHub
parent 0c21cb59c6
commit dd3cb8a83a
2 changed files with 7 additions and 3 deletions

View File

@@ -11,7 +11,7 @@ use std::sync::Arc;
use anyhow::anyhow;
use async_trait::async_trait;
use cdk_common::amount::{to_unit, Amount};
use cdk_common::amount::{to_unit, Amount, MSAT_IN_SAT};
use cdk_common::common::FeeReserve;
use cdk_common::nuts::{CurrencyUnit, MeltOptions, MeltQuoteState};
use cdk_common::payment::{
@@ -244,7 +244,8 @@ impl MintPayment for LNbits {
let relative_fee_reserve =
(self.fee_reserve.percent_fee_reserve * u64::from(amount_msat) as f32) as u64;
let absolute_fee_reserve: u64 = self.fee_reserve.min_fee_reserve.into();
let absolute_fee_reserve: u64 =
u64::from(self.fee_reserve.min_fee_reserve) * MSAT_IN_SAT;
let fee = max(relative_fee_reserve, absolute_fee_reserve);
@@ -253,7 +254,7 @@ impl MintPayment for LNbits {
*bolt11_options.bolt11.payment_hash().as_ref(),
)),
amount: to_unit(amount_msat, &CurrencyUnit::Msat, unit)?,
fee: fee.into(),
fee: to_unit(fee, &CurrencyUnit::Msat, unit)?,
state: MeltQuoteState::Unpaid,
unit: unit.clone(),
})

View File

@@ -103,6 +103,9 @@ reserve_fee_min = 4
# admin_api_key = ""
# invoice_api_key = ""
# lnbits_api = ""
# fee_percent = 0.04
# # Fee in sats
# reserve_fee_min = 4
# Note: Only LNBits v1 API is supported (websocket-based)
# [lnd]