mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-30 09:38:33 +08:00
fix: remove and/or resolve fixmes & todos in stripe compatibility (#218)
This commit is contained in:
@ -157,138 +157,142 @@ pub enum StripeErrorCode {
|
|||||||
},
|
},
|
||||||
#[error(error_type = StripeErrorType::InvalidRequestError, code = "", message = "The mandate information is invalid. {message}")]
|
#[error(error_type = StripeErrorType::InvalidRequestError, code = "", message = "The mandate information is invalid. {message}")]
|
||||||
PaymentIntentMandateInvalid { message: String },
|
PaymentIntentMandateInvalid { message: String },
|
||||||
// TODO: Some day implement all stripe error codes https://stripe.com/docs/error-codes
|
// [#216]: https://github.com/juspay/orca/issues/216
|
||||||
// AccountCountryInvalidAddress,
|
// Implement the remaining stripe error codes
|
||||||
// AccountErrorCountryChangeRequiresAdditionalSteps,
|
|
||||||
// AccountInformationMismatch,
|
/*
|
||||||
// AccountInvalid,
|
AccountCountryInvalidAddress,
|
||||||
// AccountNumberInvalid,
|
AccountErrorCountryChangeRequiresAdditionalSteps,
|
||||||
// AcssDebitSessionIncomplete,
|
AccountInformationMismatch,
|
||||||
// AlipayUpgradeRequired,
|
AccountInvalid,
|
||||||
// AmountTooLarge,
|
AccountNumberInvalid,
|
||||||
// AmountTooSmall,
|
AcssDebitSessionIncomplete,
|
||||||
// ApiKeyExpired,
|
AlipayUpgradeRequired,
|
||||||
// AuthenticationRequired,
|
AmountTooLarge,
|
||||||
// BalanceInsufficient,
|
AmountTooSmall,
|
||||||
// BankAccountBadRoutingNumbers,
|
ApiKeyExpired,
|
||||||
// BankAccountDeclined,
|
AuthenticationRequired,
|
||||||
// BankAccountExists,
|
BalanceInsufficient,
|
||||||
// BankAccountUnusable,
|
BankAccountBadRoutingNumbers,
|
||||||
// BankAccountUnverified,
|
BankAccountDeclined,
|
||||||
// BankAccountVerificationFailed,
|
BankAccountExists,
|
||||||
// BillingInvalidMandate,
|
BankAccountUnusable,
|
||||||
// BitcoinUpgradeRequired,
|
BankAccountUnverified,
|
||||||
// CardDeclineRateLimitExceeded,
|
BankAccountVerificationFailed,
|
||||||
// CardDeclined,
|
BillingInvalidMandate,
|
||||||
// CardholderPhoneNumberRequired,
|
BitcoinUpgradeRequired,
|
||||||
// ChargeAlreadyCaptured,
|
CardDeclineRateLimitExceeded,
|
||||||
// ChargeAlreadyRefunded,
|
CardDeclined,
|
||||||
// ChargeDisputed,
|
CardholderPhoneNumberRequired,
|
||||||
// ChargeExceedsSourceLimit,
|
ChargeAlreadyCaptured,
|
||||||
// ChargeExpiredForCapture,
|
ChargeAlreadyRefunded,
|
||||||
// ChargeInvalidParameter,
|
ChargeDisputed,
|
||||||
// ClearingCodeUnsupported,
|
ChargeExceedsSourceLimit,
|
||||||
// CountryCodeInvalid,
|
ChargeExpiredForCapture,
|
||||||
// CountryUnsupported,
|
ChargeInvalidParameter,
|
||||||
// CouponExpired,
|
ClearingCodeUnsupported,
|
||||||
// CustomerMaxPaymentMethods,
|
CountryCodeInvalid,
|
||||||
// CustomerMaxSubscriptions,
|
CountryUnsupported,
|
||||||
// DebitNotAuthorized,
|
CouponExpired,
|
||||||
// EmailInvalid,
|
CustomerMaxPaymentMethods,
|
||||||
// ExpiredCard,
|
CustomerMaxSubscriptions,
|
||||||
// IdempotencyKeyInUse,
|
DebitNotAuthorized,
|
||||||
// IncorrectAddress,
|
EmailInvalid,
|
||||||
// IncorrectCvc,
|
ExpiredCard,
|
||||||
// IncorrectNumber,
|
IdempotencyKeyInUse,
|
||||||
// IncorrectZip,
|
IncorrectAddress,
|
||||||
// InstantPayoutsConfigDisabled,
|
IncorrectCvc,
|
||||||
// InstantPayoutsCurrencyDisabled,
|
IncorrectNumber,
|
||||||
// InstantPayoutsLimitExceeded,
|
IncorrectZip,
|
||||||
// InstantPayoutsUnsupported,
|
InstantPayoutsConfigDisabled,
|
||||||
// InsufficientFunds,
|
InstantPayoutsCurrencyDisabled,
|
||||||
// IntentInvalidState,
|
InstantPayoutsLimitExceeded,
|
||||||
// IntentVerificationMethodMissing,
|
InstantPayoutsUnsupported,
|
||||||
// InvalidCardType,
|
InsufficientFunds,
|
||||||
// InvalidCharacters,
|
IntentInvalidState,
|
||||||
// InvalidChargeAmount,
|
IntentVerificationMethodMissing,
|
||||||
// InvalidCvc,
|
InvalidCardType,
|
||||||
// InvalidExpiryMonth,
|
InvalidCharacters,
|
||||||
// InvalidExpiryYear,
|
InvalidChargeAmount,
|
||||||
// InvalidNumber,
|
InvalidCvc,
|
||||||
// InvalidSourceUsage,
|
InvalidExpiryMonth,
|
||||||
// InvoiceNoCustomerLineItems,
|
InvalidExpiryYear,
|
||||||
// InvoiceNoPaymentMethodTypes,
|
InvalidNumber,
|
||||||
// InvoiceNoSubscriptionLineItems,
|
InvalidSourceUsage,
|
||||||
// InvoiceNotEditable,
|
InvoiceNoCustomerLineItems,
|
||||||
// InvoiceOnBehalfOfNotEditable,
|
InvoiceNoPaymentMethodTypes,
|
||||||
// InvoicePaymentIntentRequiresAction,
|
InvoiceNoSubscriptionLineItems,
|
||||||
// InvoiceUpcomingNone,
|
InvoiceNotEditable,
|
||||||
// LivemodeMismatch,
|
InvoiceOnBehalfOfNotEditable,
|
||||||
// LockTimeout,
|
InvoicePaymentIntentRequiresAction,
|
||||||
// Missing,
|
InvoiceUpcomingNone,
|
||||||
// NoAccount,
|
LivemodeMismatch,
|
||||||
// NotAllowedOnStandardAccount,
|
LockTimeout,
|
||||||
// OutOfInventory,
|
Missing,
|
||||||
// ParameterInvalidEmpty,
|
NoAccount,
|
||||||
// ParameterInvalidInteger,
|
NotAllowedOnStandardAccount,
|
||||||
// ParameterInvalidStringBlank,
|
OutOfInventory,
|
||||||
// ParameterInvalidStringEmpty,
|
ParameterInvalidEmpty,
|
||||||
// ParametersExclusive,
|
ParameterInvalidInteger,
|
||||||
// PaymentIntentActionRequired,
|
ParameterInvalidStringBlank,
|
||||||
// PaymentIntentIncompatiblePaymentMethod,
|
ParameterInvalidStringEmpty,
|
||||||
// PaymentIntentInvalidParameter,
|
ParametersExclusive,
|
||||||
// PaymentIntentKonbiniRejectedConfirmationNumber,
|
PaymentIntentActionRequired,
|
||||||
// PaymentIntentPaymentAttemptExpired,
|
PaymentIntentIncompatiblePaymentMethod,
|
||||||
// PaymentIntentUnexpectedState,
|
PaymentIntentInvalidParameter,
|
||||||
// PaymentMethodBankAccountAlreadyVerified,
|
PaymentIntentKonbiniRejectedConfirmationNumber,
|
||||||
// PaymentMethodBankAccountBlocked,
|
PaymentIntentPaymentAttemptExpired,
|
||||||
// PaymentMethodBillingDetailsAddressMissing,
|
PaymentIntentUnexpectedState,
|
||||||
// PaymentMethodCurrencyMismatch,
|
PaymentMethodBankAccountAlreadyVerified,
|
||||||
// PaymentMethodInvalidParameter,
|
PaymentMethodBankAccountBlocked,
|
||||||
// PaymentMethodInvalidParameterTestmode,
|
PaymentMethodBillingDetailsAddressMissing,
|
||||||
// PaymentMethodMicrodepositFailed,
|
PaymentMethodCurrencyMismatch,
|
||||||
// PaymentMethodMicrodepositVerificationAmountsInvalid,
|
PaymentMethodInvalidParameter,
|
||||||
// PaymentMethodMicrodepositVerificationAmountsMismatch,
|
PaymentMethodInvalidParameterTestmode,
|
||||||
// PaymentMethodMicrodepositVerificationAttemptsExceeded,
|
PaymentMethodMicrodepositFailed,
|
||||||
// PaymentMethodMicrodepositVerificationDescriptorCodeMismatch,
|
PaymentMethodMicrodepositVerificationAmountsInvalid,
|
||||||
// PaymentMethodMicrodepositVerificationTimeout,
|
PaymentMethodMicrodepositVerificationAmountsMismatch,
|
||||||
// PaymentMethodProviderDecline,
|
PaymentMethodMicrodepositVerificationAttemptsExceeded,
|
||||||
// PaymentMethodProviderTimeout,
|
PaymentMethodMicrodepositVerificationDescriptorCodeMismatch,
|
||||||
// PaymentMethodUnactivated,
|
PaymentMethodMicrodepositVerificationTimeout,
|
||||||
// PaymentMethodUnexpectedState,
|
PaymentMethodProviderDecline,
|
||||||
// PaymentMethodUnsupportedType,
|
PaymentMethodProviderTimeout,
|
||||||
// PayoutsNotAllowed,
|
PaymentMethodUnactivated,
|
||||||
// PlatformAccountRequired,
|
PaymentMethodUnexpectedState,
|
||||||
// PlatformApiKeyExpired,
|
PaymentMethodUnsupportedType,
|
||||||
// PostalCodeInvalid,
|
PayoutsNotAllowed,
|
||||||
// ProcessingError,
|
PlatformAccountRequired,
|
||||||
// ProductInactive,
|
PlatformApiKeyExpired,
|
||||||
// RateLimit,
|
PostalCodeInvalid,
|
||||||
// ReferToCustomer,
|
ProcessingError,
|
||||||
// RefundDisputedPayment,
|
ProductInactive,
|
||||||
// ResourceAlreadyExists,
|
RateLimit,
|
||||||
// ResourceMissing,
|
ReferToCustomer,
|
||||||
// ReturnIntentAlreadyProcessed,
|
RefundDisputedPayment,
|
||||||
// RoutingNumberInvalid,
|
ResourceAlreadyExists,
|
||||||
// SecretKeyRequired,
|
ResourceMissing,
|
||||||
// SepaUnsupportedAccount,
|
ReturnIntentAlreadyProcessed,
|
||||||
// SetupAttemptFailed,
|
RoutingNumberInvalid,
|
||||||
// SetupIntentAuthenticationFailure,
|
SecretKeyRequired,
|
||||||
// SetupIntentInvalidParameter,
|
SepaUnsupportedAccount,
|
||||||
// SetupIntentSetupAttemptExpired,
|
SetupAttemptFailed,
|
||||||
// SetupIntentUnexpectedState,
|
SetupIntentAuthenticationFailure,
|
||||||
// ShippingCalculationFailed,
|
SetupIntentInvalidParameter,
|
||||||
// SkuInactive,
|
SetupIntentSetupAttemptExpired,
|
||||||
// StateUnsupported,
|
SetupIntentUnexpectedState,
|
||||||
// StatusTransitionInvalid,
|
ShippingCalculationFailed,
|
||||||
// TaxIdInvalid,
|
SkuInactive,
|
||||||
// TaxesCalculationFailed,
|
StateUnsupported,
|
||||||
// TerminalLocationCountryUnsupported,
|
StatusTransitionInvalid,
|
||||||
// TestmodeChargesOnly,
|
TaxIdInvalid,
|
||||||
// TlsVersionUnsupported,
|
TaxesCalculationFailed,
|
||||||
// TokenInUse,
|
TerminalLocationCountryUnsupported,
|
||||||
// TransferSourceBalanceParametersMismatch,
|
TestmodeChargesOnly,
|
||||||
// TransfersNotAllowed,
|
TlsVersionUnsupported,
|
||||||
|
TokenInUse,
|
||||||
|
TransferSourceBalanceParametersMismatch,
|
||||||
|
TransfersNotAllowed,
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
impl ::core::fmt::Display for StripeErrorCode {
|
impl ::core::fmt::Display for StripeErrorCode {
|
||||||
|
|||||||
@ -188,12 +188,11 @@ pub enum StripePaymentStatus {
|
|||||||
RequiresCapture,
|
RequiresCapture,
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Verigy if the status are correct
|
|
||||||
impl From<api_enums::IntentStatus> for StripePaymentStatus {
|
impl From<api_enums::IntentStatus> for StripePaymentStatus {
|
||||||
fn from(item: api_enums::IntentStatus) -> Self {
|
fn from(item: api_enums::IntentStatus) -> Self {
|
||||||
match item {
|
match item {
|
||||||
api_enums::IntentStatus::Succeeded => Self::Succeeded,
|
api_enums::IntentStatus::Succeeded => Self::Succeeded,
|
||||||
api_enums::IntentStatus::Failed => Self::Canceled, // TODO: should we show canceled or processing
|
api_enums::IntentStatus::Failed => Self::Canceled,
|
||||||
api_enums::IntentStatus::Processing => Self::Processing,
|
api_enums::IntentStatus::Processing => Self::Processing,
|
||||||
api_enums::IntentStatus::RequiresCustomerAction => Self::RequiresAction,
|
api_enums::IntentStatus::RequiresCustomerAction => Self::RequiresAction,
|
||||||
api_enums::IntentStatus::RequiresPaymentMethod => Self::RequiresPaymentMethod,
|
api_enums::IntentStatus::RequiresPaymentMethod => Self::RequiresPaymentMethod,
|
||||||
|
|||||||
@ -181,12 +181,11 @@ pub enum StripeSetupStatus {
|
|||||||
RequiresConfirmation,
|
RequiresConfirmation,
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Verify if the status are correct
|
|
||||||
impl From<api_enums::IntentStatus> for StripeSetupStatus {
|
impl From<api_enums::IntentStatus> for StripeSetupStatus {
|
||||||
fn from(item: api_enums::IntentStatus) -> Self {
|
fn from(item: api_enums::IntentStatus) -> Self {
|
||||||
match item {
|
match item {
|
||||||
api_enums::IntentStatus::Succeeded => Self::Succeeded,
|
api_enums::IntentStatus::Succeeded => Self::Succeeded,
|
||||||
api_enums::IntentStatus::Failed => Self::Canceled, // TODO: should we show canceled or processing
|
api_enums::IntentStatus::Failed => Self::Canceled,
|
||||||
api_enums::IntentStatus::Processing => Self::Processing,
|
api_enums::IntentStatus::Processing => Self::Processing,
|
||||||
api_enums::IntentStatus::RequiresCustomerAction => Self::RequiresAction,
|
api_enums::IntentStatus::RequiresCustomerAction => Self::RequiresAction,
|
||||||
api_enums::IntentStatus::RequiresPaymentMethod => Self::RequiresPaymentMethod,
|
api_enums::IntentStatus::RequiresPaymentMethod => Self::RequiresPaymentMethod,
|
||||||
|
|||||||
Reference in New Issue
Block a user