sevDesk
A self-hostable worker that validates and converts the e-invoices sevDesk generates, as an independent authority-pinned check before they go out.
Listing pending
sevDesk generates XRechnung and ZUGFeRD, then trusts its own output. The beliq sevDesk worker adds an independent check: it reads the invoices sevDesk produced, validates them against authority-pinned rules for a second opinion sevDesk does not give, and converts them when a counterparty needs a different format (for example ZUGFeRD to Peppol BIS UBL). It runs on your own infrastructure, so your sevDesk token never leaves your environment.
- Package:
beliq-sevdeskon npm - Container:
ghcr.io/beliq-eu/beliq-sevdesk - Source: github.com/beliq-eu/beliq-sevdesk
What it does
On each run the worker lists sevDesk invoices since a stored high-water-mark, pulls each invoice’s XML, runs beliq convert to every configured target format, runs beliq validate, and classifies each as valid, invalid, or error. It exits non-zero when any invoice fails, matching the CLI and Action exit-code contract, and can POST a report to a webhook.
Configure
The worker is configured entirely through the environment:
| Variable | Description |
|---|---|
SEVDESK_API_TOKEN |
Your sevDesk API token (Settings → Advanced → API) |
BELIQ_API_KEY |
Your Beliq API key |
SEVDESK_TARGET_FORMATS |
Comma-separated convert targets; empty means validate only |
SEVDESK_NOTIFY_WEBHOOK |
Optional URL for a JSON poll report |
Run
docker run --rm \
-e SEVDESK_API_TOKEN="..." \
-e BELIQ_API_KEY="blq_..." \
-e SEVDESK_TARGET_FORMATS="peppol-bis" \
ghcr.io/beliq-eu/beliq-sevdesk --once
Drop --once to run as a polling daemon; the repository ships docker-compose, systemd, and GitHub Actions cron examples.
Boundary
The worker only validates and converts. It does not re-generate the invoice (sevDesk does that) or send it: transmission over Peppol or e-mail stays with sevDesk and your access point.
See also
- CLI: the validate and convert commands this worker calls.
- Convert reference: format families and lossy-path handling.