SWIFT β Cross-Border Payment Messaging
SWIFT (Society for Worldwide Interbank Financial Telecommunication) is the global standard messaging network used by 11,000+ financial institutions in 200+ countries to communicate payment instructions, confirmations, and statements for cross-border transactions.
Australiaβs modern real-time instant payment rail supporting PayID aliases, 280-character descriptions, and PayTo digital mandates.
ISO 20022 Native (pacs.008 / PayTo pain.001)SWIFT does not move money. It transmits messages that instruct banks to debit and credit accounts.
MT vs MX Formats
| Format | Standard | Era | Description |
|---|---|---|---|
| MT (Message Type) | SWIFT proprietary | 1970sβpresent | Fixed-field, |-delimited, human-readable tags like :32A: |
| MX (Message XML) | ISO 20022 | 2000sβpresent | XML-structured, richer data, machine-readable |
SWIFT is migrating from MT to MX (ISO 20022) with a coexistence period ending November 2025.
Key MT Message Types
Payments (Category 1 & 2)
| Message | Purpose | Typical Use |
|---|---|---|
| MT103 | Single customer credit transfer | Customer cross-border payment (most common) |
| MT103 STP | Straight-through-processing variant | Low-risk, automated routing |
| MT202 | Financial institution (FI) transfer | Bank-to-bank cover payment, treasury |
| MT202 COV | Cover payment for MT103 | Always used with an MT103 for regulatory transparency |
| MT199 | Free-format FI message | Ad hoc queries, clarifications |
| MT299 | Free-format FI message | Confirmations, free text |
Statements & Reporting (Category 9)
| Message | Purpose |
|---|---|
| MT900 | Confirmation of debit |
| MT910 | Confirmation of credit |
| MT940 | Customer statement (like camt.053) |
| MT942 | Interim transaction report |
| MT950 | Statement message |
MT103 β Deep Dive
The MT103 is the workhorse of cross-border retail payments.
Key Fields
:20: Transaction Reference Number (TRN) β sender's unique reference
:23B: Bank Operation Code β always "CRED" for standard credit transfer
:32A: Value Date, Currency, Amount β e.g. 230615USD10000,
:33B: Currency/Instructed Amount β original currency if converted
:50K: Ordering Customer (Debtor) β name and account
:52A: Ordering Institution (Debtor's Bank) β BIC
:53B: Sender's Correspondent β nostro account bank
:54A: Receiver's Correspondent β intermediary bank
:56A: Intermediary Institution β if more than one hop
:57A: Account With Institution (Creditor's Bank) β BIC
:59: Beneficiary Customer (Creditor) β name and account
:70: Remittance Information β free text (limited to 4x35 chars)
:71A: Details of Charges β DEBT / CRED / SHAR (see below)
:72: Sender to Receiver Information β bank-to-bank instructions
:77B: Regulatory Reporting β AML/CTF codes (ORDERRES, CHQB, etc.)
Charge Bearer :71A:
| Code | Who Pays Fees | Description |
|---|---|---|
| DEBT | Debtor (sender) | All charges taken from the sender |
| CRED | Creditor (receiver) | All charges deducted from the received amount |
| SHAR | Shared | Each party pays their own bank's fees |
| SLEV | Service Level | Fees as defined by the service level agreement |
π‘ SEPA regulation mandates SHA for EUR payments within Europe.
MT202 COV β Cover Payments
When an MT103 cannot be routed directly to the beneficiary bank, the debtor bank sends:
- MT103 directly to the beneficiary bank (customer details included)
- MT202 COV to the correspondent bank (covers the funds movement)
This dual-message pattern exists for transparency β regulators can see the originating customer details in the MT202 COV :50K: field.
Debtor Bank ββ[MT103]βββββββββββββββββββββββββββββββββββΊ Creditor Bank
ββ[MT202 COV]βββΊ Correspondent Bank βββΊ Creditor Bank
SWIFT gpi (Global Payments Innovation)
SWIFT gpi transformed cross-border payments from a "fire and forget" model to a trackable, end-to-end visible service.
Key Features
| Feature | Description |
|---|---|
| Speed | Same-day credit to beneficiary (95%+ of gpi payments within 24h) |
| Transparency | Fee deduction at each hop is visible |
| Tracking | Real-time status via UETR |
| Unalterable credit | Beneficiary bank must credit the full amount same day (unless deductions explicitly allowed) |
| gpi Instant | Connection to real-time domestic rails (NPP, Faster Payments, SEPA Inst) |
UETR β Universal End-to-End Transaction Reference
Every gpi payment carries a UETR β a UUID4 generated by the instructing bank:
UETR Example: 6f14d0ab-9605-4a62-a9e4-5ed26688389b
- Propagated unchanged through every bank in the chain
- Used in the gpi Tracker to show real-time status at each hop
- Included in ISO 20022 MX messages as
<UETR>and mapped to SWIFT MT via field:121:
gpi Tracker Status Codes
| Code | Meaning |
|---|---|
ACSP | Accepted, Settlement in Progress |
ACCC | Accepted, Credit to Customer Completed |
RJCT | Rejected |
PDNG | Pending (usually compliance hold) |
PART | Partially accepted |
gpi Observer
Banks can query the SWIFT gpi Tracker via API to retrieve real-time status updates for any UETR. Used for customer-facing payment trackers.
Correspondent Banking & Routing
Why Correspondents Exist
Banks rarely have direct accounts with every counterparty globally. They maintain Nostro accounts (our money held at another bank) at correspondent banks in key currencies.
Routing Chain
Debtor Customer
β pain.001
βΌ
Debtor Bank (AU)
β MT103 / pacs.008
βΌ
Debtor's Correspondent (USD clearing bank, e.g. JP Morgan NY)
β MT103 / pacs.008 (intermediary-to-intermediary)
βΌ
Creditor's Correspondent (e.g. Wells Fargo NY)
β MT103 / pacs.008
βΌ
Creditor Bank (US regional)
β camt.054 / credit posting
βΌ
Creditor Customer
BIC Routing Fields in MT103
| Field | Role |
|---|---|
:52A: | Ordering Institution (Debtor Bank) |
:53A: | Sender's Correspondent β bank where debtor bank holds nostro |
:54A: | Receiver's Correspondent β bank where creditor bank holds nostro |
:56A: | Intermediary β additional hop if needed |
:57A: | Account With Institution β creditor's bank |
ISO 20022 MX Equivalents
| MT Message | ISO 20022 MX Equivalent |
|---|---|
| MT103 | pacs.008 (FIToFICustomerCreditTransfer) |
| MT202 | pacs.009 (FinancialInstitutionCreditTransfer) |
| MT900/910 | camt.054 (BankToCustomerDebitCreditNotification) |
| MT940/950 | camt.053 (BankToCustomerStatement) |
| MT199 | camt.028 / pacs.028 |
SWIFT Cut-Off Times
Cross-border payments are time-sensitive. Each currency has a cut-off time after which same-day value is not guaranteed:
| Currency | Typical SWIFT Cut-Off (Sydney local) |
|---|---|
| USD | ~3:00 AM AEST (CHIPS/Fedwire close) |
| EUR | ~6:00 PM AEST (TARGET2 close) |
| GBP | ~4:00 AM AEST (CHAPS close) |
| AUD (RTGS) | 8:30 PM AEST |
| JPY | ~3:00 AM AEST |
β οΈ Payments arriving after cut-off receive next value date β this affects FX and liquidity.
Straight-Through Processing (STP) Requirements
An MT103 can be processed STP only if:
- All mandatory fields are present and correctly formatted
- BIC codes are valid and resolvable
- No sanctions hits (automated screening)
- No fraud triggers
- Correspondent routing is unambiguous
- Charge bearer
:71A:is defined
Manual intervention ("exception") is required when any of these fail.
Java / Spring Engineering Notes
// Parse MT103 using prowide-core library
SwiftMessage msg = SwiftMessage.parse(rawMT103);
MT103 mt103 = new MT103(msg);
String trn = mt103.getField20().getValue(); // :20: TRN
String amount = mt103.getField32A().getAmount(); // :32A: amount
String debtor = mt103.getField50K().getValue(); // :50K: ordering customer
String creditor = mt103.getField59().getValue(); // :59: beneficiary
String chargeBearer = mt103.getField71A().getValue(); // :71A: DEBT/CRED/SHAR
// UETR from gpi field :121: (in block 3)
String uetr = msg.getBlock3().getTagValue("121");
Key libraries:
prowide-core(open-source SWIFT MT parser)prowide-iso20022(MX/ISO 20022 parsing)- SWIFT SDK (licensed, for production)
Interview Questions
Q: What is the difference between MT103 and MT202?
MT103 is a customer credit transfer (retail cross-border payment). MT202 is a bank-to-bank FI transfer used for cover payments and treasury. MT202 COV must include originating customer details for AML transparency.
Q: What does UETR solve that wasn't possible with MT103 alone?
MT103's
:20:TRN reference is only unique within the sending bank. UETR is a UUID4 that is globally unique and propagated unchanged across the entire correspondent chain, enabling end-to-end tracking via the gpi Tracker.
Q: How do SWIFT cut-off times affect payment processing?
Each currency clears through its home RTGS (Fedwire for USD, TARGET2 for EUR). Payments after the cut-off receive next-value-date processing, impacting FX rates, liquidity, and customer SLA promises.
SWIFT is a messaging network, not a settlement system. Settlement happens bilaterally through Nostro/Vostro accounts and via domestic RTGS systems.
Using MT202 without COV for payments that should carry customer details. Since 2011, MT202 COV is mandatory when funds relate to a customer payment, for AML traceability.
