Tumatakbo ang Pain001 sa Python 3.10, 3.11, at 3.12 (bawat bersyon ay nasusubok sa CI) sa macOS, Linux, at Windows. I-install ang kailangan ninyo; bawat opsyonal na kakayahan ay isang extra, kaya nananatiling magaan ang base install.
01. PyPI#
| Ang kailangan ninyo | Command |
|---|---|
| Core CLI at Python library | pip install pain001 |
| REST API microservice (FastAPI + Uvicorn) | pip install "pain001[api]" |
| Pag-ingest ng Parquet (PyArrow) | pip install "pain001[parquet]" |
PGP-encrypted na mga input file (.gpg / .asc) |
pip install "pain001[gpg]" |
| Redis-backed na async job queue para sa API | pip install "pain001[redis]" |
| OpenTelemetry tracing | pip install "pain001[otel]" |
| Built-in na minimal na MCP / LSP server | pip install "pain001[mcp]" / "pain001[lsp]" |
Ang mga companion package ay hiwalay na ini-install at may sariling bersyon:
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
I-verify ang pag-install at galugarin ang katalogo ng mga mensahe:
pain001 --version
pain001 versions # list all 11 supported message definitions
pain001 init pain.001.001.09 # scaffold a starter CSV template
02. Docker#
Ang mga multi-architecture na image (linux/amd64, linux/arm64) ay inilalathala sa GitHub Container Registry. Tumatakbo ang container bilang isang nakalaang non-root na user.
# 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. Mga naka-lock-down na kapaligiran#
Madalas na ipinagbabawal ng mga kapaligiran ng bangko at treasury ang dynamic na pag-load ng plugin. May dalawang kontrol para mismo sa kasong iyon:
- Dini-disable ng
PAIN001_DISABLE_PLUGINS=1ang lahat ng third-party na pagtuklas ng plugin; ang mga kasamang loader lamang ang tumatakbo. pain001 plugins list/pain001 plugins showmake every discovered plugin auditable before first use.
Lahat ay tumatakbo nang lokal. Walang package sa suite ang nag-uulat pauwi, tumatawag sa isang SaaS API, o naglilipat ng payment data palabas ng host.
04. Unang file sa tatlong command#
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
Vina-validate ng --dry-run laban sa JSON Schema, sa XSD, at (kasama ang --scheme) sa isang SEPA o cross-border na rulebook nang hindi nagsusulat ng output — ang exit code na 0 ay nangangahulugang naipasa ng file ang mga pagsusuring iyon: ang schema, at ang scheme rulebook kapag napili. Hiwalay dito ang sariling profile at mga panuntunan sa channel ng inyong bangko, at kailangan pa rin ang pagsubok kasama ang bangko. Alisin ang --dry-run upang isulat ang XML.
Magpatuloy sa Teknikal na Sanggunian para sa bawat flag at endpoint, o sa Quickstart FAQ para sa mga tanong sa operasyon.