feat(connector): [BHN] Add BHN GiftCard Flow( Alpha) (#8701)

Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com>
This commit is contained in:
awasthi21
2025-08-22 22:00:03 +05:30
committed by GitHub
parent ad05dc4176
commit cb34ec51e0
36 changed files with 806 additions and 457 deletions

View File

@ -3024,6 +3024,7 @@ impl GetPaymentMethodType for GiftCardData {
match self {
Self::Givex(_) => api_enums::PaymentMethodType::Givex,
Self::PaySafeCard {} => api_enums::PaymentMethodType::PaySafeCard,
Self::BhnCardNetwork(_) => api_enums::PaymentMethodType::BhnCardNetwork,
}
}
}
@ -3033,6 +3034,23 @@ impl GetPaymentMethodType for GiftCardData {
pub enum GiftCardData {
Givex(GiftCardDetails),
PaySafeCard {},
BhnCardNetwork(BHNGiftCardDetails),
}
#[derive(serde::Deserialize, serde::Serialize, Debug, Clone, ToSchema, Eq, PartialEq)]
#[serde(rename_all = "snake_case")]
pub struct BHNGiftCardDetails {
/// The gift card or account number
#[schema(value_type = String)]
pub account_number: Secret<String>,
/// The security PIN for gift cards requiring it
#[schema(value_type = String)]
pub pin: Option<Secret<String>>,
/// The CVV2 code for Open Loop/VPLN products
#[schema(value_type = String)]
pub cvv2: Option<Secret<String>>,
/// The expiration date in MMYYYY format for Open Loop/VPLN products
#[schema(value_type = String)]
pub expiration_date: Option<String>,
}
#[derive(serde::Deserialize, serde::Serialize, Debug, Clone, ToSchema, Eq, PartialEq)]

View File

@ -200,6 +200,7 @@ pub struct LocalBankTransferAdditionalData {
pub enum GiftCardAdditionalData {
Givex(Box<GivexGiftCardAdditionalData>),
PaySafeCard {},
BhnCardNetwork {},
}
#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize, ToSchema)]