banking-process-converter

N8N Custom Nodes for converting JSON and Mermaid diagrams to BPMN and ARIS EPC XML formats for banking processes

Package Information

Released: 11/19/2025
Downloads: 20 weeklyĀ /Ā 622 monthly
Latest Version: 1.3.0
Author: Pablo Ameri

Documentation

šŸ”§ Custom N8N Nodes - Banking System

This folder contains custom nodes developed for the banking process automation system.

šŸ“ Structure

custom-nodes/
ā”œā”€ā”€ src/                    # TypeScript source code
│   ā”œā”€ā”€ index.ts           # Main entry point
│   └── nodes/             # Individual nodes
│       └── JsonConverter/ # JSON converter node
ā”œā”€ā”€ dist/                  # Compiled JavaScript code
ā”œā”€ā”€ package.json          # Package configuration
ā”œā”€ā”€ tsconfig.json         # TypeScript configuration
└── README.md            # This file

šŸŽÆ Available Nodes

JsonConverter

  • Description: Converts structured JSON to BPMN 2.0 and ARIS (AML) formats
  • Features:
    • āœ… BPMN 2.0 conversion (valid XML)
    • āœ… ARIS AML conversion (compatible XML)
    • āœ… Input JSON validation
    • āœ… Automatic XML character escaping
    • āœ… Flexible output (XML string or binary file)

Input Parameters

  • jsonInput: Structured process JSON
  • outputFormat: Output format (BPMN or ARIS)
  • outputType: Output type (XML string or binary file)

Usage Example

{
  "jsonInput": {
    "process": {
      "name": "Account Opening",
      "steps": [...],
      "actors": [...]
    }
  },
  "outputFormat": "BPMN",
  "outputType": "xml_string"
}

šŸ› ļø Development

Prerequisites

  • Node.js 18+
  • TypeScript 5.0+
  • npm

Install Dependencies

cd custom-nodes
npm install

Compilation

npm run build

Development in Watch Mode

npm run dev

šŸ“¦ Distribution

Create NPM Package

npm run build
npm pack

Publish to NPM

# For public development
npm publish

## šŸ”§ Installation in N8N

### **Method 1: Global NPM**

```bash
npm install -g n8n-nodes-banking-process-converter

Method 2: Local NPM

cd /path/to/n8n
npm install n8n-nodes-banking-process-converter

Method 3: Local File

# Copy compiled files
cp -r dist/* /path/to/n8n/custom/nodes/

šŸ“‹ Expected JSON Format

The node expects a JSON with the following structure:

{
  "process": {
    "name": "string",
    "description": "string",
    "business_domain": "string",
    "actors": [
      {
        "id": "string",
        "name": "string",
        "type": "human|system|external",
        "role": "string",
        "department": "string"
      }
    ],
    "steps": [
      {
        "id": "string",
        "name": "string",
        "description": "string",
        "actor": "string",
        "system": "string",
        "inputs": ["string"],
        "outputs": ["string"],
        "rules": ["string"],
        "conditions": ["string"],
        "estimated_time": "string",
        "order": number
      }
    ],
    "flows": [
      {
        "from": "string",
        "to": "string",
        "condition": "string",
        "type": "normal|exception|parallel"
      }
    ],
    "documents": [
      {
        "name": "string",
        "type": "input|output|internal",
        "required": boolean,
        "step": "string"
      }
    ],
    "rules": [
      {
        "id": "string",
        "description": "string",
        "type": "validation|approval|business",
        "applies_to": ["string"]
      }
    ],
    "metrics": [
      {
        "name": "string",
        "value": "string",
        "unit": "string",
        "step": "string"
      }
    ],
    "exceptions": [
      {
        "id": "string",
        "description": "string",
        "trigger": "string",
        "resolution": "string",
        "step": "string"
      }
    ]
  },
  "metadata": {
    "source": "string",
    "interview_date": "string",
    "participants": ["string"],
    "duration": "string",
    "confidence": "High|Medium|Low"
  }
}

šŸ” Validations

The node performs the following validations:

  1. JSON Structure: Verifies the JSON has the expected structure
  2. Required Fields: Validates that required fields exist
  3. Data Types: Verifies that types match expectations
  4. References: Validates that references between objects are consistent

🚨 Error Handling

  • Invalid JSON: Returns error with problem details
  • Incorrect Structure: Shows which fields are missing or incorrect
  • Broken References: Identifies references to non-existent objects
  • Special Characters: Automatically handles XML escaping

šŸ“ˆ Performance

  • Maximum Size: Supports JSON up to 10MB
  • Processing Time: < 5 seconds for typical processes
  • Memory: Optimized usage to avoid memory leaks

šŸ”„ Versions

  • v1.0.0: Initial version with basic conversion
  • v1.0.1: Input validation improvements
  • v1.0.2: Performance optimization
  • v1.0.3: Improved special character support

šŸ“ Upcoming Versions

  • v1.1.0: Multiple process support
  • v1.2.0: Advanced BPMN validation
  • v1.3.0: Export to other formats
  • v2.0.0: Graphical interface for configuration

Last updated: $(date)

Discussion