SWIFT MT940 field
MT940 field :28C: Statement Number / Sequence Number
The statement number and, after a slash, the page (sequence) number. Statements too long for one message are split into pages that share the statement number.
| :28C: (mandatory) | Statement Number / Sequence Number: Statement number and, for multi-page statements, the page number. |
|---|---|
| Format | 5n[/5n] |
| Message | MT940 customer statement (also used by MT942 where the field exists there) |
| In camt.053 | Stmt/ElctrncSeqNb, StmtPgntn/PgNb |
Format
The format is written in SWIFT notation: 5n[/5n]. 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”:
:28C:00301/001| Part | Meaning |
|---|---|
:28C: | The tag. |
00301 | Statement number, up to 5 digits, counted by the bank for the account. |
/001 | Page number, up to 5 digits (optional): page 1. Page 2 of the sample is :28C:00301/002. |
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 |
|---|---|---|
| :28C: Statement number / page | Stmt/ElctrncSeqNb, Stmt/StmtPgntn/PgNb | LastPgInd is true for :62F:, false for :62M:. |
The statement number becomes Stmt/ElctrncSeqNb and the page Stmt/StmtPgntn/PgNb; LastPgInd is true when the page closes with :62F:.
The whole mapping, field by field, is in camt.053 vs MT940.
Checks the viewer runs
mt.field.required: Mandatory field missing (SWIFT MT940/MT942 field specifications)mt.sequence: Statement numbering (:28C: statement and sequence numbers)
Worth knowing
- The validator checks that pages follow each other (1, 2, 3 …) and that statement numbers go up; a gap means a missing page or statement.
- Numbering conventions vary: the Dutch statement in the sample writes :28C:88/1, without leading zeros.
Read :28C: 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>"
}
}
}