pub struct MT107 {Show 18 fields
pub field_20: Field20,
pub field_23e: Option<Field23E>,
pub field_21e: Option<Field21E>,
pub field_30: Field30,
pub field_51a: Option<Field51A>,
pub instructing_party: Option<Field50InstructingParty>,
pub creditor: Option<Field50Creditor>,
pub field_52: Option<Field52CreditorBank>,
pub field_26t: Option<Field26T>,
pub field_77b: Option<Field77B>,
pub field_71a: Option<Field71A>,
pub field_72: Option<Field72>,
pub transactions: Vec<MT107Transaction>,
pub field_32b: Field32B,
pub field_19: Option<Field19>,
pub field_71f: Option<Field71F>,
pub field_71g: Option<Field71G>,
pub field_53: Option<Field53SenderCorrespondent>,
}
Expand description
MT107: General Direct Debit Message
General direct debit instruction with flexible structure and settlement details. Similar to MT104 but with additional flexibility for complex scenarios.
Usage: General direct debits, flexible collections Category: Category 1 (Customer Payments)
Fields§
§field_20: Field20
Sender’s reference (Field 20)
field_23e: Option<Field23E>
Instruction code (Field 23E)
field_21e: Option<Field21E>
Registration reference (Field 21E)
field_30: Field30
Requested execution date (Field 30)
field_51a: Option<Field51A>
Sending institution (Field 51A)
instructing_party: Option<Field50InstructingParty>
Instructing party (Field 50C/L)
creditor: Option<Field50Creditor>
Creditor (Field 50A/K)
field_52: Option<Field52CreditorBank>
Creditor’s bank (Field 52)
field_26t: Option<Field26T>
Transaction type code (Field 26T)
field_77b: Option<Field77B>
Regulatory reporting (Field 77B)
field_71a: Option<Field71A>
Details of charges (Field 71A)
field_72: Option<Field72>
Sender to receiver information (Field 72)
transactions: Vec<MT107Transaction>
Transaction details (Sequence B)
field_32b: Field32B
Settlement amount (Field 32B, Sequence C)
field_19: Option<Field19>
Sum of amounts (Field 19)
field_71f: Option<Field71F>
Sum of sender’s charges (Field 71F)
field_71g: Option<Field71G>
Sum of receiver’s charges (Field 71G)
field_53: Option<Field53SenderCorrespondent>
Sender’s correspondent (Field 53)
Implementations§
Source§impl MT107
impl MT107
Sourcepub fn parse_from_block4(block4: &str) -> Result<Self, ParseError>
pub fn parse_from_block4(block4: &str) -> Result<Self, ParseError>
Parse message from Block 4 content
Sourcepub fn validate_network_rules(
&self,
stop_on_first_error: bool,
) -> Vec<SwiftValidationError>
pub fn validate_network_rules( &self, stop_on_first_error: bool, ) -> Vec<SwiftValidationError>
Main validation method - validates all network rules Returns array of validation errors, respects stop_on_first_error flag
Sourcepub fn parse(input: &str) -> Result<Self, ParseError>
pub fn parse(input: &str) -> Result<Self, ParseError>
Parse from SWIFT MT text format
Trait Implementations§
Source§impl<'de> Deserialize<'de> for MT107
impl<'de> Deserialize<'de> for MT107
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl SwiftMessageBody for MT107
impl SwiftMessageBody for MT107
Source§fn message_type() -> &'static str
fn message_type() -> &'static str
Source§fn parse_from_block4(block4: &str) -> Result<Self, ParseError>
fn parse_from_block4(block4: &str) -> Result<Self, ParseError>
Source§fn to_mt_string(&self) -> String
fn to_mt_string(&self) -> String
Source§fn validate_network_rules(
&self,
stop_on_first_error: bool,
) -> Vec<SwiftValidationError>
fn validate_network_rules( &self, stop_on_first_error: bool, ) -> Vec<SwiftValidationError>
impl StructuralPartialEq for MT107
Auto Trait Implementations§
impl Freeze for MT107
impl RefUnwindSafe for MT107
impl Send for MT107
impl Sync for MT107
impl Unpin for MT107
impl UnwindSafe for MT107
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more