mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-30 09:38:33 +08:00
feat(klarna): wallet payment through klarna (#182)
This commit is contained in:
@ -14,6 +14,11 @@ pub enum PaymentOp {
|
||||
Confirm,
|
||||
}
|
||||
|
||||
#[derive(Default, Debug, serde::Deserialize, serde::Serialize, Clone)]
|
||||
pub struct Metadata {
|
||||
pub order_details: OrderDetails,
|
||||
}
|
||||
|
||||
#[derive(Default, Debug, serde::Deserialize, serde::Serialize, Clone)]
|
||||
#[serde(deny_unknown_fields)]
|
||||
pub struct PaymentsRequest {
|
||||
@ -210,10 +215,30 @@ pub struct CCard {
|
||||
pub card_cvc: Secret<String>,
|
||||
}
|
||||
|
||||
#[derive(Default, Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize)]
|
||||
pub struct PayLaterData {
|
||||
pub billing_email: String,
|
||||
pub country: String,
|
||||
#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub enum KlarnaRedirectIssuer {
|
||||
Stripe,
|
||||
}
|
||||
|
||||
#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub enum KlarnaSdkIssuer {
|
||||
Klarna,
|
||||
}
|
||||
|
||||
#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub enum PayLaterData {
|
||||
KlarnaRedirect {
|
||||
issuer_name: KlarnaRedirectIssuer,
|
||||
billing_email: String,
|
||||
billing_country: String,
|
||||
},
|
||||
KlarnaSdk {
|
||||
issuer_name: KlarnaSdkIssuer,
|
||||
token: String,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Eq, PartialEq, serde::Deserialize, serde::Serialize)]
|
||||
@ -704,7 +729,22 @@ pub struct PaymentsRetrieveRequest {
|
||||
pub connector: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Default, Debug, serde::Deserialize, Clone)]
|
||||
#[derive(Debug, serde::Deserialize, Clone)]
|
||||
#[serde(rename_all = "snake_case")]
|
||||
pub enum SupportedWallets {
|
||||
Paypal,
|
||||
ApplePay,
|
||||
Klarna,
|
||||
Gpay,
|
||||
}
|
||||
|
||||
#[derive(Debug, Default, serde::Deserialize, serde::Serialize, Clone)]
|
||||
pub struct OrderDetails {
|
||||
pub product_name: String,
|
||||
pub quantity: u16,
|
||||
}
|
||||
|
||||
#[derive(Debug, serde::Deserialize, serde::Serialize, Clone)]
|
||||
pub struct PaymentsSessionRequest {
|
||||
pub payment_id: String,
|
||||
pub client_secret: String,
|
||||
|
||||
Reference in New Issue
Block a user