Pain001 berjalan pada Python 3.10, 3.11 dan 3.12 (setiap versi diuji dalam CI) pada macOS, Linux dan Windows. Pasang apa yang anda perlukan sahaja; setiap keupayaan pilihan disediakan sebagai ekstra, jadi pemasangan asasnya kekal ringan.
01. PyPI#
| Apa yang anda perlukan | Perintah |
|---|---|
| CLI teras & pustaka Python | pip install pain001 |
| Perkhidmatan mikro REST API (FastAPI + Uvicorn) | pip install "pain001[api]" |
| Pengambilan data Parquet (PyArrow) | pip install "pain001[parquet]" |
Fail input yang disulitkan PGP (.gpg / .asc) | pip install "pain001[gpg]" |
| Baris gilir kerja tak segerak berasaskan Redis untuk API | pip install "pain001[redis]" |
| Penjejakan OpenTelemetry | pip install "pain001[otel]" |
| Pelayan MCP / LSP minimum terbina dalam | pip install "pain001[mcp]" / "pain001[lsp]" |
Pakej pendamping dipasang secara berasingan dan diberi versi secara bebas:
Sahkan pemasangannya dan terokai katalog mesejnya:
02. Docker#
Imej pelbagai seni bina (linux/amd64, linux/arm64) diterbitkan ke GitHub Container Registry. Kontena itu berjalan sebagai pengguna bukan root yang khusus.
# Generate XML from a local CSV
# Launch the REST API
03. Persekitaran terkunci#
Persekitaran bank dan perbendaharaan kerap melarang pemuatan plugin secara dinamik. Dua kawalan disediakan khusus untuk kes tersebut:
PAIN001_DISABLE_PLUGINS=1melumpuhkan semua penemuan plugin pihak ketiga; hanya loader terbina dalam yang berjalan.pain001 plugins list/pain001 plugins show <name>menjadikan setiap plugin yang ditemui boleh diaudit sebelum penggunaan pertama.
Semuanya dijalankan secara setempat. Tiada pakej dalam rangkaian ini yang menghantar data pulang kepada pembangunnya, memanggil API SaaS, atau memindahkan data pembayaran keluar daripada hos.
04. Fail pertama dalam tiga perintah#
--dry-run mengesahkan terhadap JSON Schema, XSD, dan (dengan --scheme) rulebook SEPA atau rentas sempadan tanpa menulis output. Kod keluar 0 bermakna fail itu lulus pemeriksaan tersebut: skema, dan rulebook scheme apabila dipilih. Profil dan peraturan saluran bank anda sendiri adalah perkara berasingan, dan masih memerlukan ujian bersama bank. Buang --dry-run untuk menulis XML tersebut.
Teruskan ke Rujukan Teknikal untuk setiap flag dan titik akhir, atau ke Soalan Lazim Mula Pantas untuk soalan operasi.
