ValidateFin

camt.053.001.08 — three accounts in one file

Un solo messaggio camt.053, tre blocchi <Stmt>: conto corrente, conto di risparmio e conto in USD. Il file è conforme allo schema; il validatore dichiara esplicitamente di analizzare solo il primo rendiconto. È proprio questo il punto: un lettore che prende Stmt[0] e si ferma perde due conti in silenzio, e questo file multi-conto lo smaschera.

camt.053.001.08 — Valido

Un solo messaggio camt.053, tre blocchi <Stmt>: conto corrente, conto di risparmio e conto in USD. Il file è conforme allo schema; il validatore dichiara esplicitamente di analizzare solo il primo rendiconto. È proprio questo il punto: un lettore che prende Stmt[0] e si ferma perde due conti in silenzio, e questo file multi-conto lo smaschera.

Estratto conto (camt.052 / 053 / 054) camt.053.001.08 ISO 20022Risultato atteso: Valido — 1 errori

Cosa mostra questo file

Un solo messaggio camt.053, tre blocchi <Stmt>: conto corrente, conto di risparmio e conto in USD. Il file è conforme allo schema; il validatore dichiara esplicitamente di analizzare solo il primo rendiconto. È proprio questo il punto: un lettore che prende Stmt[0] e si ferma perde due conti in silenzio, e questo file multi-conto lo smaschera.

Transazioni2
Data nel file2026-05-31

I difetti che contiene

  • MultiStmtAvertissement : le fichier contient 3 éléments 'Stmt' ; seul le premier est analysé (2 non analysé(s)).

Citato alla lettera dal validatore, non parafrasato.

Ultima verifica: Licenza: CC-BY-4.0

Tutte le parti, gli IBAN e gli importi qui sotto sono fittizi. Gli IBAN sono strutturalmente validi — superano il mod-97 — ma non corrispondono ad alcun conto reale.

Contenuto del file

<?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.

Come sappiamo che questi risultati reggono

Ogni file di questa libreria passa nel validatore del sito a ogni build. Il risultato atteso indicato sopra è verificato da un test automatico: se un file smettesse di corrispondere a quanto afferma questa pagina, la build fallirebbe. Due fixture ereditate sono state riparate così prima della pubblicazione: tre IBAN non superavano il mod-97 e diversi nomi usavano caratteri fuori dal set SEPA di base.

Estratto conto (camt.052 / 053 / 054)