swift_mt_message/fields/common/
currency_field.rs

1use serde::{Deserialize, Serialize};
2use swift_mt_message_macros::SwiftField;
3
4/// Generic Currency Amount Field
5///
6/// Used for fields with currency code and decimal amount.
7#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, SwiftField)]
8pub struct GenericCurrencyAmountField {
9    /// Currency code (ISO 4217)
10    #[component("3!a", validate = ["currency_code"])]
11    pub currency: String,
12    /// Amount value
13    #[component("15d", validate = ["amount_format", "positive_amount"])]
14    pub amount: f64,
15}