Map MT103 field identifiers to pacs.008 XML elements using the SWIFT mapping guide: field 20 (Transaction Reference) maps to InstrId and EndToEndId, field 32A maps to IntrBkSttlmAmt and IntrBkSttlmDt, field 50 maps to Dbtr and DbtrAcct, field 59 maps to Cdtr and CdtrAcct
Handle BIC-to-LEI or BIC-to-name lookups where the pacs.008 requires structured name and address fields that MT103 stores as free-form text; use the SWIFT reference data API or a bank directory to enrich structured fields
Map the MT103 details of charges field (field 71A: OUR, BEN, SHA) to the pacs.008 ChrgBr element using the ISO 20022 code list (DEBT, CRED, SHAR)
Validate the constructed pacs.008 against the relevant market practice schema (e.g., CBPR+ for correspondent banking); field length and character set constraints differ between MT and MX — truncate or transliterate Latin-extended characters that are not in the ISO 20022 allowed character set
Preserve the original UETR (Unique End-to-end Transaction Reference) from the MT103 field 121 in the pacs.008 UETR element to maintain gpi tracking continuity across the translation
Log both the original MT103 and the translated pacs.008 with the same internal transaction ID to support audit queries from operations teams reconciling MT and MX payment records
Known gotchas
MT103 free-form address fields often contain data that does not cleanly map to pacs.008 structured PostalAddress elements; truncation or omission of structured fields without a clear mapping rule can cause validation failures or compliance flags at the receiving bank
The UETR in field 121 is optional in MT103 but required in pacs.008 for CBPR+ compliance; if the source MT103 lacks a UETR, you must generate a new RFC 4122 UUID4 — do not reuse sequence numbers or internal IDs
Some MT103 remittance information in field 70 uses structured codes (e.g., /INV/ invoice references) that map to pacs.008 RmtInf/Strd elements; treating field 70 as always unstructured (Ustrd) loses remittance data that the beneficiary expects in structured form
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp