use rustc_hash::FxHashMap; use serde::{Deserialize, Serialize}; use crate::enums; #[derive(Debug, Clone, Serialize, Deserialize)] pub struct MandateData { pub mandate_acceptance_type: Option, pub mandate_type: Option, pub payment_type: Option, } #[derive(Debug, Clone, Serialize, Deserialize)] pub struct PaymentMethodInput { pub payment_method: Option, pub payment_method_type: Option, pub card_network: Option, } #[derive(Debug, Clone, Serialize, Deserialize)] pub struct PaymentInput { pub amount: common_utils::types::MinorUnit, pub currency: enums::Currency, pub authentication_type: Option, pub card_bin: Option, pub capture_method: Option, pub business_country: Option, pub billing_country: Option, pub business_label: Option, pub setup_future_usage: Option, } #[derive(Debug, Clone, Serialize, Deserialize)] pub struct BackendInput { pub metadata: Option>, pub payment: PaymentInput, pub payment_method: PaymentMethodInput, pub mandate: MandateData, }