n8n-nodes-ibanforge 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 IBANforge
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# n8n-nodes-ibanforge
|
|
2
2
|
|
|
3
|
-
IBAN validation, BIC/SWIFT lookup, Swiss clearing and compliance pre-checks inside your [n8n](https://n8n.io) workflows
|
|
3
|
+
IBAN validation, BIC/SWIFT lookup, Swiss clearing and compliance pre-checks inside your [n8n](https://n8n.io) workflows, backed by the [IBANforge](https://ibanforge.com?src=n8n) API and national bank registers (121k+ BIC entries, 89 IBAN countries).
|
|
4
4
|
|
|
5
5
|
Typical uses: verify supplier IBANs at onboarding, triage a payout list before the batch leaves, enrich a CRM record with the issuing bank, stop payments whose bank code the national register does not know.
|
|
6
6
|
|
|
@@ -13,6 +13,10 @@ Typical uses: verify supplier IBANs at onboarding, triage a payout list before t
|
|
|
13
13
|
| **Look up Swiss clearing** | BC-Nummer / IID → institution, seat address, SIC/euroSIC/instant rails, QR-IID semantics |
|
|
14
14
|
| **Compliance check** | Bank-level sanctions (OFAC, EU, UN), FATF lists, SEPA/VoP, 0-100 risk score. Bank-level, not name screening |
|
|
15
15
|
|
|
16
|
+
## Example workflow
|
|
17
|
+
|
|
18
|
+
[`examples/check-supplier-iban.json`](https://github.com/cammac-creator/ibanforge/blob/main/integrations/n8n/examples/check-supplier-iban.json) is a four-node workflow you can paste into n8n (**Workflows → Import from File**, or paste it on the canvas): a manual trigger, a field holding a supplier IBAN, the IBANforge node set to **Validate IBAN**, and an **If** node that routes on the `valid` field of the answer. Pick your IBANforge API credentials on the IBANforge node after importing.
|
|
19
|
+
|
|
16
20
|
## Installation
|
|
17
21
|
|
|
18
22
|
Community nodes panel: **Settings → Community nodes → Install** → `n8n-nodes-ibanforge`.
|
|
@@ -49,10 +53,10 @@ The [key dialog on ibanforge.com](https://ibanforge.com?src=n8n) does the same f
|
|
|
49
53
|
|
|
50
54
|
## Honest limits
|
|
51
55
|
|
|
52
|
-
- The bank-code check tells you what the **national register** says about the code inside the IBAN
|
|
56
|
+
- The bank-code check tells you what the **national register** says about the code inside the IBAN. It never claims the *account* exists or matches a name (that is Verification of Payee, a regulated-PSP scheme).
|
|
53
57
|
- Sanctions screening is **bank-level (BIC8)**, not name-level, and is not a regulated AML/CFT product.
|
|
54
58
|
- Full API reference: [ibanforge.com/docs](https://ibanforge.com/docs?src=n8n) · data provenance: [ibanforge.com/docs/data-sources](https://ibanforge.com/docs/data-sources?src=n8n)
|
|
55
59
|
|
|
56
60
|
## License
|
|
57
61
|
|
|
58
|
-
[MIT](
|
|
62
|
+
[MIT](LICENSE)
|
|
@@ -4,6 +4,7 @@ exports.IbanForgeApi = void 0;
|
|
|
4
4
|
class IbanForgeApi {
|
|
5
5
|
name = 'ibanForgeApi';
|
|
6
6
|
displayName = 'IBANforge API';
|
|
7
|
+
icon = { light: 'file:ibanforge.svg', dark: 'file:ibanforge.svg' };
|
|
7
8
|
documentationUrl = 'https://ibanforge.com/docs/api-keys?src=n8n';
|
|
8
9
|
properties = [
|
|
9
10
|
{
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60">
|
|
2
|
+
<rect width="60" height="60" rx="12" fill="#14263f"/>
|
|
3
|
+
<path d="M14 40 V20 h4 v20 z" fill="#c8742f"/>
|
|
4
|
+
<path d="M24 40 V20 h4 v8 l8 -8 h5.5 l-9 9 9.5 11 h-5.5 l-7 -8.5 -1 1 V40 z" fill="#f5f1e6"/>
|
|
5
|
+
<circle cx="45" cy="23" r="3" fill="#c8742f"/>
|
|
6
|
+
</svg>
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.IbanForge = void 0;
|
|
4
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
4
5
|
/**
|
|
5
6
|
* Declarative (routing-style) node: every operation maps straight onto the
|
|
6
|
-
* REST API, no execute() code and zero runtime dependencies
|
|
7
|
+
* REST API, no execute() code and zero runtime dependencies, the shape the
|
|
7
8
|
* n8n verified-community-node programme requires (MIT + no deps + one
|
|
8
9
|
* package per service).
|
|
9
10
|
*/
|
|
@@ -11,16 +12,17 @@ class IbanForge {
|
|
|
11
12
|
description = {
|
|
12
13
|
displayName: 'IBANforge',
|
|
13
14
|
name: 'ibanForge',
|
|
14
|
-
icon: 'file:ibanforge.svg',
|
|
15
|
+
icon: { light: 'file:ibanforge.svg', dark: 'file:ibanforge.svg' },
|
|
15
16
|
group: ['transform'],
|
|
16
17
|
version: 1,
|
|
17
18
|
subtitle: '={{$parameter["operation"]}}',
|
|
18
|
-
description: 'Validate IBANs against
|
|
19
|
+
description: 'Validate IBANs and check the bank code against national bank registers, resolve BIC/SWIFT codes, look up Swiss clearing data and run compliance pre-checks',
|
|
19
20
|
defaults: {
|
|
20
21
|
name: 'IBANforge',
|
|
21
22
|
},
|
|
22
|
-
inputs: [
|
|
23
|
-
outputs: [
|
|
23
|
+
inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
|
|
24
|
+
outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
|
|
25
|
+
usableAsTool: true,
|
|
24
26
|
credentials: [
|
|
25
27
|
{
|
|
26
28
|
name: 'ibanForgeApi',
|
|
@@ -43,7 +45,7 @@ class IbanForge {
|
|
|
43
45
|
{
|
|
44
46
|
name: 'Validate IBAN',
|
|
45
47
|
value: 'validateIban',
|
|
46
|
-
action: 'Validate
|
|
48
|
+
action: 'Validate IBAN',
|
|
47
49
|
description: 'Structure + checksum + issuing bank, bank-code check against the national register, SEPA and VoP reachability',
|
|
48
50
|
routing: {
|
|
49
51
|
request: {
|
|
@@ -58,7 +60,7 @@ class IbanForge {
|
|
|
58
60
|
{
|
|
59
61
|
name: 'Look Up BIC',
|
|
60
62
|
value: 'lookupBic',
|
|
61
|
-
action: 'Look up
|
|
63
|
+
action: 'Look up BIC or SWIFT code',
|
|
62
64
|
description: 'Resolve a BIC/SWIFT code into bank name, city, country and LEI',
|
|
63
65
|
routing: {
|
|
64
66
|
request: {
|
|
@@ -70,7 +72,7 @@ class IbanForge {
|
|
|
70
72
|
{
|
|
71
73
|
name: 'Look Up Swiss Clearing',
|
|
72
74
|
value: 'lookupChClearing',
|
|
73
|
-
action: 'Look up
|
|
75
|
+
action: 'Look up BC number or IID',
|
|
74
76
|
description: 'Swiss BC-Nummer / IID: institution, seat address, SIC/euroSIC/instant participation, QR-IID semantics',
|
|
75
77
|
routing: {
|
|
76
78
|
request: {
|
|
@@ -82,8 +84,8 @@ class IbanForge {
|
|
|
82
84
|
{
|
|
83
85
|
name: 'Compliance Check',
|
|
84
86
|
value: 'complianceCheck',
|
|
85
|
-
action: 'Run
|
|
86
|
-
description: 'Bank-level sanctions (OFAC + EU), FATF lists, SEPA/VoP reachability, 0-100 risk score
|
|
87
|
+
action: 'Run compliance check on IBAN',
|
|
88
|
+
description: 'Bank-level sanctions (OFAC + EU), FATF lists, SEPA/VoP reachability, 0-100 risk score, at bank level and not by name',
|
|
87
89
|
routing: {
|
|
88
90
|
request: {
|
|
89
91
|
method: 'POST',
|
|
@@ -103,7 +105,7 @@ class IbanForge {
|
|
|
103
105
|
type: 'string',
|
|
104
106
|
required: true,
|
|
105
107
|
default: '',
|
|
106
|
-
placeholder: 'DE89370400440532013000',
|
|
108
|
+
placeholder: 'e.g. DE89370400440532013000',
|
|
107
109
|
description: 'The IBAN to check (spaces are tolerated)',
|
|
108
110
|
displayOptions: {
|
|
109
111
|
show: {
|
|
@@ -117,7 +119,7 @@ class IbanForge {
|
|
|
117
119
|
type: 'string',
|
|
118
120
|
required: true,
|
|
119
121
|
default: '',
|
|
120
|
-
placeholder: 'COBADEFF',
|
|
122
|
+
placeholder: 'e.g. COBADEFF',
|
|
121
123
|
description: 'BIC8 or BIC11 to resolve',
|
|
122
124
|
displayOptions: {
|
|
123
125
|
show: {
|
|
@@ -131,7 +133,7 @@ class IbanForge {
|
|
|
131
133
|
type: 'string',
|
|
132
134
|
required: true,
|
|
133
135
|
default: '',
|
|
134
|
-
placeholder: '230',
|
|
136
|
+
placeholder: 'e.g. 230',
|
|
135
137
|
description: 'Swiss institution identifier (3-5 digits) or QR-IID (30000-31999)',
|
|
136
138
|
displayOptions: {
|
|
137
139
|
show: {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "n8n-nodes-ibanforge",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "IBAN validation, BIC/SWIFT lookup, Swiss clearing and compliance pre-checks for n8n workflows
|
|
3
|
+
"version": "0.1.3",
|
|
4
|
+
"description": "IBAN validation, BIC/SWIFT lookup, Swiss clearing and compliance pre-checks for n8n workflows, backed by national bank registers (121k+ BIC entries, 89 IBAN countries)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"n8n-community-node-package",
|
|
7
7
|
"iban",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"node": ">=20"
|
|
29
29
|
},
|
|
30
30
|
"scripts": {
|
|
31
|
-
"build": "tsc && mkdir -p dist/nodes/IbanForge && cp nodes/IbanForge/ibanforge.svg nodes/IbanForge/IbanForge.node.json dist/nodes/IbanForge/",
|
|
31
|
+
"build": "tsc && mkdir -p dist/nodes/IbanForge dist/credentials && cp nodes/IbanForge/ibanforge.svg nodes/IbanForge/IbanForge.node.json dist/nodes/IbanForge/ && cp credentials/ibanforge.svg dist/credentials/",
|
|
32
32
|
"lint": "tsc --noEmit"
|
|
33
33
|
},
|
|
34
34
|
"files": [
|
|
@@ -43,6 +43,9 @@
|
|
|
43
43
|
"dist/nodes/IbanForge/IbanForge.node.js"
|
|
44
44
|
]
|
|
45
45
|
},
|
|
46
|
+
"peerDependencies": {
|
|
47
|
+
"n8n-workflow": "*"
|
|
48
|
+
},
|
|
46
49
|
"devDependencies": {
|
|
47
50
|
"n8n-workflow": "^2.16.0",
|
|
48
51
|
"typescript": "^5.6.0"
|