n8n-nodes-camt-053-parser
v1.0.0
Published
n8n node for parsing ISO 20022 camt.053 messages to JSON
Downloads
31
Maintainers
Readme
n8n-nodes-camt-053-parser
A community node for n8n that parses ISO 20022 CAMT.053 bank statement XML files into structured JSON. This node leverages the robust camt-parser engine and is designed for use in n8n workflows.
What are n8n Community Nodes?
n8n is a powerful, open-source workflow automation tool. Community nodes extend n8n to integrate with new services or add new functionality. Learn more in the n8n Community Nodes documentation.
Features
- Parses ISO 20022 CAMT.053.001.02, .001.08, and .001.13 XML files
- Validates XML against XSD schemas
- Handles bank-specific quirks and missing/non-standard fields
- Outputs each parsed statement as a separate n8n item (see Output section)
- No credentials required; works entirely on provided XML
How It Works
- Add the node to your n8n workflow.
- Paste your CAMT.053 XML string into the node's input parameter.
- Each statement parsed from the XML will be output as a separate item, ready for further processing in your workflow.
Input
- XML String: The raw CAMT.053 XML content to parse (as a string).
Output
- Each statement in the XML is output as a separate n8n item, with the following structure:
{
"json": {
"statement": {
"statementTitle": "Statement 001",
"accountHolder": "John Doe",
"accountIBAN": "DE1234567890",
"currency": "EUR",
"statementDate": "2024-01-31",
"openingBalance": 1000.00,
"closingBalance": 1200.00,
"numberOfCredits": 3,
"totalCredits": 500.00,
"numberOfDebits": 2,
"totalDebits": 300.00,
"transactions": [
{
"date": "2024-01-30",
"amount": 200.00,
"currency": "EUR",
"type": "credit",
"counterpartyName": "Acme Corp",
"counterpartyAccountIBAN": "DE0987654321",
"description": "Invoice 1234",
"descriptionAdditional": null,
"endToEndReference": "E2E-REF-001",
"remittanceReference": "RF18539007547034",
"purpose": "SALA"
}
]
}
}
}- All fields conform to the official
Camt053Statementtype from the camt-parser. - If parsing fails for an input, and “Continue on Fail” is enabled, the output will be:
{
"json": {
"error": "Error message here",
"itemIndex": 0
}
}The output structure is enforced by the
Camt053OutputTypeScript type, which is always one of:{ statement: Camt053Statement }{ error: string, itemIndex: number }
This is different from the original camt-parser library, which returns all statements as an array. Here, n8n's itemized output allows you to process each statement individually in subsequent nodes.
Error Handling
- If “Continue on Fail” is enabled, errors for individual items will be output as above, and parsing will continue for other items.
- If not enabled, the workflow will stop on the first error.
Supported Standards
- ISO 20022 CAMT.053.001.02
- ISO 20022 CAMT.053.001.08
- ISO 20022 CAMT.053.001.13
Limitations & Notes
- Field nullability: If a field is missing in the source XML, it will be
nullin the output. - XSD validation: Files that do not conform to the XSD will fail to parse.
- Bank-specific quirks: Some banks may use highly non-standard layouts. Further customization may be required for edge cases.
Example Usage
- Add the "Camt053 Parser" node to your n8n workflow.
- Paste your CAMT.053 XML string in the node's "XML String" parameter.
- Each statement will be output as a separate item for downstream processing.
Parser Features & Details
This node is powered by the camt-parser engine. For detailed field descriptions, supported versions, and extension instructions, see the camt-parser README.
License
MIT. See LICENSE for details.
