Skip to main content

OpenFatture

OpenFatture is an agentic, CLI-first workspace for Italian electronic invoicing. Describe the work you need; the assistant coordinates the domain tools and returns an auditable result.

Why

Italian freelancers must issue invoices as FatturaPA XML and deliver them through SDI. The usual answer is a SaaS subscription that owns your client list, your invoices, and your archive. OpenFatture keeps all of it local: your data stays in a database on your machine, the XML is generated and validated offline, and every action is recorded in an event audit trail you can inspect. AI assistance is optional — the domain tools work without it.

Built for one-person businesses and small studios comfortable in a terminal.

Start

# Full stack (AI + RAG + ML + …). Core-only: uv sync
uv sync --all-extras
uv run openfatture init
uv run openfatture status
uv run openfatture assistant "Help me prepare an invoice for a software project"

Optional feature extras: ai, rag, ml, all. See docs/CONFIGURATION.md.

For a terminal conversation:

uv run openfatture interactive start

Public CLI

The supported surface is intentionally small:

  • init creates local state and guides setup.
  • assistant handles business requests in natural language.
  • interactive start opens a conversational session.
  • config reads or updates configuration.
  • status reports local readiness without mutation.

See docs/CLI_REFERENCE.md.

What it covers

  • FatturaPA XML generation and validation
  • PEC/SDI delivery and notification processing
  • Client, invoice, quote, payment, and batch workflows
  • Event audit trail, reports, and hooks
  • Optional AI assistance (assistant + domain tools), RAG, and forecasting extras

Status

Version 2.0.2, Python 3.12+ and uv. Packaging, extras, honesty gates, and the unified assistant runtime shipped in 2.0 — see docs/STATUS.md, docs/releases/v2.0.2.md, and docs/ARCHITECTURE.md.

Explicit non-goal: there is no browser frontend or web application surface, and adding one would be a separate product decision.

Documentation

Development

uv sync --all-extras
uv run python -m pytest -q
uv run ruff check .
uv run ruff format --check .
uv run mypy openfatture/

OpenFatture is released under the MIT License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openfatture-2.1.0.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openfatture-2.1.0-py3-none-any.whl (680.9 kB view details)

Uploaded Python 3

File details

Details for the file openfatture-2.1.0.tar.gz.

File metadata

  • Download URL: openfatture-2.1.0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for openfatture-2.1.0.tar.gz
Algorithm Hash digest
SHA256 5af8f4182df6dd05e40ad85894f5390c1e528e9fd6ab01648c87a8720f0adb83
MD5 15be4fbb32df2d70cce0b4583d7dcf34
BLAKE2b-256 b0fc2c69c5633f8f296873472f99e9903a3881cbe4f58713733d7cd012187478

See more details on using hashes here.

File details

Details for the file openfatture-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: openfatture-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 680.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for openfatture-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4805f0caa2a16182794e4011b60f3c2847f45cee0fb384ecbe0943129887fca4
MD5 284ba44767fa6aa09276fe90e8a080df
BLAKE2b-256 b75e4353c9213bf20230b91d3d387fdda436c50896785ba215e12f552f1e70ba

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page