Package Information
Documentation
@cotec-it-systeme/n8n-nodes-selectline
An n8n community node that exposes the SelectLine Mobile API (the "slmobileApi")
ERP/CRM REST API as a single, comprehensive n8n node.
The UI is in German — resource names, operation names and field labels follow SelectLine's own
terminology, so the node reads the way the ERP does.
📖 Full documentation: https://docs.cotec-it-systeme.de/n8n-nodes/selectline-node/
This page ships inside the package and is therefore frozen at the version you installed. The
documentation site is updated independently — check it for per-resource references, worked
examples and anything added since this release.
Features
- Full API coverage — all 286 user-facing SelectLine Mobile API endpoints across 39
resources (Kunden, Lieferanten, Belege, Artikel, Buchhaltung, Produktion, Lager,
Mahnwesen, E-Mail via Microsoft Graph, …), against the v1 revision of the SelectLine
Mobile API spec. Login is handled transparently; logout additionally as an explicit
Konto → Abmelden operation. - Dual input mode — every create/update body can be entered either as structured UI
fields or via a raw-JSON editor (a per-operation „JSON-Eingabe nutzen“ toggle, pre-filled
with a JSON skeleton of the expected body). - Robust error handling — SelectLine
ApiResponse, ProblemDetails ({Type,Title,Detail})
and binary error bodies are decoded into readable n8n errors (message + response code +
details). Honors Continue On Fail. - Automatic pagination — list operations transparently page through all results using the
correct per-endpoint…ListFilternamespace. - Session handling — every
POST /Loginopens a session (an ERP instance) on the
SelectLine server that never expires on its own, so the node keeps exactly one: sessions
are cached perusername:appKey, parallel executions share a single login, and a session
that is replaced (401/403 re-auth, expiry) or left idle for longer than the configured
Sitzungs-Timeout is closed withPOST /Logout. Transient 5xx/network errors get a
bounded retry. - Standard-Mandant — the tenant (plus optional year / WaWi token) configured in the
credential is applied to every new session viaPUT /Users/Current, and sessions are cached
per tenant. A workflow can still switch tenant mid-run with Nutzer → Aktuellen Benutzer
aktualisieren: that switch applies to the remaining nodes of that workflow execution
only, so reading from another tenant and switching back never moves a parallel execution
off its own tenant. - Binary output — the PDF operations (Beleg drucken, Mahnungs-PDF, Handlager-PDF)
return the PDF as binary data; any operation that produces a file attaches it to the item
as binary data. - File upload — the camt-Bankauszug-Import and the Microsoft-Graph e-mail operations
send binary input data asmultipart/form-data.
Requirements
- n8n 2.0+ (the node targets
n8n-workflow^2.x and usesNodeConnectionTypes). - Node.js >= 20.19.
Installation
Self-hosted n8n, via the UI:
- Settings → Community Nodes → Install
- Enter
@cotec-it-systeme/n8n-nodes-selectline - Accept the risk prompt and install; n8n restarts the node loader itself.
The package has no runtime dependencies — it ships as compiled JavaScript only.
Targets self-hosted n8n. This is a commercial, non-MIT package and therefore not an n8n
verified community node — verification requires an MIT licence and an English-only interface —
so it is not discoverable from the in-app nodes panel; install it by name as above. See
License.
Credentials
Create a SelectLine API credential with:
| Field | Description |
|---|---|
| Lizenzschlüssel | your license key for this node, issued by cotec it-systeme (see License) |
| Base URL | e.g. https://slmobile.example.com/slmobileApi |
| Username / Password | SelectLine API login |
| App Key | SelectLine application key |
| Standard-Mandant (Datenbankname) | tenant every session is pinned to, e.g. SL_MMyTenant — read it from Mandanten → Get Many, field Name; empty = the server's default tenant |
| Standard-Jahr (Datenbankname) | optional year applied with the tenant (accounting routes need an active year) |
| WaWi-Benutzertoken | optional, applied with the tenant |
| Sitzungs-Timeout (Minuten) | idle time after which an unused SelectLine session is logged out (default 15, 0 = never) |
| Allow Unauthorized Certs | enable only for self-signed dev servers |
Usage
- Add the SelectLine API node.
- Choose a Ressource (e.g. Kunden) and an Operation (e.g. Alle Kunden abrufen).
- Fill the operation's fields, or toggle JSON-Eingabe nutzen to paste a raw JSON body.
- List operations expose pagination/search/sort/filter via the Listenoptionen /
Zusätzliche Felder collections.
License
Source-available, commercial. © cotec it-systeme GmbH — see LICENSE.md
for the full EULA (German, authoritative).
Installing and evaluating the package is free; running it requires a license key from
cotec it-systeme, entered in the credential's Lizenzschlüssel field. To purchase a licence,
contact support@cotec-it-systeme.de.
License verification (what the node phones home)
Transparency notice: on execution the node validates the configured license key against
cotec's license server at https://license.cotec-it-systeme.de/api/licenses/verify.
- What is sent: the license key, the product id (
n8n-nodes-selectline), the client
version, and a non-reversible instance fingerprint (a truncated SHA-256 hash of the
hostname and the SelectLine base URL, used for seat counting). No personal data, no
workflow data, and no SelectLine credentials or payloads are ever transmitted. - How often: verdicts are cached in memory — roughly one request per license key per
hour per running n8n process (plus a re-check after each n8n restart). - Outage behaviour: responses are Ed25519-signed and verified locally. If the license
server is unreachable, the node keeps working within a 14-day grace window from
the last successful validation, so a cotec outage never blocks your workflows. Only a
signed negative verdict (invalid/expired/revoked key) or an exhausted grace window
blocks execution, with a German error message explaining why. - Overrides:
COTEC_LICENSE_URL(alternate server, e.g. staging),COTEC_LICENSE_PUBKEY
(alternate signing key; several PEM blocks may be concatenated so the node trusts each of them
during a key rotation) andSELECTLINE_DEBUG=1(log license decisions to the n8n execution
log). TheCOTEC_*variables are vendor-wide — one value configures every cotec node on the
same host. The olderSELECTLINE_LICENSE_URL/SELECTLINE_LICENSE_PUBKEYnames still work.
Support
Commercial support and licensing: support@cotec-it-systeme.de — cotec it-systeme GmbH.
Please include the node version, your n8n version and the German error message shown in the
execution log; the SelectLine response code (e.g. 00-002) is the most useful single detail.