#[non_exhaustive]pub enum ErrorCode {
Show 19 variants
AlreadyCanceled,
AlreadyRefunded,
AuthenticationFailed,
BlockedCard,
Canceled,
Declined,
DeclinedNotRetryable,
ExpiredCard,
Fraud,
InvalidAmount,
InvalidPaymentDetails,
IssuerUnavailable,
NotEnoughBalance,
PreferredNetworkNotSupported,
PspError,
RedactedPaymentMethod,
SystemError,
TransactionNotPermitted,
Unknown,
}
Expand description
Reason why a payment attempt failed. Returns null
if payment captured successfully.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
AlreadyCanceled
Cancellation not possible because the amount has already been canceled. Not typically returned for payments.
AlreadyRefunded
Refund is not possible because the amount has already been refunded. Not typically returned for payments.
AuthenticationFailed
Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful.
BlockedCard
Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen.
Canceled
Customer has requested that the mandate for recurring payments be canceled.
Declined
Payment method has been declined, with no other information returned.
DeclinedNotRetryable
Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method.
ExpiredCard
Payment method issuer has indicated that this card is expired. Expired cards may also return invalid_payment_details
, depending on how a payment is routed.
Fraud
Payment method issuer or payment service provider flagged this payment as potentially fraudulent.
InvalidAmount
Payment method issuer or payment service provider cannot process a payment that is this high or low.
InvalidPaymentDetails
Payment service provider has indicated the payment method isn’t valid. This typically means that it’s expired. expired_card
is returned by the payment method issuer, rather than the payment service provider.
Payment service provider couldn’t reach the payment method issuer.
NotEnoughBalance
Payment method declined because of insufficient funds, or fund limits being reached.
PreferredNetworkNotSupported
Payment method has been declined because the network scheme that the customer selected isn’t supported by the payment service provider.
PspError
Something went wrong with the payment service provider, with no other information returned.
RedactedPaymentMethod
Payment service provider didn’t receive payment method information as they’ve been redacted.
SystemError
Something went wrong with the Paddle platform. Try again later, or check status.paddle.com.
TransactionNotPermitted
Payment method issuer doesn’t allow this kind of payment because of limits on the account, or legal or compliance reasons.
Unknown
Payment attempt unsuccessful, with no other information returned.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ErrorCode
impl<'de> Deserialize<'de> for ErrorCode
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Ord for ErrorCode
impl Ord for ErrorCode
Source§impl PartialOrd for ErrorCode
impl PartialOrd for ErrorCode
impl Eq for ErrorCode
impl StructuralPartialEq for ErrorCode
Auto Trait Implementations§
impl Freeze for ErrorCode
impl RefUnwindSafe for ErrorCode
impl Send for ErrorCode
impl Sync for ErrorCode
impl Unpin for ErrorCode
impl UnwindSafe for ErrorCode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.