diff --git a/crates/api_models/src/enums.rs b/crates/api_models/src/enums.rs index d5b87438bf..a347c088e6 100644 --- a/crates/api_models/src/enums.rs +++ b/crates/api_models/src/enums.rs @@ -394,12 +394,11 @@ pub enum FieldType { UserAddressCity, UserAddressPincode, UserAddressState, - UserAddressCountry { options: Vec }, + UserAddressCountry, UserBlikCode, FieldsComplete, UserBillingName, - UserBank { options: Vec }, - UserCurrency { options: Vec }, + UserBank, Text, DropDown { options: Vec }, } diff --git a/crates/router/src/configs/defaults.rs b/crates/router/src/configs/defaults.rs index 7372b89bdd..9f1f8d6f55 100644 --- a/crates/router/src/configs/defaults.rs +++ b/crates/router/src/configs/defaults.rs @@ -230,8 +230,7 @@ impl Default for super::settings::RequiredFields { Self(HashMap::from([ ( enums::PaymentMethod::Card, - PaymentMethodType(HashMap::from([ - ( + PaymentMethodType(HashMap::from([( enums::PaymentMethodType::Debit, ConnectorFields { fields: HashMap::from([ @@ -255,13 +254,18 @@ impl Default for super::settings::RequiredFields { required_field: "billing.address.first_name".to_string(), display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, - } + }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, ], ), ( enums::Connector::Bambora, vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }], @@ -281,9 +285,9 @@ impl Default for super::settings::RequiredFields { }, RequiredFieldInfo { required_field: "billing.phone.country_code".to_string(), - display_name: "country_code".to_string(), - field_type: enums::FieldType::DropDown { - options: vec!["ALL".to_string()], + display_name: "country".to_string(), + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, RequiredFieldInfo { @@ -291,6 +295,11 @@ impl Default for super::settings::RequiredFields { display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, RequiredFieldInfo { required_field: "billing.address.line1".to_string(), display_name: "line1".to_string(), @@ -314,8 +323,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -324,7 +333,7 @@ impl Default for super::settings::RequiredFields { enums::Connector::Dlocal, vec![ RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }, @@ -336,22 +345,27 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, RequiredFieldInfo { required_field: "billing.address.first_name".to_string(), display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, - } + }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, ], ), ( enums::Connector::Forte, vec![ RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }, @@ -359,7 +373,12 @@ impl Default for super::settings::RequiredFields { required_field: "billing.address.first_name".to_string(), display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, - } + }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, ], ), ( @@ -367,7 +386,7 @@ impl Default for super::settings::RequiredFields { vec![RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { + field_type: enums::FieldType::UserCountry { options: vec!["US".to_string(), "IN".to_string()], }, }], @@ -377,8 +396,8 @@ impl Default for super::settings::RequiredFields { vec![RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["AT".to_string(), "BE".to_string(), "DE".to_string(), "ES".to_string(), "FI".to_string(), "GB".to_string(), "IN".to_string(), "IT".to_string(), "NL".to_string(), "PT".to_string() ], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }], ), @@ -390,6 +409,11 @@ impl Default for super::settings::RequiredFields { display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, RequiredFieldInfo { required_field: "billing.address.line1".to_string(), display_name: "line1".to_string(), @@ -413,8 +437,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry{ - options: vec!["ALL".to_string()], + field_type: enums::FieldType::UserCountry{ + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -422,15 +446,31 @@ impl Default for super::settings::RequiredFields { ( enums::Connector::Noon, vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }], ), + ( + enums::Connector::Opennode, + vec![RequiredFieldInfo { + required_field: "description".to_string(), + display_name: "description".to_string(), + field_type: enums::FieldType::Text, + }], + ), + ( + enums::Connector::Payu, + vec![RequiredFieldInfo { + required_field: "description".to_string(), + display_name: "description".to_string(), + field_type: enums::FieldType::Text, + }], + ), ( enums::Connector::Rapyd, vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }], @@ -438,7 +478,7 @@ impl Default for super::settings::RequiredFields { ( enums::Connector::Shift4, vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }], @@ -447,7 +487,7 @@ impl Default for super::settings::RequiredFields { enums::Connector::Trustpay, vec![ RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }, @@ -469,8 +509,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, RequiredFieldInfo { @@ -478,12 +518,17 @@ impl Default for super::settings::RequiredFields { display_name: "email".to_string(), field_type: enums::FieldType::UserEmailAddress, }, + RequiredFieldInfo { + required_field: "browser_info".to_string(), + display_name: "browser_info".to_string(), + field_type: enums::FieldType::Text, + }, ], ), ( enums::Connector::Worldline, vec![RequiredFieldInfo { - required_field: "payment_method_datacard.card_holder_name".to_string(), + required_field: "card.card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }], @@ -496,282 +541,26 @@ impl Default for super::settings::RequiredFields { display_name: "email".to_string(), field_type: enums::FieldType::UserEmailAddress, }, - ], - ), - ]), - }, - ), - ( - enums::PaymentMethodType::Credit, - ConnectorFields { - fields: HashMap::from([ - ( - enums::Connector::Aci, - vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }], - ), - ( - enums::Connector::Bluesnap, - vec![ RequiredFieldInfo { - required_field: "email".to_string(), - display_name: "email".to_string(), - field_type: enums::FieldType::UserEmailAddress, + required_field: "browser_info".to_string(), + display_name: "browser_info".to_string(), + field_type: enums::FieldType::Text, }, RequiredFieldInfo { - required_field: "billing.address.first_name".to_string(), - display_name: "first_name".to_string(), - field_type: enums::FieldType::UserBillingName, - } - ], - ), - ( - enums::Connector::Bambora, - vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }], - ), - ( - enums::Connector::Cybersource, - vec![ - RequiredFieldInfo { - required_field: "email".to_string(), - display_name: "email".to_string(), - field_type: enums::FieldType::UserEmailAddress, + required_field: "description".to_string(), + display_name: "description".to_string(), + field_type: enums::FieldType::Text, }, RequiredFieldInfo { - required_field: "billing.phone.number".to_string(), - display_name: "phone_number".to_string(), - field_type: enums::FieldType::UserPhoneNumber, - }, - RequiredFieldInfo { - required_field: "billing.phone.country_code".to_string(), - display_name: "country_code".to_string(), - field_type: enums::FieldType::DropDown { - options: vec!["ALL".to_string()], - }, - }, - RequiredFieldInfo { - required_field: "billing.address.first_name".to_string(), - display_name: "first_name".to_string(), - field_type: enums::FieldType::UserBillingName, - }, - RequiredFieldInfo { - required_field: "billing.address.line1".to_string(), - display_name: "line1".to_string(), - field_type: enums::FieldType::UserAddressline1, - }, - RequiredFieldInfo { - required_field: "billing.address.city".to_string(), - display_name: "city".to_string(), - field_type: enums::FieldType::UserAddressCity, - }, - RequiredFieldInfo { - required_field: "billing.address.state".to_string(), - display_name: "state".to_string(), - field_type: enums::FieldType::UserAddressState, - }, - RequiredFieldInfo { - required_field: "billing.address.zip".to_string(), - display_name: "zip".to_string(), - field_type: enums::FieldType::UserAddressPincode, - }, - RequiredFieldInfo { - required_field: "billing.address.country".to_string(), - display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], - }, - }, - ], - ), - ( - enums::Connector::Dlocal, - vec![ - RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }, - RequiredFieldInfo { - required_field: "email".to_string(), - display_name: "email".to_string(), - field_type: enums::FieldType::UserEmailAddress, - }, - RequiredFieldInfo { - required_field: "billing.address.country".to_string(), - display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], - }, - }, - RequiredFieldInfo { - required_field: "billing.address.first_name".to_string(), - display_name: "first_name".to_string(), - field_type: enums::FieldType::UserBillingName, - } - ], - ), - ( - enums::Connector::Forte, - vec![ - RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }, - RequiredFieldInfo { - required_field: "billing.address.first_name".to_string(), - display_name: "first_name".to_string(), - field_type: enums::FieldType::UserBillingName, - } - ], - ), - ( - enums::Connector::Globalpay, - vec![RequiredFieldInfo { - required_field: "billing.address.country".to_string(), - display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["US".to_string(), "IN".to_string()], - }, - }], - ), - ( - enums::Connector::Iatapay, - vec![RequiredFieldInfo { - required_field: "billing.address.country".to_string(), - display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["AT".to_string(), "BE".to_string(), "DE".to_string(), "ES".to_string(), "FI".to_string(), "GB".to_string(), "IN".to_string(), "IT".to_string(), "NL".to_string(), "PT".to_string() ], - }, - }], - ), - ( - enums::Connector::Multisafepay, - vec![ - RequiredFieldInfo { - required_field: "billing.address.first_name".to_string(), - display_name: "first_name".to_string(), - field_type: enums::FieldType::UserBillingName, - }, - RequiredFieldInfo { - required_field: "billing.address.line1".to_string(), - display_name: "line1".to_string(), - field_type: enums::FieldType::UserAddressline1, - }, - RequiredFieldInfo { - required_field: "billing.address.line2".to_string(), - display_name: "line2".to_string(), - field_type: enums::FieldType::UserAddressline2, - }, - RequiredFieldInfo { - required_field: "billing.address.city".to_string(), - display_name: "city".to_string(), - field_type: enums::FieldType::UserAddressCity, - }, - RequiredFieldInfo { - required_field: "billing.address.zip".to_string(), - display_name: "zip".to_string(), - field_type: enums::FieldType::UserAddressPincode, - }, - RequiredFieldInfo { - required_field: "billing.address.country".to_string(), - display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry{ - options: vec!["ALL".to_string()], - }, - }, - ], - ), - ( - enums::Connector::Noon, - vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }], - ), - ( - enums::Connector::Rapyd, - vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }], - ), - ( - enums::Connector::Shift4, - vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }], - ), - ( - enums::Connector::Trustpay, - vec![ - RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }, - RequiredFieldInfo { - required_field: "billing.address.line1".to_string(), - display_name: "line1".to_string(), - field_type: enums::FieldType::UserAddressline1, - }, - RequiredFieldInfo { - required_field: "billing.address.city".to_string(), - display_name: "city".to_string(), - field_type: enums::FieldType::UserAddressCity, - }, - RequiredFieldInfo { - required_field: "billing.address.zip".to_string(), - display_name: "zip".to_string(), - field_type: enums::FieldType::UserAddressPincode, - }, - RequiredFieldInfo { - required_field: "billing.address.country".to_string(), - display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], - }, - }, - RequiredFieldInfo { - required_field: "email".to_string(), - display_name: "email".to_string(), - field_type: enums::FieldType::UserEmailAddress, - }, - ], - ), - ( - enums::Connector::Worldline, - vec![RequiredFieldInfo { - required_field: "payment_method_data.card.card_holder_name".to_string(), - display_name: "card_holder_name".to_string(), - field_type: enums::FieldType::UserFullName, - }], - ), - ( - enums::Connector::Zen, - vec![ - RequiredFieldInfo { - required_field: "email".to_string(), - display_name: "email".to_string(), - field_type: enums::FieldType::UserEmailAddress, + required_field: "metadata.order_details".to_string(), + display_name: "order_details".to_string(), + field_type: enums::FieldType::Text, }, ], ), ]), }, - ), - ])), + )])), ), ( enums::PaymentMethod::BankRedirect, @@ -784,7 +573,7 @@ impl Default for super::settings::RequiredFields { vec![RequiredFieldInfo { required_field: "payment_method_data.bank_redirect.przelewy24.bank_name".to_string(), display_name: "bank_name".to_string(), - field_type: enums::FieldType::UserBank { options: vec![ "ALL".to_string()] }, + field_type: enums::FieldType::UserBank, }], )]), }, @@ -805,7 +594,26 @@ impl Default for super::settings::RequiredFields { enums::Connector::Adyen, vec![ RequiredFieldInfo { - required_field: "payment_method_data.bank_redirect.bancontact_card.card_holder_name".to_string(), + required_field: "payment_method_data.bank_redirect.bancontact_card.card_number" + .to_string(), + display_name: "card_number".to_string(), + field_type: enums::FieldType::Text, + }, + RequiredFieldInfo { + required_field: "payment_method_data.bank_redirect.bancontact_card.card_exp_month" + .to_string(), + display_name: "card_exp_month".to_string(), + field_type: enums::FieldType::Text, + }, + RequiredFieldInfo { + required_field: "payment_method_data.bank_redirect.bancontact_card.card_exp_year" + .to_string(), + display_name: "card_exp_year".to_string(), + field_type: enums::FieldType::Text, + }, + RequiredFieldInfo { + required_field: "payment_method_data.bank_redirect.bancontact_card.card_holder_name" + .to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }, @@ -838,8 +646,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec![], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -856,7 +664,7 @@ impl Default for super::settings::RequiredFields { vec![RequiredFieldInfo { required_field: "payment_method_data.bank_redirect.ideal.bank_name".to_string(), display_name: "bank_name".to_string(), - field_type: enums::FieldType::UserBank { options: vec!["ALL".to_string()] }, + field_type: enums::FieldType::UserBank, }], ), ( @@ -865,7 +673,7 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "payment_method_data.bank_redirect.ideal.bank_name".to_string(), display_name: "bank_name".to_string(), - field_type: enums::FieldType::UserBank { options: vec!["ALL".to_string()] }, + field_type: enums::FieldType::UserBank, }, RequiredFieldInfo { required_field: "billing.address.first_name" @@ -873,6 +681,11 @@ impl Default for super::settings::RequiredFields { display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, RequiredFieldInfo { required_field: "email".to_string(), display_name: "email".to_string(), @@ -881,8 +694,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec![], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -901,6 +714,11 @@ impl Default for super::settings::RequiredFields { display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, RequiredFieldInfo { required_field: "email".to_string(), display_name: "email".to_string(), @@ -909,8 +727,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec![], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -928,6 +746,11 @@ impl Default for super::settings::RequiredFields { display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, RequiredFieldInfo { required_field: "email".to_string(), display_name: "email".to_string(), @@ -936,8 +759,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec![], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -949,10 +772,48 @@ impl Default for super::settings::RequiredFields { ( enums::PaymentMethod::Wallet, PaymentMethodType(HashMap::from([ + ( + enums::PaymentMethodType::ApplePay, + ConnectorFields { + fields: HashMap::from([ + ( + enums::Connector::Bluesnap, + vec![RequiredFieldInfo { + required_field: "billing_address".to_string(), + display_name: "billing_address".to_string(), + field_type: enums::FieldType::Text, + }], + ), + ( + enums::Connector::Zen, + vec![RequiredFieldInfo { + required_field: "metadata.order_details".to_string(), + display_name: "order_details".to_string(), + field_type: enums::FieldType::Text, + }], + ), + ]), + }, + ), ( enums::PaymentMethodType::Paypal, ConnectorFields { fields: HashMap::from([ + ( + enums::Connector::Mollie, + vec![ + RequiredFieldInfo { + required_field: "billing_address".to_string(), + display_name: "billing_address".to_string(), + field_type: enums::FieldType::Text, + }, + RequiredFieldInfo { + required_field: "shipping_address".to_string(), + display_name: "shipping_address".to_string(), + field_type: enums::FieldType::Text, + }, + ], + ), ( enums::Connector::Nuvei, vec![ @@ -964,8 +825,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -973,6 +834,45 @@ impl Default for super::settings::RequiredFields { ]), }, ), + ( + enums::PaymentMethodType::GooglePay, + ConnectorFields { + fields: HashMap::from([( + enums::Connector::Zen, + vec![RequiredFieldInfo { + required_field: "metadata.order_details".to_string(), + display_name: "order_details".to_string(), + field_type: enums::FieldType::Text, + }], + )]), + }, + ), + ( + enums::PaymentMethodType::AliPay, + ConnectorFields { + fields: HashMap::from([( + enums::Connector::Globepay, + vec![RequiredFieldInfo { + required_field: "description".to_string(), + display_name: "description".to_string(), + field_type: enums::FieldType::Text, + }], + )]), + }, + ), + ( + enums::PaymentMethodType::WeChatPay, + ConnectorFields { + fields: HashMap::from([( + enums::Connector::Globepay, + vec![RequiredFieldInfo { + required_field: "description".to_string(), + display_name: "description".to_string(), + field_type: enums::FieldType::Text, + }], + )]), + }, + ), ])), ), ( @@ -989,24 +889,24 @@ impl Default for super::settings::RequiredFields { required_field: "shipping.address.first_name" .to_string(), display_name: "first_name".to_string(), - field_type: enums::FieldType::UserBillingName, + field_type: enums::FieldType::Text, }, RequiredFieldInfo { required_field: "shipping.address.line1".to_string(), display_name: "line1".to_string(), - field_type: enums::FieldType::UserAddressline1, + field_type: enums::FieldType::Text, }, RequiredFieldInfo { required_field: "shipping.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec![], + field_type: enums::FieldType::DropDown { + options: vec!["US".to_string(), "IN".to_string()], }, }, RequiredFieldInfo { required_field: "shipping.address.zip".to_string(), display_name: "zip".to_string(), - field_type: enums::FieldType::UserAddressPincode, + field_type: enums::FieldType::Text, }, ], ), @@ -1017,24 +917,24 @@ impl Default for super::settings::RequiredFields { required_field: "shipping.address.first_name" .to_string(), display_name: "first_name".to_string(), - field_type: enums::FieldType::UserBillingName, + field_type: enums::FieldType::Text, }, RequiredFieldInfo { required_field: "shipping.address.line1".to_string(), display_name: "line1".to_string(), - field_type: enums::FieldType::UserAddressline1, + field_type: enums::FieldType::Text, }, RequiredFieldInfo { required_field: "shipping.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], + field_type: enums::FieldType::DropDown { + options: vec!["US".to_string(), "IN".to_string()], }, }, RequiredFieldInfo { required_field: "shipping.address.zip".to_string(), display_name: "zip".to_string(), - field_type: enums::FieldType::UserAddressPincode, + field_type: enums::FieldType::Text, }, ], ), @@ -1047,6 +947,11 @@ impl Default for super::settings::RequiredFields { display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, RequiredFieldInfo { required_field: "email".to_string(), display_name: "email".to_string(), @@ -1055,8 +960,8 @@ impl Default for super::settings::RequiredFields { RequiredFieldInfo { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), - field_type: enums::FieldType::UserAddressCountry { - options: vec!["ALL".to_string()], + field_type: enums::FieldType::UserCountry { + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -1075,6 +980,11 @@ impl Default for super::settings::RequiredFields { display_name: "first_name".to_string(), field_type: enums::FieldType::UserBillingName, }, + RequiredFieldInfo { + required_field: "billing.address.last_name".to_string(), + display_name: "last_name".to_string(), + field_type: enums::FieldType::UserBillingName, + }, RequiredFieldInfo { required_field: "email".to_string(), display_name: "email".to_string(), @@ -1084,8 +994,7 @@ impl Default for super::settings::RequiredFields { required_field: "billing.address.country".to_string(), display_name: "country".to_string(), field_type: enums::FieldType::UserCountry { - options: vec!["US".to_string(), "GB".to_string(), "DE".to_string(), "AT".to_string(), - "DK".to_string(), "FI".to_string(), "NL".to_string(), "NO".to_string(), "SE".to_string()], + options: vec!["US".to_string(), "IN".to_string()], }, }, ], @@ -1104,7 +1013,7 @@ impl Default for super::settings::RequiredFields { vec![RequiredFieldInfo { required_field: "payment_method_data.crypto.pay_currency".to_string(), display_name: "currency".to_string(), - field_type: enums::FieldType::UserCurrency{ + field_type: enums::FieldType::DropDown { options: vec![ "BTC".to_string(), "LTC".to_string(), @@ -1138,7 +1047,7 @@ impl Default for super::settings::RequiredFields { ( enums::Connector::Adyen, vec![RequiredFieldInfo { - required_field: "payment_method_data.bank_debit.ach_bank_debit.card_holder_name".to_string(), + required_field: "card_holder_name".to_string(), display_name: "card_holder_name".to_string(), field_type: enums::FieldType::UserFullName, }], diff --git a/openapi/openapi_spec.json b/openapi/openapi_spec.json index e8c7ba61dd..3a5acf82b6 100644 --- a/openapi/openapi_spec.json +++ b/openapi/openapi_spec.json @@ -4116,26 +4116,10 @@ ] }, { - "type": "object", - "required": [ + "type": "string", + "enum": [ "user_address_country" - ], - "properties": { - "user_address_country": { - "type": "object", - "required": [ - "options" - ], - "properties": { - "options": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } + ] }, { "type": "string", @@ -4156,48 +4140,10 @@ ] }, { - "type": "object", - "required": [ + "type": "string", + "enum": [ "user_bank" - ], - "properties": { - "user_bank": { - "type": "object", - "required": [ - "options" - ], - "properties": { - "options": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "type": "object", - "required": [ - "user_currency" - ], - "properties": { - "user_currency": { - "type": "object", - "required": [ - "options" - ], - "properties": { - "options": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } + ] }, { "type": "string",