Welcome! This document provides a comprehensive guide to the SWIFT MT and ISO 20022 message formats supported by Reframe. Here, you'll find everything you need to understand how Reframe handles message transformations, covering payments, cancellations, investigations, and more.
- Overview
- Forward Transformations
- Reverse Transformations
- Message Coverage Matrix
- Field Mapping References
- Business Rules
- Message Examples
Reframe excels at transforming messages between SWIFT MT and ISO 20022 formats. We handle the entire lifecycle of financial messaging, including:
- Payments
- Cancellations
- Investigations
- Cash Management
- Cheque Processing
In essence, Reframe ensures smooth, bidirectional transformations, so you don't have to worry about the complexities.
- Payment Messages: Think customer and financial institution credit transfers.
- Cancellation Messages: Handling requests and responses for cancellations.
- Investigation Messages: Managing queries and responses related to investigations.
- Cash Management: Keeping track of account notifications and statements.
- Cheque Processing: Covering presentment, cancellation, and status updates.
- Status Reporting: Providing payment status and rejection notifications.
Here’s a snapshot of our message coverage:
| Category | MT Messages | ISO 20022 Schemas | Total Variants |
|---|---|---|---|
| Payments | 3 families | 3 schemas | 12 variants |
| Cancellations | 4 families | 1 schema | 8 variants |
| Cash Management | 4 families | 2 schemas | 6 variants |
| Cheque Processing | 3 families | 3 schemas | 6 variants |
| Status Reporting | 2 families | 1 schema | 4 variants |
| Total | 16 families | 10 schemas | 36 variants |
Let's dive into how Reframe transforms messages from SWIFT MT to ISO 20022.
MT103 - Single Customer Credit Transfer
| Processing Method | Target Schema | Description |
|---|---|---|
| Normal | pacs.008.001.08 | Standard customer credit transfer |
| STP | pacs.008.001.08 | Straight-through processing |
| Urgent | pacs.008.001.08 | High priority processing |
| Rejection | pacs.002.001.10 | Payment status rejection |
| Return | pacs.004.001.09 | Payment return notification |
Key Fields Mapped:
- Tag 20 → Payment identification
- Tag 32A → Settlement amount and date
- Tag 50K → Debtor information
- Tag 52A/52D → Debtor agent
- Tag 56A/57A → Intermediary agents
- Tag 59 → Creditor information
- Tag 70 → Remittance information
- Tag 71A → Charge bearer
Business Rules:
- Service level determination based on tag 23B
- Settlement method based on intermediary agent fields (53A/53B/53D)
- Charge bearer mapping (OUR/BEN/SHA)
- Currency and amount validation
MT202 - General Financial Institution Transfer
| Processing Method | Target Schema | Description |
|---|---|---|
| Normal | pacs.009.001.08 | Standard FI-to-FI transfer |
| Cover | pacs.009.001.08 | Cover payment method |
| Rejection | pacs.002.001.10 | Payment status rejection |
| Return | pacs.004.001.09 | Payment return notification |
Key Fields Mapped:
- Tag 20 → Transaction reference
- Tag 21 → Related reference
- Tag 32A → Value date, currency, amount
- Tag 52A/52D → Ordering institution
- Tag 53A/53B/53D → Sender's correspondent
- Tag 54A/54B/54D → Receiver's correspondent
- Tag 56A/56D → Intermediary institution
- Tag 57A/57D → Account with institution
- Tag 58A/58D → Beneficiary institution
- Tag 72 → Sender to receiver information
MT205 - Corporate Trade
| Processing Method | Target Schema | Description |
|---|---|---|
| Normal | pacs.009.001.08 | Corporate trade transfer |
| Cover | pacs.009.001.08 | Cover payment method |
| Rejection | pacs.002.001.10 | Payment status rejection |
| Return | pacs.004.001.09 | Payment return notification |
Key Fields Mapped:
- Similar to MT202 with additional corporate-specific fields
- Tag 77B → Regulatory reporting information
- Enhanced party identification requirements
MT192 - Request for Cancellation (Customer Credit Transfer)
| Field | ISO 20022 Mapping | Description |
|---|---|---|
| Tag 20 | CxlId | Cancellation identification |
| Tag 21 | OrgnlInstrId | Original instruction identification |
| Tag 11S | OrgnlTxId | Original transaction identification |
| Tag 79 | CxlRsnInf | Cancellation reason |
Business Logic:
- UETR (Unique End-to-End Transaction Reference) handling
- Original message reference validation
- Cancellation reason code mapping
MT292 - Request for Cancellation (Financial Institution Transfer)
Similar structure to MT192 but for institutional transfers.
MT196 - Client Notification (Customer Credit Transfer)
Response to cancellation request with status information.
MT296 - Client Notification (Financial Institution Transfer)
Response to cancellation request for institutional transfers.
MT900 - Confirmation of Debit
| Field | ISO 20022 Mapping | Description |
|---|---|---|
| Tag 20 | NtfctnId | Notification identification |
| Tag 21 | AcctSvcrRef | Account servicer reference |
| Tag 25 | Acct | Account identification |
| Tag 32A | Amt | Transaction amount |
| Tag 50K/50F | RltdPties | Related parties |
MT910 - Confirmation of Credit
Similar structure to MT900 for credit notifications.
MT940 - Customer Statement
Account statement with transaction details and balances.
MT942 - Interim Transaction Report
Intraday account report with transaction notifications.
MT110 - Advice of Cheque(s)
Cheque presentment notification with cheque details.
MT111 - Request for Stop Payment of a Cheque
Cheque cancellation or stop payment request.
MT112 - Status of Request for Stop Payment of a Cheque
Response to cheque stop payment request.
Now, let's explore how Reframe transforms messages from ISO 20022 back to SWIFT MT.
pacs.008 - Customer Credit Transfer Initiation
| ISO 20022 Element | MT Field | Description |
|---|---|---|
| GrpHdr.MsgId | Tag 20 | Message identification |
| GrpHdr.CreDtTm | App Header | Creation date time |
| CdtTrfTxInf.PmtId.InstrId | Tag 20 | Instruction identification |
| CdtTrfTxInf.IntrBkSttlmAmt | Tag 32A | Settlement amount |
| CdtTrfTxInf.Dbtr | Tag 50K | Ordering customer |
| CdtTrfTxInf.DbtrAgt | Tag 52A | Ordering institution |
| CdtTrfTxInf.CdtrAgt | Tag 57A | Account with institution |
| CdtTrfTxInf.Cdtr | Tag 59 | Beneficiary customer |
| CdtTrfTxInf.RmtInf | Tag 70 | Remittance information |
Transformation Logic:
- Service level mapping from SvcLvl.Cd to tag 23B
- Charge bearer conversion (DEBT/CRED/SHAR → BEN/OUR/SHA)
- Party identification hierarchy resolution
- Amount and currency formatting
pacs.009 - Financial Institution Credit Transfer
| ISO 20022 Element | MT Field | Description |
|---|---|---|
| GrpHdr.InstgAgt | Tag 52A/52D | Instructing agent |
| GrpHdr.InstdAgt | Tag 58A/58D | Instructed agent |
| CdtTrfTxInf.IntrmyAgt1 | Tag 56A/56D | Intermediary agent 1 |
| CdtTrfTxInf.IntrmyAgt2 | Tag 57A/57D | Intermediary agent 2 |
| CdtTrfTxInf.InstrForNxtAgt | Tag 72 | Instructions |
Business Rules:
- Message type determination (MT202 vs MT205) based on business context
- Correspondent banking chain reconstruction
- Cover payment method detection
pacs.004 - Payment Return
Return message transformation with original payment reference and return reason.
pacs.002 - Payment Status Report
Status report transformation for payment rejections and confirmations.
camt.052 - Bank to Customer Account Report
Interim account report with transaction entries.
camt.053 - Bank to Customer Statement
Account statement with opening/closing balances and transaction details.
camt.054 - Bank to Customer Debit/Credit Notification
Individual transaction notifications.
camt.056 - Cancellation Request
Cancellation request/response transformation with UETR support.
camt.107 - Cheque Presentment Notification
Cheque presentment details transformation.
camt.108 - Cheque Cancellation/Stop Request
Cheque stop payment request transformation.
camt.109 - Cheque Cancellation/Stop Report
Cheque stop payment status transformation.
| SWIFT MT | Description | ISO 20022 | Description | Status |
|---|---|---|---|---|
| MT103 | Customer Credit Transfer | pacs.008 | Customer Credit Transfer | ✅ Full |
| MT103 | Credit Transfer Rejection | pacs.002 | Payment Status Report | ✅ Full |
| MT103 | Credit Transfer Return | pacs.004 | Payment Return | ✅ Full |
| MT202 | FI Credit Transfer | pacs.009 | FI Credit Transfer | ✅ Full |
| MT202 | FI Transfer Rejection | pacs.002 | Payment Status Report | ✅ Full |
| MT202 | FI Transfer Return | pacs.004 | Payment Return | ✅ Full |
| MT205 | Corporate Trade | pacs.009 | FI Credit Transfer | ✅ Full |
| MT205 | Corporate Rejection | pacs.002 | Payment Status Report | ✅ Full |
| MT205 | Corporate Return | pacs.004 | Payment Return | ✅ Full |
| MT192 | Cancellation Request (Customer) | camt.056 | Cancellation Request | ✅ Full |
| MT292 | Cancellation Request (FI) | camt.056 | Cancellation Request | ✅ Full |
| MT196 | Cancellation Response (Customer) | camt.056 | Cancellation Request | ✅ Full |
| MT296 | Cancellation Response (FI) | camt.056 | Cancellation Request | ✅ Full |
| MT900 | Confirmation of Debit | camt.054 | Debit/Credit Notification | ✅ Full |
| MT910 | Confirmation of Credit | camt.054 | Debit/Credit Notification | ✅ Full |
| MT940 | Customer Statement | camt.053 | Customer Statement | ✅ Full |
| MT942 | Interim Transaction Report | camt.052 | Account Report | ✅ Full |
| MT110 | Advice of Cheque(s) | camt.107 | Cheque Presentment | ✅ Full |
| MT111 | Stop Payment Request | camt.108 | Cheque Cancellation | ✅ Full |
| MT112 | Stop Payment Status | camt.109 | Cheque Stop Report | ✅ Full |
| SWIFT MT | ISO 20022 | Format | Example |
|---|---|---|---|
| Tag 32A | IntrBkSttlmAmt | YYMMDDCCCNNNNN,NN | 240115USD1000,50 |
| Tag 33B | InstructedAmount | CCCNNNNN,NN | USD1000,50 |
| Tag 71A | ChrgBr | Code | OUR/BEN/SHA → CRED/DEBT/SHAR |
| SWIFT MT | ISO 20022 | Format | Description |
|---|---|---|---|
| Tag 50K | Dbtr | Name and Address | Debtor/Ordering Customer |
| Tag 52A/52D | DbtrAgt | BIC or Name/Address | Debtor Agent |
| Tag 56A/56D | IntrmyAgt1 | BIC or Name/Address | Intermediary Agent 1 |
| Tag 57A/57D | CdtrAgt | BIC or Name/Address | Creditor Agent |
| Tag 59 | Cdtr | Name and Address | Creditor/Beneficiary |
| SWIFT MT | ISO 20022 | Description |
|---|---|---|
| Tag 20 | InstrId/MsgId | Instruction/Message ID |
| Tag 21 | EndToEndId | End-to-end identification |
| Tag 103 | SvcLvl | Service level |
| Tag 121 | UETR | Unique End-to-End Transaction Reference |
{
"mt103_validation": {
"required_fields": ["20", "32A", "50K", "59"],
"optional_fields": ["21", "23B", "52A", "53A", "56A", "57A", "70", "71A"],
"conditional_fields": {
"53A": "requires_correspondent_banking",
"53B": "alternative_to_53A",
"53D": "alternative_to_53A_53B"
}
}
}{
"amount_validation": {
"min_amount": 0.01,
"max_amount": 999999999.99,
"decimal_places": 2,
"supported_currencies": ["USD", "EUR", "GBP", "JPY", "CHF", "CAD", "AUD"]
}
}{
"bic_validation": {
"format": "^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$",
"length": [8, 11],
"examples": ["BANKUS33XXX", "DEUTDEFFXXX"]
}
}-
Priority Order:
- If Tag 53A present → CLRG (Clearing)
- Else if Tag 53B present → INDA (Indirect)
- Else if Tag 53D present → INGA (Indirect)
- Else → COVE (Cover)
-
Validation:
- Only one 53 tag variant allowed
- 53A must contain valid BIC
- 53B must contain valid location code
{
"charge_bearer_rules": {
"OUR": {
"description": "All charges borne by ordering customer",
"iso20022": "CRED"
},
"BEN": {
"description": "All charges borne by beneficiary",
"iso20022": "DEBT"
},
"SHA": {
"description": "Charges shared",
"iso20022": "SHAR"
}
}
}{
"routing_rules": {
"mt103_normal": {
"condition": "tag_23B == 'CRED'",
"target_schema": "pacs.008.001.08",
"processing_method": "normal"
},
"mt103_stp": {
"condition": "tag_23B == 'SPAY'",
"target_schema": "pacs.008.001.08",
"processing_method": "stp"
},
"mt103_return": {
"condition": "tag_23B == 'RETN'",
"target_schema": "pacs.004.001.09",
"processing_method": "return"
}
}
}- Installation Guide - Setup and deployment instructions
- Configuration Guide - Configuration options and settings
- Architecture Guide - Technical architecture details