feat(api_models): add api_models for external 3ds authentication flow (#3858)

Co-authored-by: hrithikesh026 <hrithikesh.vm@juspay.in>
Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com>
This commit is contained in:
Sai Harsha Vardhan
2024-03-05 13:19:05 +05:30
committed by GitHub
parent 03cfb735af
commit 0a43ceb14e
13 changed files with 601 additions and 8 deletions

View File

@ -96,6 +96,15 @@ pub struct MerchantAccountCreate {
pub organization_id: Option<String>,
}
#[derive(Clone, Debug, Deserialize, Serialize, ToSchema)]
pub struct AuthenticationConnectorDetails {
/// List of authentication connectors
#[schema(value_type = Vec<AuthenticationConnectors>)]
pub authentication_connectors: Vec<enums::AuthenticationConnectors>,
/// URL of the (customer service) website that will be shown to the shopper in case of technical errors during the 3D Secure 2 process.
pub three_ds_requestor_url: String,
}
#[derive(Clone, Debug, Deserialize, Serialize, ToSchema)]
pub struct MerchantAccountMetadata {
pub compatible_connector: Option<api_enums::Connector>,
@ -897,6 +906,9 @@ pub struct BusinessProfileCreate {
/// Default Payment Link config for all payment links created under this business profile
pub payment_link_config: Option<BusinessPaymentLinkConfig>,
/// External 3DS authentication details
pub authentication_connector_details: Option<AuthenticationConnectorDetails>,
}
#[derive(Clone, Debug, ToSchema, Serialize)]
@ -963,6 +975,9 @@ pub struct BusinessProfileResponse {
/// Default Payment Link config for all payment links created under this business profile
pub payment_link_config: Option<serde_json::Value>,
/// External 3DS authentication details
pub authentication_connector_details: Option<AuthenticationConnectorDetails>,
}
#[derive(Clone, Debug, Deserialize, ToSchema, Serialize)]
@ -1021,6 +1036,9 @@ pub struct BusinessProfileUpdate {
/// Default Payment Link config for all payment links created under this business profile
pub payment_link_config: Option<BusinessPaymentLinkConfig>,
/// External 3DS authentication details
pub authentication_connector_details: Option<AuthenticationConnectorDetails>,
}
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize, PartialEq, ToSchema)]