Skip to content
LegacyFile
← Learn

What Is a CAMT.053 File? ISO 20022 Bank Statements Explained

By LegacyFile ·

Your bank posted a file called something like camt.053_20260714_0193.xml to your portal, you opened it, and got a wall of XML — thousands of angle-bracketed tags with names like BkToCstmrStmt, Ntry, and CdtDbtInd, all crammed with abbreviations that look like someone deleted the vowels. That's a camt.053 file: the ISO 20022 end-of-day bank statement. This article explains what it is, what every part of it means, and the fastest way to get it into Excel.

What a camt.053 file is

camt.053 — formally BankToCustomerStatement — is the end-of-day account statement message from the ISO 20022 family, the international standard now underpinning most of the world's payment systems. "camt" is short for cash management, and 053 is simply the message number; its siblings camt.052 (intraday report) and camt.054 (debit/credit notification) cover the rest of the reporting day. Under SEPA and the broader ISO 20022 migration, camt.053 is the designated replacement for the SWIFT MT940 statements banks have sent since the 1980s.

Everything in it is XML. That makes camt.053 verbose — a single transaction can span dozens of tags — but also far richer than what it replaces: every field has a name, a place, and a defined meaning, and nothing gets truncated to fit a line length.

What's inside a camt.053 file

The structure nests: a Document wraps a BkToCstmrStmt, which holds a group header and one or more Stmt (statement) blocks. Each statement carries the account, its balances, and one Ntry (entry) per statement line. A trimmed-down example:

<Document xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.02">
  <BkToCstmrStmt>
    <Stmt>
      <Id>0193-2026-196</Id>
      <Acct><Id><IBAN>DE89370400440532013000</IBAN></Id><Ccy>EUR</Ccy></Acct>
      <Bal>
        <Tp><CdOrPrtry><Cd>OPBD</Cd></CdOrPrtry></Tp>
        <Amt Ccy="EUR">12500.00</Amt>
        <CdtDbtInd>CRDT</CdtDbtInd>
      </Bal>
      <Ntry>
        <Amt Ccy="EUR">2500.00</Amt>
        <CdtDbtInd>CRDT</CdtDbtInd>
        <Sts>BOOK</Sts>
        <BookgDt><Dt>2026-07-14</Dt></BookgDt>
        <BkTxCd><Domn><Cd>PMNT</Cd><Fmly><Cd>RCDT</Cd><SubFmlyCd>ESCT</SubFmlyCd></Fmly></Domn></BkTxCd>
        <NtryDtls>
          <TxDtls>
            <Refs><EndToEndId>E2E-INV-10233</EndToEndId></Refs>
            <RltdPties><Dbtr><Nm>Northwind Traders B.V.</Nm></Dbtr></RltdPties>
            <RmtInf><Ustrd>INVOICE 10233</Ustrd></RmtInf>
          </TxDtls>
        </NtryDtls>
      </Ntry>
    </Stmt>
  </BkToCstmrStmt>
</Document>

Reading it piece by piece:

  • Bal — balances. Each one is typed: OPBD is the opening booked balance, CLBD the closing booked balance, and variants like OPAV/CLAV report available funds. CdtDbtInd says whether the balance is in credit or overdrawn.
  • Ntry — one statement line. The amount (with its currency as an attribute), a CdtDbtInd of CRDT (money in) or DBIT (money out), a status (BOOK for booked, PDNG for pending), and booking and value dates.
  • BkTxCd — the bank transaction code. A three-level classification — domain, family, sub-family — that reads like a sentence once you know it: PMNT.RCDT.ESCT is a payment, received credit transfer, SEPA credit transfer. Banks can also send a proprietary code instead.
  • NtryDtls > TxDtls — transaction details. The counterparty's name and IBAN, the end-to-end reference the payer supplied, direct-debit mandate IDs, and the unstructured remittance information (Ustrd) — the free text that tells you what the payment was actually for.

One subtlety worth knowing: an entry can be a batch. A payroll run debited as a single entry carries one total amount, while its NtryDtls contains one TxDtls block per underlying payment. Any tool that only reads entry level will hide those individual payments inside the batch total.

camt.053 versions, briefly

You'll see version suffixes like camt.053.001.02 and camt.053.001.08 in the namespace. The .02 release is what most SEPA banks started with; newer rollouts use .08 or later, which shuffles a few structures (party names gain a Pty wrapper, the status becomes a nested code). The content is the same statement either way, and a good converter reads both.

How to open a camt.053 file in Excel

Excel will technically open XML, but what you get from a camt.053 is unusable — one column per nested tag, repeated thousands of times. The practical path is a converter that understands the message. The free CAMT.053 to CSV converter here on LegacyFile runs entirely in your browser — the statement is never uploaded, which is the right bar for bank data. Drop the file in and it shows the account, balances, and entry counts, flattens every entry (unrolling batches to one row per transaction, debits negative), and exports CSV or XLSX.

And if your bank still sends the older format alongside — or you're comparing the two during a migration — the MT940 to CSV converter handles those, and CAMT.053 vs MT940 covers exactly how the two formats map to each other.