Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(connector): [MIFINITY] Implement payment flows and Mifinity payment method #4592

Merged
merged 49 commits into from
Jun 6, 2024
Merged
Show file tree
Hide file tree
Changes from 33 commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
c492f98
refactor: add template code for mifinity
swangi-kumari Apr 24, 2024
c7a161b
docs(openapi): re-generate OpenAPI specification
hyperswitch-bot[bot] Apr 24, 2024
1b75cee
Merge branch 'main' into mifinity-template-code
swangi-kumari Apr 26, 2024
90c4bd8
refactor: fix
swangi-kumari Apr 26, 2024
21b4c61
docs(openapi): re-generate OpenAPI specification
hyperswitch-bot[bot] Apr 26, 2024
9712441
Merge branch 'main' into mifinity-template-code
swangi-kumari Apr 29, 2024
87ba8dd
feat: implement mifinity
swangi-kumari May 8, 2024
8ffb2a4
Merge branch 'main' into mifinity-impl
swangi-kumari May 8, 2024
6cccbf2
Merge branch 'main' into mifinity-impl
swangi-kumari May 9, 2024
54a5703
refactor: payments
swangi-kumari May 9, 2024
120320a
Merge branch 'main' into mifinity-impl
swangi-kumari May 14, 2024
5631bac
feat: payments and sync
swangi-kumari May 15, 2024
6d5004f
refactor: transaction_reference in psync
swangi-kumari May 16, 2024
61544a9
chore: run formatter
hyperswitch-bot[bot] May 16, 2024
bc9924e
refactor: add brand_id for mifinity in metadata
swangi-kumari May 16, 2024
78fdc58
Merge branch 'mifinity-impl' of https://github.com/juspay/hyperswitch…
swangi-kumari May 16, 2024
4abddb7
refactor: solve clippy
swangi-kumari May 16, 2024
d547e85
Merge branch 'main' into mifinity-impl
swangi-kumari May 17, 2024
8690792
refactor: clippy
swangi-kumari May 17, 2024
e746994
refactor: add dependency to support Date
swangi-kumari May 18, 2024
9b2f176
time dependency added
KiranKBR May 20, 2024
c4b75c5
chore: run formatter
hyperswitch-bot[bot] May 20, 2024
e3eab66
transfermer status update
KiranKBR May 20, 2024
b597beb
Merge branch 'mifinity-impl' of https://github.com/juspay/hyperswitch…
swangi-kumari May 20, 2024
e3e502b
refactor: resolve clippy
swangi-kumari May 21, 2024
4cc284d
feature enabled serde-human-readable
KiranKBR May 21, 2024
a424a3f
refactor: resolve clippy
swangi-kumari May 21, 2024
7f12a42
Merge branch 'mifinity-impl' of https://github.com/juspay/hyperswitch…
swangi-kumari May 21, 2024
dadb522
refactor: opdate openapi
swangi-kumari May 21, 2024
374c9e8
refactor: fix openapi
swangi-kumari May 22, 2024
c917034
Merge branch 'main' into mifinity-impl
swangi-kumari May 22, 2024
7e7753f
refactor: resolve clippy
swangi-kumari May 22, 2024
35fee25
refactor: solve open api
swangi-kumari May 22, 2024
ff6a76c
refactor: resolve comments and handle psync for no response scenario
swangi-kumari May 23, 2024
fc9b6e3
Merge branch 'main' into mifinity-impl
swangi-kumari May 23, 2024
0ac186f
refactor: resolve conflicts
swangi-kumari May 23, 2024
02c8dad
refactor: comments
swangi-kumari May 27, 2024
aca02c2
refactor: resolve comments
swangi-kumari May 27, 2024
486c9f4
Merge branch 'main' into mifinity-impl
swangi-kumari May 27, 2024
81844d0
docs(openapi): re-generate OpenAPI specification
hyperswitch-bot[bot] May 27, 2024
cdb990c
Merge branch 'mifinity-impl' of https://github.com/juspay/hyperswitch…
swangi-kumari May 27, 2024
e749d59
refactor: solve clippy
swangi-kumari May 27, 2024
2adf3e7
refactor: add required fields
swangi-kumari May 27, 2024
b262b9f
Merge branch 'main' into mifinity-impl
swangi-kumari May 27, 2024
ba118d1
refactor: make trace_id as string
swangi-kumari May 27, 2024
36e5d9b
refactor: resolce conflicts
swangi-kumari May 30, 2024
e8d7fb3
refactor: make brand id secrte in meta data
swangi-kumari Jun 4, 2024
277f481
refactor: resolve cnflicts
swangi-kumari Jun 5, 2024
0fe7493
refactor: resolve conflicts
swangi-kumari Jun 6, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions crates/api_models/src/enums.rs
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ pub enum Connector {
Helcim,
Iatapay,
Klarna,
// Mifinity, Added as template code for future usage
Mifinity,
Mollie,
Multisafepay,
Netcetera,
Expand Down Expand Up @@ -214,7 +214,7 @@ impl Connector {
| Self::Helcim
| Self::Iatapay
| Self::Klarna
// | Self::Mifinity Added as template code for future usage
| Self::Mifinity
| Self::Mollie
| Self::Multisafepay
| Self::Nexinets
Expand Down
16 changes: 14 additions & 2 deletions crates/api_models/src/payments.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ use serde::{
ser::Serializer,
Deserialize, Deserializer, Serialize,
};
use time::PrimitiveDateTime;
use time::{Date, PrimitiveDateTime};
use url::Url;
use utoipa::ToSchema;

Expand Down Expand Up @@ -1558,6 +1558,7 @@ impl GetPaymentMethodType for WalletData {
}
Self::CashappQr(_) => api_enums::PaymentMethodType::Cashapp,
Self::SwishQr(_) => api_enums::PaymentMethodType::Swish,
Self::Mifinity(_) => api_enums::PaymentMethodType::Mifinity,
}
}
}
Expand Down Expand Up @@ -2355,6 +2356,8 @@ pub enum WalletData {
CashappQr(Box<CashappQr>),
// The wallet data for Swish
SwishQr(SwishQrData),
// The wallet data for Mifinity Ewallet
Mifinity(MifinityData),
}

impl GetAddressFromPaymentMethodData for WalletData {
Expand All @@ -2381,7 +2384,8 @@ impl GetAddressFromPaymentMethodData for WalletData {
phone: None,
})
}
Self::AliPayQr(_)
Self::Mifinity(_)
| Self::AliPayQr(_)
| Self::AliPayRedirect(_)
| Self::AliPayHkRedirect(_)
| Self::MomoRedirect(_)
Expand Down Expand Up @@ -2513,6 +2517,14 @@ pub struct TouchNGoRedirection {}
#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize, ToSchema)]
pub struct SwishQrData {}

#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize, ToSchema)]
pub struct MifinityData {
#[schema(value_type = String)]
pub destination_account_number: Secret<String>,
#[schema(value_type = Date)]
pub dob: Secret<Date>,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
pub dob: Secret<Date>,
pub date_of_birth: Secret<Date>,

}

#[derive(Eq, PartialEq, Clone, Debug, serde::Deserialize, serde::Serialize, ToSchema)]
pub struct GpayTokenizationData {
/// The type of the token
Expand Down
1 change: 1 addition & 0 deletions crates/common_enums/src/enums.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1441,6 +1441,7 @@ pub enum PaymentMethodType {
Seicomart,
PayEasy,
LocalBankTransfer,
Mifinity,
}

/// Indicates the type of payment method. Eg: 'card', 'wallet', etc.
Expand Down
1 change: 1 addition & 0 deletions crates/common_enums/src/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1821,6 +1821,7 @@ impl From<PaymentMethodType> for PaymentMethod {
PaymentMethodType::GooglePay => Self::Wallet,
PaymentMethodType::GoPay => Self::Wallet,
PaymentMethodType::Gcash => Self::Wallet,
PaymentMethodType::Mifinity => Self::Wallet,
PaymentMethodType::Ideal => Self::BankRedirect,
PaymentMethodType::Klarna => Self::PayLater,
PaymentMethodType::KakaoPay => Self::Wallet,
Expand Down
2 changes: 2 additions & 0 deletions crates/connector_configs/src/common_config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ pub struct ApiModelMetaData {
pub three_ds_requestor_name: Option<String>,
pub three_ds_requestor_id: Option<String>,
pub pull_mechanism_for_external_3ds_enabled: Option<bool>,
pub brand_id: Option<String>,
}

#[serde_with::skip_serializing_none]
Expand Down Expand Up @@ -191,4 +192,5 @@ pub struct DashboardMetaData {
pub three_ds_requestor_name: Option<String>,
pub three_ds_requestor_id: Option<String>,
pub pull_mechanism_for_external_3ds_enabled: Option<bool>,
pub brand_id: Option<String>,
}
3 changes: 3 additions & 0 deletions crates/connector_configs/src/connector.rs
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ pub struct ConfigMetadata {
pub three_ds_requestor_name: Option<String>,
pub three_ds_requestor_id: Option<String>,
pub pull_mechanism_for_external_3ds_enabled: Option<bool>,
pub brand_id: Option<String>,
}

#[serde_with::skip_serializing_none]
Expand Down Expand Up @@ -148,6 +149,7 @@ pub struct ConnectorConfig {
pub gpayments: Option<ConnectorTomlConfig>,
pub helcim: Option<ConnectorTomlConfig>,
pub klarna: Option<ConnectorTomlConfig>,
pub mifinity: Option<ConnectorTomlConfig>,
pub mollie: Option<ConnectorTomlConfig>,
pub multisafepay: Option<ConnectorTomlConfig>,
pub nexinets: Option<ConnectorTomlConfig>,
Expand Down Expand Up @@ -274,6 +276,7 @@ impl ConnectorConfig {
// Connector::Gpayments => Ok(connector_data.gpayments), Added as template code for future usage
Connector::Helcim => Ok(connector_data.helcim),
Connector::Klarna => Ok(connector_data.klarna),
Connector::Mifinity => Ok(connector_data.mifinity),
Connector::Mollie => Ok(connector_data.mollie),
Connector::Multisafepay => Ok(connector_data.multisafepay),
Connector::Nexinets => Ok(connector_data.nexinets),
Expand Down
1 change: 1 addition & 0 deletions crates/connector_configs/src/response_modifier.rs
Original file line number Diff line number Diff line change
Expand Up @@ -321,6 +321,7 @@ impl From<ApiModelMetaData> for DashboardMetaData {
three_ds_requestor_id: api_model.three_ds_requestor_id,
pull_mechanism_for_external_3ds_enabled: api_model
.pull_mechanism_for_external_3ds_enabled,
brand_id: api_model.brand_id,
}
}
}
Expand Down
3 changes: 3 additions & 0 deletions crates/connector_configs/src/transformer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -194,6 +194,7 @@ impl DashboardRequestPayload {
three_ds_requestor_name: None,
three_ds_requestor_id: None,
pull_mechanism_for_external_3ds_enabled: None,
brand_id: None,
};
let meta_data = match request.metadata {
Some(data) => data,
Expand All @@ -217,6 +218,7 @@ impl DashboardRequestPayload {
let three_ds_requestor_id = meta_data.three_ds_requestor_id;
let pull_mechanism_for_external_3ds_enabled =
meta_data.pull_mechanism_for_external_3ds_enabled;
let brand_id = meta_data.brand_id;

Some(ApiModelMetaData {
google_pay,
Expand All @@ -236,6 +238,7 @@ impl DashboardRequestPayload {
three_ds_requestor_name,
three_ds_requestor_id,
pull_mechanism_for_external_3ds_enabled,
brand_id,
})
}

Expand Down
1 change: 1 addition & 0 deletions crates/euclid/src/frontend/dir/enums.rs
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ pub enum WalletType {
Swish,
Cashapp,
Venmo,
Mifinity,
}

#[derive(
Expand Down
1 change: 1 addition & 0 deletions crates/euclid/src/frontend/dir/lowering.rs
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ impl From<enums::WalletType> for global_enums::PaymentMethodType {
enums::WalletType::Swish => Self::Swish,
enums::WalletType::Cashapp => Self::Cashapp,
enums::WalletType::Venmo => Self::Venmo,
enums::WalletType::Mifinity => Self::Mifinity,
}
}
}
Expand Down
1 change: 1 addition & 0 deletions crates/euclid/src/frontend/dir/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ impl IntoDirValue for (global_enums::PaymentMethodType, global_enums::PaymentMet
Ok(dirval!(CardRedirectType = CardRedirect))
}
global_enums::PaymentMethodType::Venmo => Ok(dirval!(WalletType = Venmo)),
global_enums::PaymentMethodType::Mifinity => Ok(dirval!(WalletType = Mifinity)),
}
}
}
1 change: 1 addition & 0 deletions crates/kgraph_utils/src/mca.rs
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ fn get_dir_value_payment_method(
api_enums::PaymentMethodType::Oxxo => Ok(dirval!(VoucherType = Oxxo)),
api_enums::PaymentMethodType::CardRedirect => Ok(dirval!(CardRedirectType = CardRedirect)),
api_enums::PaymentMethodType::Venmo => Ok(dirval!(WalletType = Venmo)),
api_enums::PaymentMethodType::Mifinity => Ok(dirval!(WalletType = Mifinity)),
}
}

Expand Down
1 change: 1 addition & 0 deletions crates/kgraph_utils/src/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,7 @@ impl IntoDirValue for (api_enums::PaymentMethodType, api_enums::PaymentMethod) {
Ok(dirval!(CardRedirectType = CardRedirect))
}
api_enums::PaymentMethodType::Venmo => Ok(dirval!(WalletType = Venmo)),
api_enums::PaymentMethodType::Mifinity => Ok(dirval!(WalletType = Mifinity)),
}
}
}
Expand Down
4 changes: 3 additions & 1 deletion crates/masking/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,10 @@ readme = "README.md"
license.workspace = true

[features]
default = ["alloc", "serde", "diesel"]
default = ["alloc", "serde", "diesel", "time"]
alloc = ["zeroize/alloc"]
serde = ["dep:serde", "dep:serde_json"]
time = ["dep:time"]

[package.metadata.docs.rs]
all-features = true
Expand All @@ -23,6 +24,7 @@ erased-serde = "0.4.4"
serde = { version = "1", features = ["derive"], optional = true }
serde_json = { version = "1.0.115", optional = true }
subtle = "2.5.0"
time = {version = "0.3.35", optional = true, features = ["serde-human-readable"] }
zeroize = { version = "1.7", default-features = false }

[dev-dependencies]
Expand Down
3 changes: 3 additions & 0 deletions crates/masking/src/serde.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,9 @@ impl SerializableSecret for u16 {}
impl SerializableSecret for i8 {}
impl SerializableSecret for i32 {}

#[cfg(feature = "time")]
impl SerializableSecret for time::Date {}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Get it reviewed from @SanchithHegde , along with cargo changes


impl<'de, T, I> Deserialize<'de> for Secret<T, I>
where
T: Clone + de::DeserializeOwned + Sized,
Expand Down
1 change: 1 addition & 0 deletions crates/openapi/src/openapi.rs
Original file line number Diff line number Diff line change
Expand Up @@ -410,6 +410,7 @@ Never share your secret api keys. Keep them guarded and secure.
api_models::payments::SdkInformation,
api_models::payments::DeviceChannel,
api_models::payments::ThreeDsCompletionIndicator,
api_models::payments::MifinityData,
api_models::enums::TransactionStatus,
api_models::payments::BrowserInformation,
api_models::payments::PaymentCreatePaymentLinkConfig,
Expand Down
2 changes: 1 addition & 1 deletion crates/router/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ sqlx = { version = "0.7.3", features = ["postgres", "runtime-tokio", "runtime-to
strum = { version = "0.26", features = ["derive"] }
tera = "1.19.1"
thiserror = "1.0.58"
time = { version = "0.3.35", features = ["serde", "serde-well-known", "std"] }
time = { version = "0.3.35", features = ["serde", "serde-well-known", "std", "parsing", "serde-human-readable"] }
tokio = { version = "1.37.0", features = ["macros", "rt-multi-thread"] }
unicode-segmentation = "1.11.0"
url = { version = "2.5.0", features = ["serde"] }
Expand Down
7 changes: 4 additions & 3 deletions crates/router/src/connector/aci/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -140,9 +140,10 @@ impl TryFrom<(&domain::WalletData, &types::PaymentsAuthorizeRouterData)> for Pay
| domain::WalletData::SwishQr(_)
| domain::WalletData::AliPayQr(_)
| domain::WalletData::ApplePayRedirect(_)
| domain::WalletData::GooglePayRedirect(_) => Err(
errors::ConnectorError::NotImplemented("Payment method".to_string()),
)?,
| domain::WalletData::GooglePayRedirect(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
"Payment method".to_string(),
))?,
};
Ok(payment_data)
}
Expand Down
3 changes: 2 additions & 1 deletion crates/router/src/connector/adyen.rs
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,8 @@ impl ConnectorValidation for Adyen {
| PaymentMethodType::SamsungPay
| PaymentMethodType::Evoucher
| PaymentMethodType::Cashapp
| PaymentMethodType::UpiCollect => {
| PaymentMethodType::UpiCollect
| PaymentMethodType::Mifinity => {
capture_method_not_supported!(connector, capture_method, payment_method_type)
}
},
Expand Down
3 changes: 2 additions & 1 deletion crates/router/src/connector/adyen/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2100,7 +2100,8 @@ impl<'a> TryFrom<(&domain::WalletData, &types::PaymentsAuthorizeRouterData)>
| domain::WalletData::GooglePayThirdPartySdk(_)
| domain::WalletData::PaypalSdk(_)
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::CashappQr(_) => Err(errors::ConnectorError::NotImplemented(
| domain::WalletData::CashappQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("Adyen"),
)
.into()),
Expand Down
3 changes: 2 additions & 1 deletion crates/router/src/connector/airwallex/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -245,7 +245,8 @@ fn get_wallet_details(
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_) => Err(errors::ConnectorError::NotImplemented(
| domain::WalletData::SwishQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("airwallex"),
))?,
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1311,7 +1311,8 @@ fn get_wallet_data(
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_) => Err(errors::ConnectorError::NotImplemented(
| domain::WalletData::SwishQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("authorizedotnet"),
))?,
}
Expand Down
6 changes: 4 additions & 2 deletions crates/router/src/connector/bankofamerica/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -304,7 +304,8 @@ impl TryFrom<&types::SetupMandateRouterData> for BankOfAmericaPaymentsRequest {
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_) => Err(errors::ConnectorError::NotImplemented(
| domain::WalletData::SwishQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("BankOfAmerica"),
))?,
},
Expand Down Expand Up @@ -1129,7 +1130,8 @@ impl TryFrom<&BankOfAmericaRouterData<&types::PaymentsAuthorizeRouterData>>
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_) => {
| domain::WalletData::SwishQr(_)
| domain::WalletData::Mifinity(_) => {
Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message(
"Bank of America",
Expand Down
9 changes: 4 additions & 5 deletions crates/router/src/connector/bluesnap/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -381,11 +381,10 @@ impl TryFrom<&BluesnapRouterData<&types::PaymentsAuthorizeRouterData>> for Blues
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_)
| domain::WalletData::WeChatPayQr(_) => {
Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("bluesnap"),
))
}
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("bluesnap"),
)),
},
domain::PaymentMethodData::PayLater(_)
| domain::PaymentMethodData::BankRedirect(_)
Expand Down
3 changes: 2 additions & 1 deletion crates/router/src/connector/boku/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,8 @@ fn get_wallet_type(wallet_data: &domain::WalletData) -> Result<String, errors::C
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_) => Err(errors::ConnectorError::NotImplemented(
| domain::WalletData::SwishQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("boku"),
)),
}
Expand Down
3 changes: 2 additions & 1 deletion crates/router/src/connector/braintree/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,8 @@ impl TryFrom<&types::PaymentsAuthorizeRouterData> for BraintreePaymentsRequest {
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_) => {
| domain::WalletData::SwishQr(_)
| domain::WalletData::Mifinity(_) => {
Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("braintree"),
))
Expand Down
20 changes: 9 additions & 11 deletions crates/router/src/connector/checkout/transformers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -112,12 +112,11 @@ impl TryFrom<&types::TokenizationRouterData> for TokenRequest {
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_)
| domain::WalletData::WeChatPayQr(_) => {
Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("checkout"),
)
.into())
}
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("checkout"),
)
.into()),
},
domain::PaymentMethodData::Card(_)
| domain::PaymentMethodData::PayLater(_)
Expand Down Expand Up @@ -349,11 +348,10 @@ impl TryFrom<&CheckoutRouterData<&types::PaymentsAuthorizeRouterData>> for Payme
| domain::WalletData::WeChatPayRedirect(_)
| domain::WalletData::CashappQr(_)
| domain::WalletData::SwishQr(_)
| domain::WalletData::WeChatPayQr(_) => {
Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("checkout"),
))
}
| domain::WalletData::WeChatPayQr(_)
| domain::WalletData::Mifinity(_) => Err(errors::ConnectorError::NotImplemented(
utils::get_unimplemented_payment_method_error_message("checkout"),
)),
},

domain::PaymentMethodData::PayLater(_)
Expand Down