camt053
A Rust library and command-line tool for parsing CAMT.053 (ISO 20022 Bank-to-Customer Statement) files and converting them to MT940 format.
Features
- Parse
camt.053.001.02XML statements (including from.ziparchives) - Reduce the verbose CAMT.053 schema into a simple, ergonomic model
(
SimpleStatements/SimpleStatement/SimpleTransaction) - Use this simplified model to import CAMT.053 statements into your own applications
- Convert statements to MT940 text format, for use in legacy banking software
- Command-line binary for quick inspection or conversion of statement files
Installation
As a command-line tool:
As a library, add it to your Cargo.toml:
[]
= "0.4"
The clap dependency (used only for the camt053 command-line binary) is
gated behind the cli feature, which is enabled by default. If you only use
the library and want to avoid pulling in clap, disable default features:
[]
= { = "0.4", = false }
Command-line usage
# Print summary of a CAMT.053 file (or a .zip containing many CAMT.053 files)
# Print the transactions
# Convert to MT940 instead of printing
Library usage
use SimpleStatements;
let statements = load?;
for statement in &statements
# Ok::
Look at the examples for more usage examples.
Bank support
Tested with statements from the following banks:
- ABN AMRO
- Rabobank (2009 and 2019 formats)
- SNS Bank (ASN Bank)
- ING Bank
Happy to accept contributions for other banks. Please open an issue or PR if you have a CAMT.053 file from a bank that is not yet supported.
License
Licensed under the MIT license.