Crate swift_mt_message

Source
Expand description

§Swift MT Message Parser

A Rust library for parsing SWIFT MT (Message Type) messages and extracting their fields. This library focuses purely on parsing and field extraction, not message building or transformation.

§Supported Message Types

  • MT102: Multiple Customer Credit Transfer
  • MT103: Single Customer Credit Transfer
  • MT192: Request for Cancellation
  • MT195: Queries
  • MT196: Answers
  • MT197: Copy of a Message
  • MT199: Free Format Message
  • MT202: General Financial Institution Transfer
  • MT940: Customer Statement Message
  • MT941: Balance Report Message
  • MT942: Interim Transaction Report

§Example Usage

use swift_mt_message::{parse_message, MTMessage};

let message_text = "{1:F01BANKDEFFAXXX0123456789}{2:I103BANKDEFFAXXXU3003}{4:\n:20:FT21234567890\n:23B:CRED\n:32A:210315EUR1234567,89\n:50K:JOHN DOE\n:59:JANE SMITH\n-}";
let message = parse_message(message_text)?;

if let MTMessage::MT103(mt103) = message {
    println!("Sender Reference: {}", mt103.sender_reference()?);
    println!("Amount: {:?}", mt103.amount()?);
    println!("Currency: {}", mt103.currency()?);
}

Re-exports§

pub use error::MTError;
pub use error::Result;
pub use messages::MTMessage;
pub use parser::parse_message;
pub use validation::ValidationLevel;
pub use validation::ValidationResult;
pub use validation::validate_message;
pub use common::Field;
pub use common::MessageBlock;
pub use common::Tag;

Modules§

common
Common structures and field definitions for SWIFT MT messages
error
Error types for SWIFT MT message parsing
messages
SWIFT MT message implementations
parser
Core parsing logic for SWIFT MT messages
validation
Message validation logic for SWIFT MT messages