Your bank delivers the statement as ISO 20022 camt.053 XML, and Excel shows you a tree of tags instead of transactions. Upload the file and BankXLSX turns every entry into a clean row with dates, amount, debit or credit, description, and balances. Start free, no credit card.
Upload your bank statement
Drop file here or click to upload
PDF, JPG, PNG, BMP, HEIC, TIFF, MT940
Uploading...
A camt.053 file is the ISO 20022 XML end of day bank statement, and Excel cannot read it as rows because every transaction is nested inside XML tags rather than columns. To convert it, upload the statement to BankXLSX and each Ntry entry becomes one row with booking date, value date, amount, debit or credit indicator, description, and the opening and closing balances pulled out of the Bal elements. If your bank only gives you the PDF statement, upload that instead and you get the same spreadsheet.
camt.053 was designed for software to parse, not for a person to read. Opening it in Excel either shows raw XML or drops you into a schema mapping dialog that flattens the file wrong. Here is what goes wrong most often.
Open a .xml statement in Excel and it offers to create a schema from the source, then spreads one transaction across several sheets or repeats parent rows for every child element.
Each entry lives under Stmt, then Ntry, then NtryDtls, then TxDtls, so the amount, the counterparty, and the reference sit at different depths of the tree.
Amounts are always positive numbers. Whether a line is money in or money out is carried in a sibling CdtDbtInd tag reading CRDT or DBIT, so a naive export totals everything as a credit.
Every entry has a booking date (BookgDt) and a value date (ValDt), and picking the wrong one throws off reconciliation and interest calculations.
Opening and closing balances hide in repeated Bal blocks tagged OPBD, CLBD, and CLAV rather than sitting in a tidy summary row.
The invoice reference you actually want is inside RmtInf, split into structured (Strd) and unstructured (Ustrd) branches that most spreadsheet exports ignore.
Upload the statement and the converter walks the XML for you, then writes every booked entry into a spreadsheet you can sort, filter, and reconcile immediately.
Each Ntry element lands as its own row with booking date, value date, amount, debit or credit, description, and reference in separate columns.
The CdtDbtInd flag is read so DBIT lines become debits and CRDT lines become credits, and your Excel column totals actually foot.
Opening booked, closing booked, and closing available balances are lifted from the Bal blocks into clear fields you can reconcile against.
End to end IDs and the remittance information inside RmtInf are carried through so you can match payments to invoices.
Download a real .xlsx workbook for analysis or a clean CSV mapped for QuickBooks, NetSuite, Sage, Zoho Books, Odoo, or your treasury system.
256-bit encryption in transit and you can delete your uploaded files whenever you want.
No software to install and no credit card to start.
Banks deliver camt.053 as an .xml file. Rename the copy to .txt so the uploader accepts it, or simply upload the PDF statement for the same account.
Tip: Renaming does not change the data.
Drag the file into the box above. The converter reads the Stmt block, every Ntry entry, and the Bal balances, and skips the group header.
Tip: One account per statement is normal.
Save the result as XLSX or CSV and open it in Excel, Google Sheets, or your accounting and ERP software.
Tip: Columns are reconciliation ready.
camt.053 is the ISO 20022 statement corporate banks now send their business customers, so the people converting it are managing cash, closing the books, or loading another system.
Turn a daily camt.053 statement into a clean cash position without hand keying a single entry.
Reconcile bank activity against the ledger using the opening and closing booked balances pulled straight from the file.
Map camt.053 entries into a CSV a client can load into NetSuite, SAP, Odoo, or a treasury management system.
Convert a client statement into spreadsheet rows you can categorize and import into QuickBooks or Xero.
Last updated July 2026
A camt.053 file is the ISO 20022 Bank to Customer Statement: an XML file your bank sends to report every entry booked to your account for the previous business day, along with the balances at the start and end of that period. It carries booked entries only, which is what makes it the authoritative end of day statement rather than a running feed. The message is the modern replacement for the SWIFT MT940 statement, and the full name of the root element inside the file is BkToCstmrStmt.
Everything in a camt.053 file is nested. The Document wrapper holds one BkToCstmrStmt, which holds a group header and one statement, and the statement holds the account, its balances, and its entries. These are the elements that actually carry the data you want in a spreadsheet.
| Element | Full name | What it holds |
|---|---|---|
| BkToCstmrStmt | Bank To Customer Statement | The message root, inside the Document wrapper. |
| GrpHdr | Group Header | Message ID and creation timestamp. No transaction data. |
| Stmt | Statement | One statement for one account and one period. |
| Acct | Account | The account identifier, usually an IBAN or other scheme ID. |
| Bal | Balance | A balance block, repeated once per balance type code. |
| Ntry | Entry | One booked transaction. This is your spreadsheet row. |
| Amt | Amount | The value, always positive, with a currency attribute. |
| CdtDbtInd | Credit Debit Indicator | CRDT for money in, DBIT for money out. This carries the sign. |
| BookgDt | Booking Date | The date the entry hit the ledger. |
| ValDt | Value Date | The date the funds count for interest and availability. |
| BkTxCd | Bank Transaction Code | The coded classification of the entry (see below). |
| NtryDtls / TxDtls | Entry Details / Transaction Details | Per transaction detail when one entry batches several payments. |
| RmtInf | Remittance Information | The invoice reference, as structured (Strd) or free text (Ustrd). |
Each Bal block is tagged with a four letter code from the ISO 20022 ExternalBalanceType code set. If you only read one, read CLBD, the closing booked balance, because that is the number your ledger has to agree with.
| Code | Meaning | Use it for |
|---|---|---|
| OPBD | Opening booked balance | The starting ledger balance for the period. |
| CLBD | Closing booked balance | The ending ledger balance. Reconcile to this. |
| CLAV | Closing available balance | What was actually spendable at close, after holds. |
| OPAV | Opening available balance | Spendable funds at the start of the period. |
| PRCD | Previously closed booked balance | The closing balance of the prior statement. |
| ITBD | Interim booked balance | A balance struck mid day, still subject to change. |
| FWAV | Forward available balance | Funds available on a future value date. |
BkTxCd classifies what an entry actually is, using a four level hierarchy: Domain, then Family, then Sub Family, then an optional Proprietary code the bank defines itself. The domain is the top level bucket, and these are the ones you will meet on a corporate statement.
| Domain code | Meaning |
|---|---|
| PMNT | Payments, including ACH, wires, checks, and card activity |
| CAMT | Cash management, such as internal account transfers |
| ACMT | Account management, such as fees and account maintenance |
| LDAS | Loans, deposits, and syndications |
| SECU | Securities activity |
| CMDT | Commodities |
The three camt cash management messages get confused constantly because they look alike and arrive from the same bank. The difference is timing and finality: camt.052 tells you what is happening now, camt.053 tells you what was booked yesterday, and camt.054 tells you about one specific debit or credit.
| Message | Name | Timing | Replaces |
|---|---|---|---|
| camt.052 | Bank to Customer Account Report | Intraday, near real time, may include pending items | MT942 |
| camt.053 | Bank to Customer Statement | End of day, booked entries only, final | MT940 and MT950 |
| camt.054 | Bank to Customer Debit Credit Notification | Per transaction alert | MT900 and MT910 |
MT940 is the older SWIFT statement, a flat text file of positional tags. camt.053 carries the same idea in XML with a named element for each piece of data. The practical difference shows up in reconciliation: MT940 crams the counterparty and the invoice reference into the free text of tag 86, so your ERP has to guess at them, while camt.053 gives each one its own field.
| Aspect | MT940 | camt.053 |
|---|---|---|
| Standard | SWIFT MT | ISO 20022 |
| Encoding | Flat text, positional tags | Nested XML, named elements |
| Opening balance | Tag 60F or 60M | Bal block coded OPBD |
| Transaction line | Tag 61 | Ntry element |
| Closing balance | Tag 62F or 62M | Bal block coded CLBD |
| Remittance detail | Free text inside tag 86 | Dedicated RmtInf, structured or unstructured |
| Transaction typing | Bank specific codes | BkTxCd domain, family, sub family |
The version sits in the XML namespace at the top of the file, written as camt.053.001.02 or camt.053.001.08. In practice US banks are not all on the same one: Huntington publishes camt.053.001.02 in its developer documentation, while newer usage guidelines such as the Payments Canada Lynx collection are written against camt.053.001.08. Check the namespace line of your own file before you build anything against it, because the element names you need (Stmt, Ntry, Bal, CdtDbtInd) are stable across versions even though the optional fields around them are not.
ISO 20022 stopped being a European concern and became the plumbing of US high value payments. Three dates explain why camt.053 keeps showing up in American treasury inboxes.
| Date | What happened |
|---|---|
| April 8, 2024 | CHIPS, operated by The Clearing House, migrated to ISO 20022. |
| July 14, 2025 | The Fedwire Funds Service moved to ISO 20022 in a single day cutover, retiring its legacy FAIM format. The date had been rescheduled from March 10, 2025. |
| November 22, 2025 | The SWIFT MT and ISO 20022 coexistence period on the SWIFT network ended. |
None of those dates forced camt.053 on your corporate account by itself, since statement reporting is a bank by bank decision. What they did was push US banks to build ISO 20022 pipes, and camt.053 is what comes out the other end. If your relationship manager has offered to switch you from BAI2 or MT940, this is why.
Once the entries are in a spreadsheet the rest is routine, and several systems take camt.053 directly. Both the Zoho Books bank statement converter and the Odoo bank statement converter pages cover platforms that import camt.053 natively but refuse a PDF. If you receive BAI2 from a US bank instead, the BAI to Excel converter handles that format, and the walkthrough for converting a camt.053 XML statement to CSV or Excel covers the manual options. Loading the data elsewhere? Map it through the bank statement OFX converter, the QuickBooks QBO format, or, for enterprise teams, the NetSuite bank statement converter. If you only have the PDF statement, the general bank statement converter and the PDF bank statement to Excel converter produce the same structured rows.
Most teams do not stop at Excel. If the next step is QuickBooks Online, you can turn the exported file into an importable QBO with a CSV to QBO converter. For any other business PDF you need as a sheet, a general PDF to Excel converter handles reports and tables, and finance teams processing supplier documents at volume can extract them with enterprise document OCR.
A camt.053 file is the ISO 20022 Bank to Customer Statement, an XML file your bank sends to report every entry booked to your account for the previous business day plus the opening and closing balances. It contains booked entries only, which makes it the final end of day statement rather than a live feed, and it is the modern replacement for the SWIFT MT940.
Rename the .xml file to .txt so the uploader accepts it, then upload it to BankXLSX. The converter reads each Ntry entry and writes it to its own row with booking date, value date, amount, debit or credit, description, and reference, then lets you download an XLSX workbook or a CSV. If you only have the PDF statement, upload that instead.
You can open it, but Excel treats it as generic XML and asks to build a schema, which spreads a single transaction across sheets or duplicates parent rows for every nested child. Amounts also come through unsigned because the debit or credit flag lives in a separate CdtDbtInd tag, so totals are wrong until you convert the file properly.
MT940 is the older SWIFT flat text statement built from positional tags, and camt.053 is the ISO 20022 XML statement that replaces it. camt.053 gives each piece of data its own named element, so the counterparty and the invoice reference sit in dedicated fields instead of being crammed into the free text of MT940 tag 86, which is why automated reconciliation matches far more lines.
camt.052 is the intraday account report and replaces MT942. camt.053 is the end of day statement of booked entries and replaces MT940 and MT950. camt.054 is a notification about one specific debit or credit and replaces MT900 and MT910. Only camt.053 is the final statement you reconcile your ledger against.
They are ISO 20022 balance type codes inside the Bal blocks. OPBD is the opening booked balance at the start of the statement period and CLBD is the closing booked balance at the end of it. CLAV is the closing available balance, which can be lower than CLBD because holds and uncleared items reduce what you can actually spend.
No. camt.053 reports booked entries only, meaning transactions that have already posted to the ledger. If you need to see pending or intraday activity, that is what the camt.052 account report is for. This is exactly why camt.053 is the file auditors and accountants reconcile against.
Look at the XML namespace on the Document element at the top of the file. It will end in camt.053.001.02, camt.053.001.08, or a similar version tag. Huntington documents camt.053.001.02 for its US clients, while newer usage guidelines are written against .08. The core elements you need are the same across versions.
Convert BAI2 balance reporting files instead.
Convert to OFX for finance software import.
Convert PDF statements to Excel instead.
Get started converting bank statements to spreadsheets.
USD
per month
billed as
$288 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 2,500 pages |
| Pro AI Best accuracy | 500 pages |
Scale statement conversion across your team with automation.
USD
per month
billed as
$888 yearly
Choose speed vs accuracy when extracting
| Base AI Faster | 10,000 pages |
| Pro AI Best accuracy | 2,000 pages |
Enterprise-grade bank statement conversion and controls.
USD
per month
billed as
$ yearly
Choose speed vs accuracy when extracting
| Base AI Faster | pages |
| Pro AI Best accuracy | pages |