feat(payment_methods): receive card_holder_name in confirm flow when using token for payment (#2982)

Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com>
This commit is contained in:
Chethan Rao
2023-11-28 16:22:33 +05:30
committed by GitHub
parent c0116db271
commit e7ad3a4db8
40 changed files with 375 additions and 237 deletions

View File

@ -717,6 +717,14 @@ pub struct Card {
pub nick_name: Option<Secret<String>>,
}
#[derive(Eq, PartialEq, Debug, serde::Deserialize, serde::Serialize, Clone, ToSchema)]
#[serde(rename_all = "snake_case")]
pub struct CardToken {
/// The card holder's name
#[schema(value_type = String, example = "John Test")]
pub card_holder_name: Option<Secret<String>>,
}
#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize, ToSchema)]
#[serde(rename_all = "snake_case")]
pub enum CardRedirectData {
@ -846,6 +854,7 @@ pub enum PaymentMethodData {
Upi(UpiData),
Voucher(VoucherData),
GiftCard(Box<GiftCardData>),
CardToken(CardToken),
}
impl PaymentMethodData {
@ -873,7 +882,8 @@ impl PaymentMethodData {
| Self::Reward
| Self::Upi(_)
| Self::Voucher(_)
| Self::GiftCard(_) => None,
| Self::GiftCard(_)
| Self::CardToken(_) => None,
}
}
}
@ -1092,6 +1102,7 @@ pub enum AdditionalPaymentData {
GiftCard {},
Voucher {},
CardRedirect {},
CardToken {},
}
#[derive(Debug, Clone, Eq, PartialEq, serde::Deserialize, serde::Serialize, ToSchema)]
@ -1660,6 +1671,7 @@ pub enum PaymentMethodDataResponse {
Voucher,
GiftCard,
CardRedirect,
CardToken,
}
#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize, ToSchema)]
@ -2455,6 +2467,7 @@ impl From<AdditionalPaymentData> for PaymentMethodDataResponse {
AdditionalPaymentData::Voucher {} => Self::Voucher,
AdditionalPaymentData::GiftCard {} => Self::GiftCard,
AdditionalPaymentData::CardRedirect {} => Self::CardRedirect,
AdditionalPaymentData::CardToken {} => Self::CardToken,
}
}
}