Pain001 funciona en Python 3.10, 3.11 y 3.12 (cada versión probada en CI) en macOS, Linux y Windows. Instale lo que necesite; cada capacidad opcional es un extra, de modo que la instalación base se mantiene ligera.
01. PyPI#
| Lo que necesita | Comando |
|---|---|
| CLI principal & biblioteca de Python | pip install pain001 |
| Microservicio de API REST (FastAPI + Uvicorn) | pip install "pain001[api]" |
| Ingesta de Parquet (PyArrow) | pip install "pain001[parquet]" |
Archivos de entrada cifrados con PGP (.gpg / .asc) | pip install "pain001[gpg]" |
| Cola de trabajos asíncrona respaldada por Redis para la API | pip install "pain001[redis]" |
| Trazado con OpenTelemetry | pip install "pain001[otel]" |
| Servidores MCP / LSP mínimos integrados | pip install "pain001[mcp]" / "pain001[lsp]" |
Los paquetes complementarios se instalan por separado y se versionan de forma independiente:
Verifique la instalación y explore el catálogo de mensajes:
02. Docker#
Se publican imágenes multiarquitectura (linux/amd64, linux/arm64) en GitHub Container Registry. El contenedor se ejecuta como un usuario dedicado sin privilegios de root.
# Generate XML from a local CSV
# Launch the REST API
03. Entornos restringidos#
Los entornos bancarios y de tesorería suelen prohibir la carga dinámica de plugins. Existen dos controles exactamente para ese caso:
PAIN001_DISABLE_PLUGINS=1desactiva toda detección de plugins de terceros; solo se ejecutan los loaders incluidos.pain001 plugins list/pain001 plugins show <name>hacen que cada plugin detectado sea auditable antes de su primer uso.
Todo se ejecuta localmente. Ningún paquete de la suite llama a casa, invoca una API SaaS ni mueve datos de pago fuera del host.
04. Primer archivo en tres comandos#
--dry-run valida contra el JSON Schema, el XSD y (con --scheme) un reglamento SEPA o transfronterizo sin escribir salida. El código de salida 0 significa que el fichero ha superado esas comprobaciones: el esquema y, cuando se selecciona, el reglamento del scheme. El perfil propio de su banco y sus reglas de canal son independientes y siguen requiriendo pruebas con el banco. Quite --dry-run para escribir el XML.
Continúe con la referencia técnica para cada opción y endpoint, o con la FAQ de inicio rápido para cuestiones operativas.
