Bug: [FIX]: fix wasm for paysafe connector



fix account_id metadata structure of wasm
diff --git a/crates/connector_configs/src/connector.rs b/crates/connector_configs/src/connector.rs
index dfede98f1e4..0a521f7a864 100644
--- a/crates/connector_configs/src/connector.rs
+++ b/crates/connector_configs/src/connector.rs
@@ -108,6 +108,19 @@ pub struct ConfigMerchantAdditionalDetails {
     pub plusgiro: Option<Vec<InputData>>,
 }
 
+#[serde_with::skip_serializing_none]
+#[derive(Debug, Deserialize, Serialize, Clone)]
+pub struct AccountIdConfigForCard {
+    pub three_ds: Option<Vec<InputData>>,
+    pub no_three_ds: Option<Vec<InputData>>,
+}
+
+#[serde_with::skip_serializing_none]
+#[derive(Debug, Deserialize, Serialize, Clone)]
+pub struct AccountIDSupportedMethods {
+    card: HashMap<String, AccountIdConfigForCard>,
+}
+
 #[serde_with::skip_serializing_none]
 #[derive(Debug, Deserialize, Serialize, Clone)]
 pub struct ConfigMetadata {
@@ -149,7 +162,7 @@ pub struct ConfigMetadata {
     pub proxy_url: Option<InputData>,
     pub shop_name: Option<InputData>,
     pub merchant_funding_source: Option<InputData>,
-    pub account_id: Option<InputData>,
+    pub account_id: Option<AccountIDSupportedMethods>,
 }
 
 #[serde_with::skip_serializing_none]
diff --git a/crates/connector_configs/toml/development.toml b/crates/connector_configs/toml/development.toml
index a5de72b6e24..0f9fa995409 100644
--- a/crates/connector_configs/toml/development.toml
+++ b/crates/connector_configs/toml/development.toml
@@ -6833,12 +6833,30 @@ api_key = "Username"
 key1 = "Password"
 [paysafe.connector_webhook_details]
 merchant_secret = "Source verification key"
-[paysafe.metadata.account_id]
+[[paysafe.metadata.account_id.card.USD.three_ds]]
 name="account_id"
-label="Payment Method Account ID"
-placeholder="Enter Account ID"
+label="ThreeDS account id"
+placeholder="Enter ThreeDS Account ID"
 required=true
-type="Text"
+type="Number"
+[[paysafe.metadata.account_id.card.USD.no_three_ds]]
+name="no_three_ds"
+label="Non ThreeDS account id"
+placeholder="Enter Non ThreeDS Account ID"
+required=true
+type="Number"
+[[paysafe.metadata.account_id.card.EUR.three_ds]]
+name="account_id"
+label="ThreeDS account id"
+placeholder="Enter ThreeDS Account ID"
+required=true
+type="Number"
+[[paysafe.metadata.account_id.card.EUR.no_three_ds]]
+name="no_three_ds"
+label="Non ThreeDS account id"
+placeholder="Enter Non ThreeDS Account ID"
+required=true
+type="Number"
 
 [peachpayments]
 [[peachpayments.credit]]
diff --git a/crates/connector_configs/toml/production.toml b/crates/connector_configs/toml/production.toml
index 3515ff2c58b..96d473a386c 100644
--- a/crates/connector_configs/toml/production.toml
+++ b/crates/connector_configs/toml/production.toml
@@ -5502,12 +5502,30 @@ api_key = "Username"
 key1 = "Password"
 [paysafe.connector_webhook_details]
 merchant_secret = "Source verification key"
-[paysafe.metadata.account_id]
+[[paysafe.metadata.account_id.card.USD.three_ds]]
 name="account_id"
-label="Payment Method Account ID"
-placeholder="Enter Account ID"
+label="ThreeDS account id"
+placeholder="Enter ThreeDS Account ID"
 required=true
-type="Text"
+type="Number"
+[[paysafe.metadata.account_id.card.USD.no_three_ds]]
+name="no_three_ds"
+label="Non ThreeDS account id"
+placeholder="Enter Non ThreeDS Account ID"
+required=true
+type="Number"
+[[paysafe.metadata.account_id.card.EUR.three_ds]]
+name="account_id"
+label="ThreeDS account id"
+placeholder="Enter ThreeDS Account ID"
+required=true
+type="Number"
+[[paysafe.metadata.account_id.card.EUR.no_three_ds]]
+name="no_three_ds"
+label="Non ThreeDS account id"
+placeholder="Enter Non ThreeDS Account ID"
+required=true
+type="Number"
 
 [peachpayments]
 [[peachpayments.credit]]
diff --git a/crates/connector_configs/toml/sandbox.toml b/crates/connector_configs/toml/sandbox.toml
index 9cfb45cf6db..45da96d5344 100644
--- a/crates/connector_configs/toml/sandbox.toml
+++ b/crates/connector_configs/toml/sandbox.toml
@@ -6816,12 +6816,30 @@ api_key = "Username"
 key1 = "Password"
 [paysafe.connector_webhook_details]
 merchant_secret = "Source verification key"
-[paysafe.metadata.account_id]
+[[paysafe.metadata.account_id.card.USD.three_ds]]
 name="account_id"
-label="Payment Method Account ID"
-placeholder="Enter Account ID"
+label="ThreeDS account id"
+placeholder="Enter ThreeDS Account ID"
 required=true
-type="Text"
+type="Number"
+[[paysafe.metadata.account_id.card.USD.no_three_ds]]
+name="no_three_ds"
+label="Non ThreeDS account id"
+placeholder="Enter Non ThreeDS Account ID"
+required=true
+type="Number"
+[[paysafe.metadata.account_id.card.EUR.three_ds]]
+name="account_id"
+label="ThreeDS account id"
+placeholder="Enter ThreeDS Account ID"
+required=true
+type="Number"
+[[paysafe.metadata.account_id.card.EUR.no_three_ds]]
+name="no_three_ds"
+label="Non ThreeDS account id"
+placeholder="Enter Non ThreeDS Account ID"
+required=true
+type="Number"
 
 
 

## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [ ] New feature
- [ ] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
Wasm changes for paysafe card 3ds

### Additional Changes

- [ ] This PR modifies the API contract
- [ ] This PR modifies the database schema
- [ ] This PR modifies application configuration/environment variables

<!--
Provide links to the files with corresponding changes.

Following are the paths where you can find config files:
1. `config`
2. `crates/router/src/configs`
3. `loadtest/config`
-->


## Motivation and Context
<!--
Why is this change required? What problem does it solve?
If it fixes an open issue, please link to the issue here.

If you don't have an issue, we'd recommend starting with one first so the PR
can focus on the implementation (unless it is an obvious bug or documentation fix
that will have little conversation).
-->


## How did you test it?
<img width="656" height="532" alt="Screenshot 2025-09-15 at 4 48 08 PM" src="https://github.com/user-attachments/assets/3f8b0d3c-22b6-4fb1-a94c-d4221d8ed035" />



## Checklist
<!-- Put an `x` in the boxes that apply -->

- [x] I formatted the code `cargo +nightly fmt --all`
- [x] I addressed lints thrown by `cargo clippy`
- [x] I reviewed the submitted code
- [ ] I added unit tests for my changes where possible
