SWIFT MT940 field
MT940 field :62F: / :62M: Closing Balance
The booked balance at the end of the statement: the opening balance plus credits minus debits. :62F: (final) closes the statement; :62M: (intermediate) closes a page that continues in the next message.
| :62F: (mandatory) | Closing Balance (final): Booked balance at the end of the statement. |
|---|---|
| :62M: (mandatory) | Closing Balance (intermediate): Closing balance of a page that continues on the next message. |
| Format | 1!a6!n3!a15d |
| Message | MT940 customer statement (also used by MT942 where the field exists there) |
| In camt.053 | Bal with Tp CLBD |
Format
The format is written in SWIFT notation: 1!a6!n3!a15d. n digits; a capital letters; c capital letters and digits; x any character of the SWIFT set; d a decimal amount with a comma; 16x up to 16 of them; 6!n exactly 6; [ ] optional; 6*65x up to 6 lines of 65.
Annotated example
From the sample MT940 the viewer opens with “Try a sample”:
:62F:C261028EUR20044,38| Part | Meaning |
|---|---|
:62F: | The tag: F for the final closing balance, M for a page that continues. |
C | Credit balance (D would be overdrawn). |
261028 | Date, YYMMDD: 28 October 2026. |
EUR | Currency, the same as the opening balance. |
20044,38 | Amount. |
Where it goes in camt.053
The MT940 Viewer and the API convert MT940 to camt.053.001.08. For this field:
| MT940 | camt.053.001.08 | Note |
|---|---|---|
| :62F: / :62M: | Bal Tp CLBD |
Both become a balance of type CLBD (closing booked); :62M: carries the sub-type INTM and sets LastPgInd to false.
The whole mapping, field by field, is in camt.053 vs MT940.
Checks the viewer runs
mt.balance.roll-forward: Balances do not roll forward (:60a: + :61: entries = :62a:)mt.balance.continuity: Statements do not chain (:62a: of one page = :60a: of the next)mt.field.required: Mandatory field missing (SWIFT MT940/MT942 field specifications)mt.currency: Currency (Balances and entries share one ISO 4217 currency)
Worth knowing
- Roll-forward: :60F: + credits − debits of the :61: lines = :62F:. The sample’s first statement runs over two pages: page 1 closes with :62M:C261028EUR24556,88 and page 2 opens with the same balance as :60M:.
- A closing balance that does not roll forward usually means a missing or duplicated :61:, or a reversal read the wrong way.
Read :62F: / :62M: from a script or an AI agent
Scripts and AI agents can do the same without a browser: POST /api/v1/parse or the MCP tool parse_mt940 returns every statement as JSON: balances, each :61: split into its subfields and each :86: with its structured parts. No key is needed, and the file is processed in memory and never stored (API and MCP docs).
curl -s --data-binary @statement.sta https://iso20022-navigator.com/api/v1/parse{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "parse_mt940",
"arguments": {
"content": "<the file text>"
}
}
}