Pain001

Pain001 běží na Pythonu 3.10, 3.11 a 3.12 (každá verze je testována v CI) na macOS, Linuxu i Windows. Nainstalujte si, co potřebujete; každá volitelná schopnost je doplňkem, takže základní instalace zůstává štíhlá.


01. PyPI#

Co potřebujete Příkaz
Jádro CLI a knihovna pro Python pip install pain001
Mikroslužba REST API (FastAPI + Uvicorn) pip install "pain001[api]"
Načítání Parquet (PyArrow) pip install "pain001[parquet]"
Vstupní soubory šifrované PGP (.gpg / .asc) pip install "pain001[gpg]"
Asynchronní fronta úloh pro API postavená na Redis pip install "pain001[redis]"
Trasování OpenTelemetry pip install "pain001[otel]"
Vestavěné minimální servery MCP a LSP pip install "pain001[mcp]" / "pain001[lsp]"

Doprovodné balíčky se instalují zvlášť a jsou verzovány nezávisle:

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

Ověřte instalaci a projděte si katalog zpráv:

pain001 --version
pain001 versions          # list all 11 supported message definitions
pain001 init pain.001.001.09   # scaffold a starter CSV template

02. Docker#

Víceplatformní image (linux/amd64, linux/arm64) jsou publikovány do GitHub Container Registry. Kontejner běží pod vyhrazeným uživatelem bez práv roota.

# 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. Uzamčená prostředí#

Bankovní a treasury prostředí často zakazují dynamické načítání pluginů. Právě pro tento případ existují dvě pojistky:

  • PAIN001_DISABLE_PLUGINS=1 vypne veškeré vyhledávání pluginů třetích stran; spouštějí se jen dodávané loadery.
  • pain001 plugins list / pain001 plugins show make every discovered plugin auditable before first use.

Vše běží lokálně. Žádný balíček v sadě se nehlásí domů, nevolá SaaS API ani neodesílá platební data mimo hostitele.


04. První soubor třemi příkazy#

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 ověří vstup proti JSON Schema, XSD a (s přepínačem --scheme) proti pravidlům SEPA nebo přeshraničního schématu, aniž by zapsal výstup — návratový kód 0 znamená, že soubor těmito kontrolami prošel: kontrolou schématu a, pokud bylo zvoleno, pravidly platebního schématu. Vlastní profil vaší banky a pravidla kanálu jsou samostatná a stále vyžadují testování s bankou. Chcete-li XML zapsat, --dry-run vynechte.

Pokračujte technickou referencí, kde najdete každý přepínač i endpoint, nebo rychlým přehledem častých dotazů pro provozní otázky.