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 JSONoutputFormat: 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:
- JSON Structure: Verifies the JSON has the expected structure
- Required Fields: Validates that required fields exist
- Data Types: Verifies that types match expectations
- 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)