mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-28 04:04:55 +08:00
refactor(core): add locker config to enable or disable locker (#3352)
Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com>
This commit is contained in:
@ -36,6 +36,8 @@ pub struct MandateResponse {
|
||||
pub payment_method_id: String,
|
||||
/// The payment method
|
||||
pub payment_method: String,
|
||||
/// The payment method type
|
||||
pub payment_method_type: Option<String>,
|
||||
/// The card details for mandate
|
||||
pub card: Option<MandateCardDetails>,
|
||||
/// Details about the customer’s acceptance
|
||||
@ -66,6 +68,15 @@ pub struct MandateCardDetails {
|
||||
#[schema(value_type = Option<String>)]
|
||||
/// A unique identifier alias to identify a particular card
|
||||
pub card_fingerprint: Option<Secret<String>>,
|
||||
/// The first 6 digits of card
|
||||
pub card_isin: Option<String>,
|
||||
/// The bank that issued the card
|
||||
pub card_issuer: Option<String>,
|
||||
/// The network that facilitates payment card transactions
|
||||
#[schema(value_type = Option<CardNetwork>)]
|
||||
pub card_network: Option<api_enums::CardNetwork>,
|
||||
/// The type of the payment card
|
||||
pub card_type: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Deserialize, ToSchema, Serialize)]
|
||||
|
||||
@ -109,6 +109,19 @@ pub struct CardDetail {
|
||||
/// Card Holder's Nick Name
|
||||
#[schema(value_type = Option<String>,example = "John Doe")]
|
||||
pub nick_name: Option<masking::Secret<String>>,
|
||||
|
||||
/// Card Issuing Country
|
||||
pub card_issuing_country: Option<String>,
|
||||
|
||||
/// Card's Network
|
||||
#[schema(value_type = Option<CardNetwork>)]
|
||||
pub card_network: Option<api_enums::CardNetwork>,
|
||||
|
||||
/// Issuer Bank for Card
|
||||
pub card_issuer: Option<String>,
|
||||
|
||||
/// Card Type
|
||||
pub card_type: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Debug, serde::Deserialize, serde::Serialize, ToSchema)]
|
||||
@ -177,6 +190,12 @@ pub struct CardDetailsPaymentMethod {
|
||||
pub expiry_year: Option<masking::Secret<String>>,
|
||||
pub nick_name: Option<masking::Secret<String>>,
|
||||
pub card_holder_name: Option<masking::Secret<String>>,
|
||||
pub card_isin: Option<String>,
|
||||
pub card_issuer: Option<String>,
|
||||
pub card_network: Option<api_enums::CardNetwork>,
|
||||
pub card_type: Option<String>,
|
||||
#[serde(default = "saved_in_locker_default")]
|
||||
pub saved_to_locker: bool,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Eq, PartialEq, serde::Serialize, serde::Deserialize)]
|
||||
@ -227,6 +246,18 @@ pub struct CardDetailFromLocker {
|
||||
|
||||
#[schema(value_type=Option<String>)]
|
||||
pub nick_name: Option<masking::Secret<String>>,
|
||||
|
||||
#[schema(value_type = Option<CardNetwork>)]
|
||||
pub card_network: Option<api_enums::CardNetwork>,
|
||||
|
||||
pub card_isin: Option<String>,
|
||||
pub card_issuer: Option<String>,
|
||||
pub card_type: Option<String>,
|
||||
pub saved_to_locker: bool,
|
||||
}
|
||||
|
||||
fn saved_in_locker_default() -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
impl From<CardDetailsPaymentMethod> for CardDetailFromLocker {
|
||||
@ -242,6 +273,11 @@ impl From<CardDetailsPaymentMethod> for CardDetailFromLocker {
|
||||
card_holder_name: item.card_holder_name,
|
||||
card_fingerprint: None,
|
||||
nick_name: item.nick_name,
|
||||
card_isin: item.card_isin,
|
||||
card_issuer: item.card_issuer,
|
||||
card_network: item.card_network,
|
||||
card_type: item.card_type,
|
||||
saved_to_locker: item.saved_to_locker,
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -255,6 +291,11 @@ impl From<CardDetailFromLocker> for CardDetailsPaymentMethod {
|
||||
expiry_year: item.expiry_year,
|
||||
nick_name: item.nick_name,
|
||||
card_holder_name: item.card_holder_name,
|
||||
card_isin: item.card_isin,
|
||||
card_issuer: item.card_issuer,
|
||||
card_network: item.card_network,
|
||||
card_type: item.card_type,
|
||||
saved_to_locker: item.saved_to_locker,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user