Pain001 פועלת על Python 3.10, 3.11 ו-3.12 (כל גרסה נבדקת ב-CI) ב-macOS, ב-Linux וב-Windows. התקינו רק את מה שדרוש לכם; כל יכולת אופציונלית היא תוספת, כך שההתקנה הבסיסית נשארת רזה.
01. PyPI#
| מה דרוש לכם | פקודה |
|---|---|
| CLI הליבה וספריית Python | pip install pain001 |
| מיקרו-שירות REST API (FastAPI + Uvicorn) | pip install "pain001[api]" |
| קליטת נתוני Parquet (PyArrow) | pip install "pain001[parquet]" |
קובצי קלט מוצפני PGP (.gpg / .asc) |
pip install "pain001[gpg]" |
| תור משימות אסינכרוני מבוסס Redis עבור ה-API | pip install "pain001[redis]" |
| מעקב באמצעות OpenTelemetry | pip install "pain001[otel]" |
| שרתי MCP / LSP מינימליים מובנים | pip install "pain001[mcp]" / "pain001[lsp]" |
חבילות הלוויין מותקנות בנפרד ומנוהלות בגרסאות עצמאיות:
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
אמתו את ההתקנה וסקרו את קטלוג ההודעות:
pain001 --version
pain001 versions # list all 11 supported message definitions
pain001 init pain.001.001.09 # scaffold a starter CSV template
02. Docker#
תמונות מרובות ארכיטקטורות (linux/amd64, linux/arm64) מתפרסמות ב-GitHub Container Registry. המכולה רצה כמשתמש ייעודי ללא הרשאות root.
# 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. סביבות נעולות#
סביבות בנקאיות וסביבות גזברות אוסרות פעמים רבות טעינה דינמית של תוספים. קיימים שני מנגנוני בקרה בדיוק למקרה הזה:
PAIN001_DISABLE_PLUGINS=1משבית כל איתור של תוספי צד שלישי; רק הטוענים המובנים פועלים.pain001 plugins list/pain001 plugins showmake every discovered plugin auditable before first use.
הכול פועל מקומית. אף חבילה בחבילת הכלים אינה מתקשרת החוצה, אינה קוראת ל-API של SaaS ואינה מוציאה נתוני תשלום מהמארח.
04. הקובץ הראשון בשלוש פקודות#
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 מאמת מול ה-JSON Schema, מול ה-XSD ו(בצירוף --scheme) מול ספר כללים של SEPA או של תשלומים חוצי גבולות, ללא כתיבת פלט — קוד יציאה 0 משמעו שהקובץ עבר את הבדיקות האלה: הסכימה, וספר הכללים של תוכנית התשלומים כשנבחרה. הפרופיל של הבנק שלכם וכללי הערוץ שלו הם עניין נפרד, והם עדיין מחייבים בדיקות מול הבנק. הסירו את --dry-run כדי לכתוב את ה-XML.
המשיכו אל המדריך הטכני לכל דגל ולכל נקודת קצה, או אל שאלות ההתחלה המהירה לשאלות תפעוליות.