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]" |
แพ็กเกจเสริมติดตั้งแยกต่างหากและกำหนดเวอร์ชันอย่างเป็นอิสระ:
ตรวจสอบผลการติดตั้งและสำรวจรายการข้อความที่รองรับ:
02. Docker#
อิมเมจแบบหลายสถาปัตยกรรม (linux/amd64, linux/arm64) เผยแพร่บน GitHub Container Registry คอนเทนเนอร์ทำงานภายใต้ผู้ใช้เฉพาะที่ไม่ใช่ root
# Generate XML from a local CSV
# Launch the REST API
03. สภาพแวดล้อมที่ควบคุมเข้มงวด#
สภาพแวดล้อมของธนาคารและฝ่ายบริหารเงินมักห้ามการโหลดปลั๊กอินแบบพลวัต จึงมีกลไกควบคุมสองอย่างสำหรับกรณีนี้โดยเฉพาะ:
PAIN001_DISABLE_PLUGINS=1ปิดการค้นหาปลั๊กอินจากบุคคลที่สามทั้งหมด เหลือเพียงตัวโหลดที่มาพร้อมในตัวเท่านั้นที่ทำงานpain001 plugins list/pain001 plugins show <name>ทำให้ปลั๊กอินทุกตัวที่ค้นพบตรวจสอบได้ก่อนใช้งานครั้งแรก
ทุกอย่างทำงานภายในเครื่อง ไม่มีแพ็กเกจใดในชุดนี้ส่งข้อมูลกลับไปยังผู้พัฒนา เรียกใช้ API ของบริการ SaaS หรือย้ายข้อมูลการชำระเงินออกจากเครื่องที่ติดตั้ง
04. ไฟล์แรกในสามคำสั่ง#
--dry-run จะตรวจสอบกับ JSON Schema, XSD และ (เมื่อใช้ร่วมกับ --scheme) กฎเกณฑ์ของ SEPA หรือการโอนข้ามพรมแดน โดยไม่เขียนไฟล์ผลลัพธ์ รหัสสถานะการออก 0 หมายความว่าไฟล์ผ่านการตรวจสอบเหล่านั้นแล้ว ได้แก่ สกีมา และกฎเกณฑ์ของ scheme เมื่อเลือกใช้ ส่วนโปรไฟล์และกฎของช่องทางที่ธนาคารของคุณกำหนดเองนั้นแยกต่างหาก และยังคงต้องทดสอบกับธนาคาร หากต้องการเขียนไฟล์ XML ให้ตัด --dry-run ออก
อ่านต่อที่เอกสารอ้างอิงทางเทคนิคสำหรับรายละเอียดของทุกแฟล็กและทุก endpoint หรือที่คำถามที่พบบ่อยสำหรับการเริ่มต้นใช้งานสำหรับคำถามด้านการปฏิบัติงาน
