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}