Skip to content

CAMT to CSV

Converter Tools ·
·

Convert a CAMT.053 bank statement (ISO 20022 XML) into a clean CSV with date, amount, currency, credit/debit, counterparty, and reference columns.

What is CAMT.053 anyway?

Your bank sent you a statement and the file ends in .xml. You open it expecting numbers and instead get a tangle of <Ntry>, <CdtDbtInd>, and <RmtInf> tags nested six levels deep. That’s CAMT.053, the ISO 20022 standard for bank-to-customer account statements. Banks across Europe and a growing chunk of the world hand it out instead of the old MT940 telex format.

It’s great for software. It’s terrible to read. And good luck importing it into a spreadsheet as-is.

Paste the XML here and you get a flat CSV back, one row per transaction. Seventeen columns covering what reconciliation actually needs: booking and value dates, a signed amount with its currency, credit or debit, the booking status, the counterparty name and IBAN, the end-to-end ID, mandate ID and account servicer reference each in its own column, the joined remittance text, plus every statement’s opening and closing balance. Pick comma or semicolon and, if Excel mangles your umlauts, tick the BOM box. Drop it into Excel, Google Sheets, or your accounting import and move on.

How the conversion works

The parser reads the document with the browser’s built-in DOMParser, then walks every <Ntry> element. Each entry is one booking on your statement. Here’s what gets pulled from each one:

  • Booking date comes from BookgDt. If the bank used a full timestamp (DtTm) instead of a plain Dt, the time portion is trimmed off so the column stays a tidy date.
  • Amount and currency read from <Amt> and its Ccy attribute. So <Amt Ccy="EUR">1250.00</Amt> splits into 1250.00 and EUR.
  • Type maps CRDT to Credit and DBIT to Debit. The raw codes are ugly, so they’re spelled out.
  • Signed amount flips debits negative. Money out shows as -89.90, money in stays positive. Handy for a quick SUM in a sheet.
  • Counterparty is direction-aware. On a debit, the relevant party is the creditor you paid; on a credit, it’s the debtor who paid you. The parser grabs whichever Nm fits and falls back to the other if one’s missing.
  • Remittance info joins the unstructured note lines (RmtInf/Ustrd). Some banks split a payment note across two or three of these, so they’re stitched together with a space. The structured references (end-to-end ID, mandate ID, account servicer reference) each land in their own column instead of being flattened into one.

One detail worth mentioning: CAMT has a dozen versions (camt.053.001.02 through .08 and beyond), each with its own XML namespace. Rather than hard-code one, the parser matches on tag names and ignores the namespace prefix entirely. A German bank’s file and a Swiss one parse the same way.

Things to watch out for

CAMT lets a single <Ntry> wrap several individual transactions in a batch (think a payroll run booked as one line). By default this converter expands each detail block into its own row, so a batch of twenty salary payments comes out as twenty rows rather than a single lump, and the child rows inherit the entry-level date and reference they leave out. Want the bank’s original one-line-per-booking view instead? Flip Batch entries to One row and each entry collapses back to a single row carrying the batch total.

Nothing leaves your browser. The XML is parsed locally, which matters a lot here, since a bank statement is about as sensitive as a file gets. No upload, no server, no log.

FAQ

Which CAMT versions does it support?

Any camt.053 statement that uses standard Ntry elements, regardless of the exact minor version. Because it ignores XML namespaces and matches tag names, it works across .02, .04, .08, and the rest without you picking anything.

Will it handle CAMT.052 or CAMT.054 too?

Often, yes. Those formats share the same <Ntry> structure, so intraday reports (052) and debit/credit notifications (054) usually parse fine. It’s tuned for 053, but the underlying tags overlap.

Why is my debit shown as a negative number?

That’s the Signed Amount column doing its job. The raw <Amt> value is always positive in CAMT, so debits are flagged separately with DBIT. The signed column folds that direction into the number so you can total a whole month with one formula.

The counterparty cell is empty. What gives?

Some banks omit the party name on certain bookings, like fees or interest. When there’s no Nm to read, the cell stays blank instead of guessing. The rest of the row still comes through fine.

Can I open the result straight in Excel?

Yep. The CSV follows RFC 4180, quoting any field that contains the active delimiter or a quote and ending rows with CRLF, which is what Excel expects. If your Excel is set to a European locale, switch the delimiter to semicolon and tick the BOM box so accented names come through clean. Hit Download for a statement.csv, or copy and paste into a sheet.

converter camt iso20022 csv banking

Related Tools

CSV to CAMT

Converter Tools

Build a valid CAMT.053 ISO 20022 bank statement from a simple CSV. Map date, amount, currency, credit/debit, counterparty, and reference into one XML per row.

CSV to MT940

Converter Tools

Turn a date, amount, description CSV into a simplified MT940 statement with :20:, :25:, :28C:, :60F:, :61:/:86:, and :62F: tags. Runs in your browser.

MT940 to CSV

Converter Tools

Parse an MT940 SWIFT bank statement into a clean CSV with date, value date, amount, debit/credit, type, reference, and description columns.

CSV JSON Converter

Converter Tools

Bidirectional converter between CSV and JSON formats with proper quoting and escaping

CSV to LaTeX Table

Converter Tools

Turn CSV data into a clean LaTeX tabular. Booktabs or hlines, bold headers, smart column alignment, and special chars escaped automatically.

ICS to CSV

Converter Tools

Turn an iCalendar .ics file into a clean CSV with Summary, Start, End, Location, Description, and Organizer columns. Runs in your browser.

OFX to CSV

Converter Tools

Convert an OFX bank or credit-card statement to CSV with Date, Amount, Type, Name, Memo, and FITID columns. Parses unclosed SGML tags in your browser.

QIF to CSV

Converter Tools

Convert a Quicken QIF file into clean CSV with Date, Amount, Payee, Category, Memo, and Cleared columns. Parses every record right in your browser.

vCard to CSV

Converter Tools

Turn .vcf contact files into a clean CSV with name, phone, email, org, title, and URL columns. Parses one card or hundreds, all in your browser.

More in Converter Tools

Square Meters to Square Feet

Convert square meters to square feet in the browser. One sq m is 10.7639 sq ft. Live converter with a unit dropdown and a reference table for floor plans.

XML to TXT

Strip XML tags and pull clean plain text from any markup. Collapse whitespace, label elements, or flatten to one line. Runs in your browser.

Yards to Meters

Convert yards to meters in the browser. One yard equals exactly 0.9144 meters. Live converter with a unit dropdown and a reference table for sports and fabric.

YAML JSON Converter

Bidirectional converter between YAML and JSON with support for objects, arrays, and nested structures

Acres to Square Feet

Convert acres to square feet in your browser. One acre is exactly 43,560 sq ft. Live converter with a unit dropdown and a reference table for land and lots.

Bar to PSI

Convert bar to psi instantly. 1 bar equals 14.5038 psi. Live pressure converter with a reference table for tires, espresso, and diving. Browser-side.

Celsius to Fahrenheit

Convert Celsius to Fahrenheit instantly. F = C x 9/5 + 32. Anchors: 0C is 32F, 100C is 212F, body temp 37C is 98.6F. Runs in your browser.

Celsius to Kelvin

Convert Celsius to Kelvin instantly. K = C + 273.15. Anchors: 0C is 273.15K, absolute zero is -273.15C (0K), 100C is 373.15K. Runs in browser.

CM to Inches

Convert centimeters to inches instantly in your browser. 1 inch equals 2.54 cm exactly, so 1 cm is 0.393701 inches. Live converter plus a reference table.

Cooking Converter

Convert between cooking units, cups, tbsp, tsp, ml, oz, grams, lbs, and oven temperatures (°F, °C, gas mark).

Color Format Converter Pro

Convert colors between HEX, RGB, HSL, HSV, CMYK, CSS modern syntax, and integer formats

Cups to ML

Convert cups to milliliters for cooking and baking. 1 US cup equals 236.588 ml. Handles the US cup vs 250 ml metric cup gap, live in your browser.

View all 62Converter Tools