camt.053.001.08 — three accounts in one file
One camt.053 message, three <Stmt> blocks: a current account, a savings account and a USD account. The file is schema-valid; the validator explicitly says it analyses only the first statement. That is the point — a reader that takes Stmt[0] and stops silently loses two accounts, and this is how a multi-account camt.053 file catches it out.
camt.053.001.08 — Valid
One camt.053 message, three <Stmt> blocks: a current account, a savings account and a USD account. The file is schema-valid; the validator explicitly says it analyses only the first statement. That is the point — a reader that takes Stmt[0] and stops silently loses two accounts, and this is how a multi-account camt.053 file catches it out.
What this file shows
One camt.053 message, three <Stmt> blocks: a current account, a savings account and a USD account. The file is schema-valid; the validator explicitly says it analyses only the first statement. That is the point — a reader that takes Stmt[0] and stops silently loses two accounts, and this is how a multi-account camt.053 file catches it out.
| Transactions | 2 |
|---|---|
| Date in the file | 2026-05-31 |
The defects it carries
- MultiStmtAvertissement : le fichier contient 3 éléments 'Stmt' ; seul le premier est analysé (2 non analysé(s)).
Quoted verbatim from the validator, not paraphrased.
Every party, IBAN and amount below is fictitious. The IBANs are structurally valid — they pass the mod-97 check — but they belong to no real account.
File content
<?xml version="1.0" encoding="UTF-8"?>
<!--
ValidateFin sample file — bank statement, camt.053.001.08, THREE accounts in one message.
A single camt.053 message may carry several <Stmt> blocks, one per account. Expected
validation result: the file is well formed and schema-valid, and the validator reports
that only the FIRST statement is analysed — which is exactly the trap: a parser that
reads Stmt[0] and stops silently loses two accounts.
All parties and account numbers are fictitious.
Reference page: https://validatefin.com/en/resources/samples/camt053-multi-account
License: CC-BY-4.0
-->
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.08"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<BkToCstmrStmt>
<GrpHdr>
<MsgId>CAMT053-MULTI-20260531</MsgId>
<CreDtTm>2026-05-31T22:00:00</CreDtTm>
</GrpHdr>
<!-- ─── Compte 1 : compte courant EUR ─────────────────────────────────── -->
<Stmt>
<Id>STMT-ACCT1-2026-05</Id>
<LglSeqNb>5</LglSeqNb>
<CreDtTm>2026-05-31T22:00:00</CreDtTm>
<FrToDt>
<FrDtTm>2026-05-01T00:00:00</FrDtTm>
<ToDtTm>2026-05-31T23:59:59</ToDtTm>
</FrToDt>
<Acct>
<Id>
<IBAN>NL91ABNA0417164300</IBAN>
</Id>
<Ccy>EUR</Ccy>
<Nm>Rekening-courant</Nm>
<Ownr>
<Nm>Van Dijk Logistiek BV</Nm>
</Ownr>
<Svcr>
<FinInstnId>
<BICFI>ABNANL2A</BICFI>
</FinInstnId>
</Svcr>
</Acct>
<Bal>
<Tp>
<CdOrPrtry>
<Cd>OPBD</Cd>
</CdOrPrtry>
</Tp>
<Amt Ccy="EUR">10000.00</Amt>
<CdtDbtInd>CRDT</CdtDbtInd>
<Dt>
<Dt>2026-05-01</Dt>
</Dt>
</Bal>
<Bal>
<Tp>
<CdOrPrtry>
<Cd>CLBD</Cd>
</CdOrPrtry>
</Tp>
<Amt Ccy="EUR">11749.50</Amt>
<CdtDbtInd>CRDT</CdtDbtInd>
<Dt>
<Dt>2026-05-31</Dt>
</Dt>
</Bal>
<Ntry>
<NtryRef>ACCT1-0001</NtryRef>
<Amt Ccy="EUR">2500.00</Amt>
<CdtDbtInd>CRDT</CdtDbtInd>
<Sts>
<Cd>BOOK</Cd>
</Sts>
<BookgDt>
<Dt>2026-05-08</Dt>
</BookgDt>
<ValDt>
<Dt>2026-05-08</Dt>
</ValDt>
<BkTxCd>
<Domn>
<Cd>PMNT</Cd>
<Fmly>
<Cd>RCDT</Cd>
<SubFmlyCd>ESCT</SubFmlyCd>
</Fmly>
</Domn>
</BkTxCd>
<NtryDtls>
<TxDtls>
<Refs>
<EndToEndId>INV-2026-0501</EndToEndId>
</Refs>
<RltdPties>
<Dbtr>
<Pty>
<Nm>Havenbedrijf Rotterdam NV</Nm>
</Pty>
</Dbtr>
</RltdPties>
<RmtInf>
<Ustrd>Factuur 2026-0501 transport</Ustrd>
</RmtInf>
</TxDtls>
</NtryDtls>
<AddtlNtryInf>SEPA OVERBOEKING ONTVANGEN</AddtlNtryInf>
</Ntry>
<Ntry>
<NtryRef>ACCT1-0002</NtryRef>
<Amt Ccy="EUR">750.50</Amt>
<CdtDbtInd>DBIT</CdtDbtInd>
<Sts>
<Cd>BOOK</Cd>
</Sts>
<BookgDt>
<Dt>2026-05-20</Dt>
</BookgDt>
<ValDt>
<Dt>2026-05-20</Dt>
</ValDt>
<BkTxCd>
<Domn>
<Cd>PMNT</Cd>
<Fmly>
<Cd>ICDT</Cd>
<SubFmlyCd>ESCT</SubFmlyCd>
</Fmly>
</Domn>
</BkTxCd>
<AddtlNtryInf>SEPA OVERBOEKING BRANDSTOF</AddtlNtryInf>
</Ntry>
</Stmt>
<!-- ─── Compte 2 : compte de reserve EUR ──────────────────────────────── -->
<Stmt>
<Id>STMT-ACCT2-2026-05</Id>
<LglSeqNb>5</LglSeqNb>
<CreDtTm>2026-05-31T22:00:00</CreDtTm>
<FrToDt>
<FrDtTm>2026-05-01T00:00:00</FrDtTm>
<ToDtTm>2026-05-31T23:59:59</ToDtTm>
</FrToDt>
<Acct>
<Id>
<IBAN>NL39RABO0300065264</IBAN>
</Id>
<Ccy>EUR</Ccy>
<Nm>Spaarrekening</Nm>
<Ownr>
<Nm>Van Dijk Logistiek BV</Nm>
</Ownr>
<Svcr>
<FinInstnId>
<BICFI>RABONL2U</BICFI>
</FinInstnId>
</Svcr>
</Acct>
<Bal>160 / 309 lines shown — the complete file is in the download above.
How we know these results hold
Every file in this library is run through the site's own validator on each build. The expected result stated above is asserted by an automated test — if a file stopped matching what this page claims, the build would fail. Two inherited fixtures were repaired this way before publication: three IBANs failed the mod-97 check and several names used characters outside the basic SEPA character set.
Bank statement (camt.052 / 053 / 054)
- camt.053.001.02 — valid statement
- camt.053.001.08 — valid statement
- camt.053 — unsupported namespace
- camt.053.001.06 — missing Stmt element
- camt.053.001.11 — valid statement
- camt.053.001.10 — fully detailed entries
- camt.053.001.08 — closing balance does not reconcile
- camt.052.001.08 — valid intraday report
- camt.054.001.08 — valid debit/credit notification
- camt.053.001.08 — entry with no CdtDbtInd
- camt.053.001.08 — 220 entries, valid