pub enum PaymentFailureReason {
RecipientRejected,
UserAbandoned,
RetriesExhausted,
PaymentExpired,
RouteNotFound,
UnexpectedError,
UnknownRequiredFeatures,
InvoiceRequestExpired,
InvoiceRequestRejected,
BlindedPathCreationFailed,
}Expand description
The reason the payment failed. Used in Event::PaymentFailed.
Variants§
RecipientRejected
The intended recipient rejected our payment.
Also used for UnknownRequiredFeatures and InvoiceRequestRejected when downgrading to
version prior to 0.0.124.
UserAbandoned
The user chose to abandon this payment by calling ChannelManager::abandon_payment.
RetriesExhausted
We exhausted all of our retry attempts while trying to send the payment, or we
exhausted the Retry::Timeout if the user set one.
If at any point a retry attempt failed while being forwarded along the path, an Event::PaymentPathFailed will
have come before this.
PaymentExpired
The payment expired while retrying, based on the provided
PaymentParameters::expiry_time.
Also used for InvoiceRequestExpired when downgrading to version prior to 0.0.124.
RouteNotFound
We failed to find a route while sending or retrying the payment.
Note that this generally indicates that we’ve exhausted the available set of possible routes - we tried the payment over a few routes but were not able to find any further candidate routes beyond those.
Also used for BlindedPathCreationFailed when downgrading to versions prior to 0.0.124.
UnexpectedError
This error should generally never happen. This likely means that there is a problem with your router.
UnknownRequiredFeatures
An invoice was received that required unknown features.
InvoiceRequestExpired
A Bolt12Invoice was not received in a reasonable amount of time.
InvoiceRequestRejected
An InvoiceRequest for the payment was rejected by the recipient.
BlindedPathCreationFailed
Failed to create a blinded path back to ourselves.
We attempted to initiate payment to a static invoice but failed to create a reply path for our
HeldHtlcAvailable message.
Trait Implementations§
Source§impl Clone for PaymentFailureReason
impl Clone for PaymentFailureReason
Source§fn clone(&self) -> PaymentFailureReason
fn clone(&self) -> PaymentFailureReason
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more