Other banking formats
This topic describes support for other banking statement formats, including BAI3 and MT940 (SWIFT Customer Statement), and outlines their capabilities and limitations.
BAI3
BAI3 is an evolution of BAI2. The parser extracts the same fields as BAI2 and is not tied to a specific bank.
Capability Supported
All BAI2 fields (amount, currency, date, references, description)
Detail type codes
Multi-line continuation records
MT940 (SWIFT customer statement)
MT940 is a SWIFT message format used for international bank statement delivery.
Account & identification fields
Supports account number extraction from tags :25: / :25P:
Supports customer reference extraction from tag :61:
Supports bank reference extraction from tag :61:
Transaction data processing
Supports transaction amount extraction
Supports currency extraction (derived from :60F: opening balance)
Supports value date extraction from tag :61:
Supports entry date parsing (MMDD format)
Supports transaction type codes (e.g., NCHK, NMSC, S103)
Supports debit/credit mark identification (C, D, RC, RD) - only incoming transactions are processed.
Supports narrative/description extraction from tag :86:
File and data handling
Supports multi-message files (multiple statements, typically one per bank account)
Preserves raw data for audit and downstream processing
Limitations / not supported
Does not support debit transaction extraction (only credit transactions are processed)
Does not store opening or closing balances (currency is read but balances are not persisted)
Statement/sequence number (:28C:) is parsed but not stored