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, lightning, 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
  • Optional Lightning Network integration (experimental)

Status

Version 2.0.1, 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.1.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.0.1.tar.gz (1.4 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.0.1-py3-none-any.whl (737.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for openfatture-2.0.1.tar.gz
Algorithm Hash digest
SHA256 89ef25d133ba80682306f1d79f4d71bd02544727ee975b87a722102d3cb87d0f
MD5 f3c5268d1a125b70d2805a3bb9041d99
BLAKE2b-256 ce1cab72af3b11d19faad4172c9f1eb5aabae832adafc3cd6887c73481af8c6e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: openfatture-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 737.6 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.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6cef7e4e250aabea45d33dea1b59265dc6311c351f4f5124b9cc951adbc29ad1
MD5 5831e11672cb28ceab962a10b99ba2da
BLAKE2b-256 6b9454f75dec32f1aaa266ab923cb35a95bfadf476da919a71a46da701873c57

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