feat(connector): [NOVALNET] Implemented Sepa Direct Debit and Sepa Direct Debit with Payment Guarantee (#9700)

Co-authored-by: Sayak Bhattacharya <sayak.b@Sayak-Bhattacharya-G092THXJ34.local>
Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com>
This commit is contained in:
Sayak Bhattacharya
2025-10-16 17:30:24 +05:30
committed by GitHub
parent 79e1443c00
commit b4eceae3a7
38 changed files with 385 additions and 61 deletions

View File

@ -2470,6 +2470,16 @@ pub enum BankDebitData {
#[schema(value_type = String, example = "A. Schneider")]
bank_account_holder_name: Option<Secret<String>>,
},
SepaGuarenteedBankDebit {
/// Billing details for bank debit
billing_details: Option<BankDebitBilling>,
/// International bank account number (iban) for SEPA
#[schema(value_type = String, example = "DE89370400440532013000")]
iban: Secret<String>,
/// Owner name for bank debit
#[schema(value_type = String, example = "A. Schneider")]
bank_account_holder_name: Option<Secret<String>>,
},
BecsBankDebit {
/// Billing details for bank debit
billing_details: Option<BankDebitBilling>,
@ -2529,6 +2539,11 @@ impl GetAddressFromPaymentMethodData for BankDebitData {
bank_account_holder_name,
..
}
| Self::SepaGuarenteedBankDebit {
billing_details,
bank_account_holder_name,
..
}
| Self::BecsBankDebit {
billing_details,
bank_account_holder_name,
@ -3055,6 +3070,9 @@ impl GetPaymentMethodType for BankDebitData {
Self::SepaBankDebit { .. } => api_enums::PaymentMethodType::Sepa,
Self::BecsBankDebit { .. } => api_enums::PaymentMethodType::Becs,
Self::BacsBankDebit { .. } => api_enums::PaymentMethodType::Bacs,
Self::SepaGuarenteedBankDebit { .. } => {
api_enums::PaymentMethodType::SepaGuarenteedDebit
}
}
}
}

View File

@ -13,6 +13,7 @@ pub enum BankDebitAdditionalData {
Bacs(Box<BacsBankDebitAdditionalData>),
Becs(Box<BecsBankDebitAdditionalData>),
Sepa(Box<SepaBankDebitAdditionalData>),
SepaGuarenteedDebit(Box<SepaBankDebitAdditionalData>),
}
#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize, ToSchema)]