Pain001 läuft auf Python 3.10, 3.11 und 3.12 (jede Version in der CI getestet) unter macOS, Linux und Windows. Installieren Sie, was Sie brauchen; jede optionale Fähigkeit ist ein Extra, sodass die Basisinstallation schlank bleibt.
01. PyPI#
| Was Sie benötigen | Befehl |
|---|---|
| Kern-CLI & Python-Bibliothek | pip install pain001 |
| REST-API-Microservice (FastAPI + Uvicorn) | pip install "pain001[api]" |
| Parquet-Einlesung (PyArrow) | pip install "pain001[parquet]" |
PGP-verschlüsselte Eingabedateien (.gpg / .asc) |
pip install "pain001[gpg]" |
| Redis-gestützte asynchrone Job-Warteschlange für die API | pip install "pain001[redis]" |
| OpenTelemetry-Tracing | pip install "pain001[otel]" |
| Eingebaute minimale MCP-/LSP-Server | pip install "pain001[mcp]" / "pain001[lsp]" |
Die Begleitpakete werden separat installiert und unabhängig versioniert:
pip install pain001-loader-xlsx # Excel ingestion (auto-discovered plugin)
pip install pain001-loader-mt101 # SWIFT MT101 parsing library
pip install pain001-mcp # Full 17-tool MCP server for AI agents
pip install pain001-lsp # Full six-feature editor language server
Überprüfen Sie die Installation und erkunden Sie den Nachrichtenkatalog:
pain001 --version
pain001 versions # list all 11 supported message definitions
pain001 init pain.001.001.09 # scaffold a starter CSV template
02. Docker#
Multi-Architektur-Images (linux/amd64, linux/arm64) werden in der GitHub Container Registry veröffentlicht. Der Container läuft als dedizierter Benutzer ohne Root-Rechte.
# Generate XML from a local CSV
docker run --rm -v "$PWD:/data" -w /data \
ghcr.io/sebastienrousseau/pain001:latest \
generate -t pain.001.001.09 -d payments.csv -o out/
# Launch the REST API
docker run --rm -p 8000:8000 \
ghcr.io/sebastienrousseau/pain001:latest \
serve --host 0.0.0.0 --port 8000
03. Abgeschottete Umgebungen#
Bank- und Treasury-Umgebungen verbieten häufig das dynamische Laden von Plugins. Genau für diesen Fall gibt es zwei Kontrollen:
PAIN001_DISABLE_PLUGINS=1deaktiviert jede Erkennung von Drittanbieter-Plugins; nur mitgelieferte Loader laufen.pain001 plugins list/pain001 plugins showmake every discovered plugin auditable before first use.
Alles wird lokal ausgeführt. Kein Paket der Suite telefoniert nach Hause, ruft eine SaaS-API auf oder bewegt Zahlungsdaten vom Host weg.
04. Erste Datei in drei Befehlen#
pip install pain001
pain001 init pain.001.001.09 -o work/
pain001 -t pain.001.001.09 -d work/template.csv -o work/ --dry-run
--dry-run validiert gegen das JSON-Schema, das XSD und (mit --scheme) ein SEPA- oder grenzüberschreitendes Regelwerk, ohne Ausgabe zu schreiben — Exit-Code 0 bedeutet, dass die Datei diese Prüfungen bestanden hat: das Schema und, sofern ausgewählt, das Regelwerk des Verfahrens. Das eigene Profil Ihrer Bank und ihre Kanalregeln sind davon getrennt und erfordern weiterhin Tests mit der Bank. Lassen Sie --dry-run weg, um das XML zu schreiben.
Weiter zur Technischen Referenz für jedes Flag und jeden Endpunkt oder zur Schnellstart-FAQ für betriebliche Fragen.