Function breez_sdk_liquid::lightning_invoice::payment::pay_invoice
pub fn pay_invoice<M, T, ES, NS, SP, F, R, L>(
invoice: &Bolt11Invoice,
retry_strategy: Retry,
channelmanager: &ChannelManager<M, T, ES, NS, SP, F, R, L>,
) -> Result<PaymentId, PaymentError>where
M: Deref,
T: Deref,
ES: Deref,
NS: Deref,
SP: Deref,
F: Deref,
R: Deref,
L: Deref,
<M as Deref>::Target: Watch<<<SP as Deref>::Target as SignerProvider>::Signer>,
<T as Deref>::Target: BroadcasterInterface,
<ES as Deref>::Target: EntropySource,
<NS as Deref>::Target: NodeSigner,
<SP as Deref>::Target: SignerProvider,
<F as Deref>::Target: FeeEstimator,
<R as Deref>::Target: Router,
<L as Deref>::Target: Logger,
Expand description
Pays the given Bolt11Invoice
, retrying if needed based on Retry
.
Bolt11Invoice::payment_hash
is used as the PaymentId
, which ensures idempotency as long
as the payment is still pending. If the payment succeeds, you must ensure that a second payment
with the same PaymentHash
is never sent.
If you wish to use a different payment idempotency token, see pay_invoice_with_id
.