Polynopsis

camt.053 file format

ISO 20022 camt.053 Bank to Customer Statement

By · Last updated

camt.053 is the ISO 20022 XML end-of-day bank statement. It reports booked entries and balances for one or more accounts, with structured references and party data.

Banks send camt.053 to corporates, payment companies, ERPs and treasury systems for daily reconciliation. It is the ISO 20022 successor to MT940 and is standard in SEPA markets and increasingly in cross-border banking.

File structure

CodeNamePurposeRequired
Document/BkToCstmrStmtMessage rootRoot element of the BankToCustomerStatement message.Yes
GrpHdrGroup HeaderMessage-level data shared by all statements in the file.Yes
GrpHdr/MsgIdMessage IdentificationSender's unique identifier for the message.Yes
GrpHdr/CreDtTmCreation Date TimeWhen the message was created.Yes
GrpHdr/MsgPgntnMessage PaginationPage number and last-page indicator when a message is split.No
StmtStatementOne account statement. Repeats for each account or period in the message.Yes
Stmt/IdStatement IdentificationBank's unique identifier for this statement.Yes
Stmt/ElctrncSeqNbElectronic Sequence NumberRunning statement number, used to detect gaps.No
Stmt/LglSeqNbLegal Sequence NumberLegal statement number where it differs from the electronic one.No
Stmt/FrToDtFrom To DatePeriod covered, as FrDtTm and ToDtTm.No
Stmt/AcctAccountReported account: Id as IBAN or Othr/Id, plus an optional currency.Yes
Stmt/BalBalanceA balance with type, amount, credit/debit indicator and date. At least one required.Yes
Bal/Tp/CdOrPrtry/CdBalance Type CodeExternal code such as OPBD, CLBD, CLAV or FWAV.Yes
Bal/Amt @CcyBalance AmountUnsigned amount with currency attribute; sign comes from CdtDbtInd.Yes
Bal/CdtDbtIndCredit Debit IndicatorCRDT or DBIT, giving the sign of the balance.Yes
Bal/DtBalance DateDate (Dt) or date and time (DtTm) of the balance.Yes
Stmt/TxsSummryTransactions SummaryCounts and sums of entries, including totals of credits and debits.No
Stmt/NtryEntryOne booked movement on the account. Repeats.No
Ntry/Amt and Ntry/CdtDbtIndEntry Amount and IndicatorUnsigned amount with currency, plus CRDT or DBIT.Yes
Ntry/RvslIndReversal IndicatorTrue when the entry reverses an earlier one.No
Ntry/StsEntry StatusBOOK in statements. Newer versions wrap the code in Cd.Yes
Ntry/BookgDt and Ntry/ValDtBooking Date and Value DateWhen the entry was posted, and when funds take value.No
Ntry/AcctSvcrRefAccount Servicer ReferenceBank's unique reference for the entry.No
Ntry/BkTxCdBank Transaction CodeDomain, family and sub-family codes, and/or a proprietary code.Yes
Ntry/NtryDtlsEntry DetailsHolds batch information and the underlying transactions of the entry.No
NtryDtls/BtchBatchBatch identifier and number of transactions for a batch-booked entry.No
NtryDtls/TxDtlsTransaction DetailsOne underlying transaction. Repeats within a batch entry.No
TxDtls/RefsReferencesEndToEndId, InstrId, TxId, UETR and other payment references.No
TxDtls/RltdPtiesRelated PartiesDebtor, creditor, their accounts and ultimate parties.No
TxDtls/RmtInfRemittance InformationUnstructured (Ustrd) or structured (Strd) payment details, such as invoice numbers.No
Ntry/AddtlNtryInfAdditional Entry InformationFree-text narrative for the entry.No

Key codes

CodeMeaningSourceCategory
OPBDOpening booked balance. Equals the closing booked balance of the previous report.ISO 20022 External Code SetsBalance type
CLBDClosing booked balance: opening booked plus all entries booked in the period.ISO 20022 External Code SetsBalance type
OPAVOpening available balance at the owner's disposal on the date given.ISO 20022 External Code SetsBalance type
CLAVClosing available balance at the owner's disposal on the date given.ISO 20022 External Code SetsBalance type
ITBDInterim booked balance, calculated during the business day and subject to change.ISO 20022 External Code SetsBalance type
ITAVInterim available balance, calculated during the business day and subject to change.ISO 20022 External Code SetsBalance type
PRCDPreviously closed booked balance. The new period's opening booked balance must equal it.ISO 20022 External Code SetsBalance type
FWAVForward available balance for a stated future date.ISO 20022 External Code SetsBalance type
XPCDExpected balance: booked plus known pending items, projecting end of day.ISO 20022 External Code SetsBalance type
INFOBalance given for information only.ISO 20022 External Code SetsBalance type
SubTp INTMBalance sub-type for an intermediate balance carried between pages of a multi-page report.ISO 20022 External Code Sets; mBankBalance sub-type
CRDTCredit: the operation is an increase. Used in Bal and Ntry CdtDbtInd.ISO 20022 MDRCredit/debit indicator
DBITDebit: the operation is a decrease. A negative balance is DBIT with a positive Amt.ISO 20022 MDR; mBankCredit/debit indicator
Sts BOOKBooked entry. The only status that can be reversed.ISO 20022 External Code SetsEntry status
Sts PDNGPending entry, not yet booked. Reappears as BOOK later if it books.ISO 20022 External Code SetsEntry status
Sts INFOInformation only; no booking was performed.ISO 20022 External Code SetsEntry status
Sts FUTRBooked, with value applied at a future date.ISO 20022 External Code SetsEntry status
BkTxCd PMNT/RCDT/XBCTExample bank transaction code: Payments, received credit transfers, cross-border credit transfer.ISO 20022 BTC codificationBank transaction code

Sample file

Synthetic example with a fictional bank and account. Real files vary by bank.

<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.08">
  <BkToCstmrStmt>
    <GrpHdr>
      <MsgId>STMT-20261025-0001</MsgId>
      <CreDtTm>2026-10-26T06:00:00+00:00</CreDtTm>
    </GrpHdr>
    <Stmt>
      <Id>20261025-0001234567</Id>
      <ElctrncSeqNb>298</ElctrncSeqNb>
      <CreDtTm>2026-10-26T06:00:00+00:00</CreDtTm>
      <FrToDt>
        <FrDtTm>2026-10-25T00:00:00+00:00</FrDtTm>
        <ToDtTm>2026-10-25T23:59:59+00:00</ToDtTm>
      </FrToDt>
      <Acct>
        <Id><Othr><Id>0001234567</Id></Othr></Id>
        <Ccy>USD</Ccy>
      </Acct>
      <Bal>
        <Tp><CdOrPrtry><Cd>OPBD</Cd></CdOrPrtry></Tp>
        <Amt Ccy="USD">15000.00</Amt>
        <CdtDbtInd>CRDT</CdtDbtInd>
        <Dt><Dt>2026-10-25</Dt></Dt>
      </Bal>
      <Bal>
        <Tp><CdOrPrtry><Cd>CLBD</Cd></CdOrPrtry></Tp>
        <Amt Ccy="USD">16200.00</Amt>
        <CdtDbtInd>CRDT</CdtDbtInd>
        <Dt><Dt>2026-10-25</Dt></Dt>
      </Bal>
      <Bal>
        <Tp><CdOrPrtry><Cd>CLAV</Cd></CdOrPrtry></Tp>
        <Amt Ccy="USD">15700.00</Amt>
        <CdtDbtInd>CRDT</CdtDbtInd>
        <Dt><Dt>2026-10-25</Dt></Dt>
      </Bal>
      <Ntry>
        <NtryRef>1</NtryRef>
        <Amt Ccy="USD">1500.00</Amt>
        <CdtDbtInd>CRDT</CdtDbtInd>
        <Sts><Cd>BOOK</Cd></Sts>
        <BookgDt><Dt>2026-10-25</Dt></BookgDt>
        <ValDt><Dt>2026-10-25</Dt></ValDt>
        <AcctSvcrRef>FT2610250001</AcctSvcrRef>
        <BkTxCd>
          <Domn><Cd>PMNT</Cd><Fmly><Cd>RCDT</Cd><SubFmlyCd>XBCT</SubFmlyCd></Fmly></Domn>
        </BkTxCd>
        <NtryDtls>
          <TxDtls>
            <Refs><EndToEndId>INV-1001</EndToEndId></Refs>
            <Amt Ccy="USD">1500.00</Amt>
            <CdtDbtInd>CRDT</CdtDbtInd>
            <RltdPties><Dbtr><Pty><Nm>Acme Trading Ltd</Nm></Pty></Dbtr></RltdPties>
            <RmtInf><Ustrd>INVOICE INV-1001</Ustrd></RmtInf>
          </TxDtls>
        </NtryDtls>
      </Ntry>
      <Ntry>
        <NtryRef>2</NtryRef>
        <Amt Ccy="USD">300.00</Amt>
        <CdtDbtInd>DBIT</CdtDbtInd>
        <Sts><Cd>BOOK</Cd></Sts>
        <BookgDt><Dt>2026-10-25</Dt></BookgDt>
        <ValDt><Dt>2026-10-25</Dt></ValDt>
        <AcctSvcrRef>FT2610250002</AcctSvcrRef>
        <BkTxCd>
          <Domn><Cd>PMNT</Cd><Fmly><Cd>ICDT</Cd><SubFmlyCd>DMCT</SubFmlyCd></Fmly></Domn>
        </BkTxCd>
        <AddtlNtryInf>PAYMENT TO FICTIONAL SUPPLIES CO PO-7788</AddtlNtryInf>
      </Ntry>
    </Stmt>
  </BkToCstmrStmt>
</Document>

Reading balances

Loop over Stmt/Bal and read Tp/CdOrPrtry/Cd. OPBD is opening ledger, CLBD closing ledger and CLAV closing available. Some banks also send OPAV, PRCD or FWAV. Amt is always unsigned, so apply DBIT as negative. Check Bal/Dt and any SubTp INTM, which marks a page carry-forward rather than a true daily balance.

Parsing and reconciliation pitfalls

How it compares

camt.053 is the ISO 20022 successor to MT940 and MT950. Unlike MT940, it separates parties, references and remittance into tagged XML fields instead of :86: free text. camt.052 covers intraday and pending activity. BAI2 remains common in North America for the same end-of-day job.

Polynopsis reads statement files like this one through a forwarding inbox and turns them into a live position alongside your API-connected accounts. See how it works.

Frequently asked questions

What is a camt.053 file?

camt.053 is the ISO 20022 BankToCustomerStatement message. It is XML, and it reports booked entries and balances for an account over a period, usually one business day. Each Stmt holds balances, entries and optional transaction details.

Which camt.053 balance code is the closing balance?

CLBD is the closing booked (ledger) balance. CLAV is the closing available balance. OPBD is the opening booked balance and should equal the previous statement's CLBD. Always read CdtDbtInd for the sign.

What is the difference between camt.052, camt.053 and camt.054?

camt.052 is an account report, often intraday, that can include pending entries. camt.053 is the statement of booked entries and balances. camt.054 is a debit or credit notification for individual entries, without a full statement.

Other formats

Sources

  1. Bank-to-Customer Cash Management Message Definition Report Part 2 (Maintenance 2020/2021) · ISO 20022 Registration Authority
  2. ISO 20022 External Code Sets · ISO 20022 Registration Authority
  3. ING Format Description CAMT.053.001.02 (CGI version) · ING
  4. Description of the camt.053.001.08 daily statement file format · mBank
  5. CBPR+ roadmap beyond November 2025 (v6, September 2026) · Swift

Know where all your money is.

Polynopsis gives cross-border payment teams one live position across every bank, payout partner, exchange and wallet, including money in flight, and warns before a corridor runs dry.