L'archivio
che si organizza
da solo.
Vdoc raccoglie i documenti dell'azienda da quattro canali differenti, li interpreta con un motore di intelligenza artificiale proprietario, e li archivia con i metadati corretti e i permessi giusti. La base è Paperless-ngx, un sistema open source maturo. Sopra, Vdoc costruisce l'automazione di ingresso, la classificazione e le regole aziendali.
unificati
end-to-end
per documento
su modello AI
Cosa fa Vdoc, in concreto.
Arriva un documento: una fattura PDF, un contratto firmato, una ricevuta scansionata, una foto di uno scontrino. Vdoc lo legge, identifica di cosa si tratta, gli assegna un titolo, estrae la data reale del documento, individua il mittente, scrive un riassunto, applica le etichette tematiche, e lo archivia con i permessi corretti. Le persone giuste ricevono una notifica.
è ritrovarlo dopo nove mesi." — Premessa di progetto
Tre strati, responsabilità distinte.
Il sistema è organizzato in tre componenti con confini netti: un ingestore che riceve documenti da canali eterogenei, un motore AI che li interpreta, un archivio open source che li conserva. Ogni strato è sostituibile in modo indipendente.
Lo strato di ingestione presenta interfacce coerenti a quattro modalità di ingresso completamente differenti. Una scansione su una chiavetta, una cartella drag-and-drop su un PC, un'email inoltrata da un fornitore, una foto inviata da uno smartphone: tutte e quattro confluiscono nella stessa pipeline.
Lo strato di orchestrazione applica la logica aziendale: rileva duplicati, decide chi può vedere cosa, instrada la classificazione, notifica i destinatari. È il pezzo che conosce l'organigramma dell'azienda.
Lo strato AI — Forge AI — è un motore proprietario multi-provider che astrae il modello linguistico sottostante. Il resto del sistema non sa se sta parlando con Gemini, Claude, OpenAI o un modello locale: parla con un'interfaccia stabile.
Il percorso di un documento.
Qualunque sia il canale, ogni documento attraversa lo stesso percorso deterministico in sei tappe. La separazione è intenzionale: ogni tappa può evolvere senza toccare le altre.
Le tappe deterministiche (1-2, 4-6) impiegano complessivamente meno di tre secondi e sono interamente eseguite localmente sul server. La latenza dominante è la chiamata al provider AI esterno, che varia tra otto e dodici secondi per documento medio. Ottimizzazioni come modelli più leggeri, batch e cache riducono questo tempo per pipeline a volume elevato.
Quanto tempo,
quanto denaro.
La gestione documentale manuale è invisibile finché funziona, ma costa. Costa quando un fornitore chiama per chiedere se la fattura è arrivata, quando un contratto va trovato e nessuno ricorda dove sta, quando una collega in malattia è l'unica che sapeva dove archiviare le ricevute.
Tempo per documento: manuale vs. Vdoc
Una segretaria che riceve una fattura via email impiega in media tre-quattro minuti tra: aprirla, rinominare il file, scegliere una cartella, inserire i metadati nel gestionale, inoltrarla al responsabile. Su 80 documenti al mese, sono circa cinque ore mensili — sessanta ore l'anno. Vdoc riduce il lavoro umano alla sola verifica del documento già classificato.
Distribuzione del lavoro manuale
Costo cumulativo annuale
Stime basate su tempi rilevati in installazioni pilota e tariffe medie dei provider AI commerciali per documenti tra 1 e 5 pagine. Volumi maggiori → costi marginali decrescenti.
Quattro modi per inviare
un documento.
Il modo in cui un documento entra in azienda dipende da chi lo invia, da dove e con quale dispositivo. Vdoc presenta quattro canali differenti che convergono nella stessa pipeline di classificazione e archiviazione.
documenti@azienda.it.
Le email con allegati, provenienti da mittenti autorizzati, vengono
elaborate automaticamente. Utile per inoltrare documenti
ricevuti da fornitori.
Un'azienda può configurare più istanze di ciascun canale — più caselle email monitorate, più postazioni PC registrate, più utenti Telegram autorizzati — assegnando a ciascuna regole e permessi propri.
Il motore che interpreta
i documenti.
Vdoc integra Forge AI, una libreria proprietaria che astrae il provider linguistico sottostante. Cambiare modello — da Gemini a Claude, a un modello locale — significa cambiare una configurazione, non riscrivere il software.
Forge AI è un livello di astrazione provider-agnostico costruito attorno a tre principi: prompt versionati, output validati, costi tracciabili. Vdoc lo usa per estrarre metadati strutturati dai documenti senza accoppiarsi a un fornitore AI specifico.
Quattro provider, una sola interfaccia
Cosa Forge AI fa, oltre la chiamata
- Prompt versionati. Le istruzioni inviate all'AI sono salvate come versioni immutabili identificate da codice. Migliorare un prompt non rompe gli esistenti: il vecchio resta come riferimento, il nuovo entra in produzione.
- Validazione strutturata. Ogni risposta dell'AI è verificata contro uno schema. Se l'AI restituisce JSON malformato o un campo manca, il sistema rilancia automaticamente la richiesta o segnala l'errore senza corrompere l'archivio.
- Quote e tetti di spesa. Limiti mensili in token e in euro impostabili per installazione. Il sistema avvisa prima dell'esaurimento e blocca le nuove chiamate al raggiungimento del tetto, evitando sorprese di fatturazione.
- Throttling intelligente. Quando i canali pompano documenti in rapida sequenza, Forge AI regola automaticamente il ritmo delle chiamate per rispettare i limiti dei provider, senza errori HTTP 429 visibili all'utente.
- Catene multi-step. Per casi in cui una sola chiamata non basta (esempio: estrai i metadati, poi verifica la coerenza), Forge AI orchestra catene di chiamate con propagazione automatica degli output.
- Tracciamento completo. Ogni chiamata è registrata: provider, modello, token, costo stimato, latenza, esito. Il pannello mostra in tempo reale il consumo per giorno, per canale, per tipo documento.
- Chiavi API cifrate. Le credenziali dei provider non sono mai in chiaro sul server. Cifratura Fernet con master key locale e permessi file system stretti.
In che modo Vdoc parla con Forge AI
Vdoc costruisce una ChatRequest contenente il documento (PDF o immagine),
il prompt di classificazione versionato, e lo schema JSON di output atteso.
La chiamata gw.chat(request) ritorna una risposta normalizzata
indipendente dal provider sottostante:
from forge_ai import Gateway, ChatRequest gw = Gateway(config_path="/etc/vdoc/forge_ai.toml") risposta = gw.chat(ChatRequest( prompt_codice="vdoc.classifica_documento", prompt_versione="v3", documenti=[documento_pdf], output_schema=SchemaClassificazione, metadata={"canale": "email", "mittente": "fornitore@acme.it"}, )) # risposta.output è già validato contro lo schema # risposta.costo_stimato_usd, risposta.token_*, risposta.latenza_ms # tutto è loggato automaticamente in forge_ai.chiamata
Il consumer (Vdoc) non sa quale provider abbia risposto, non gestisce retry, non gestisce parsing del JSON, non gestisce gli errori di rate limit. Tutto è incapsulato.
Forge AI assicura che la porta di uscita esista, e sia aperta." — Principio di design
Rispetto al solo Paperless-ngx.
Paperless-ngx è un eccellente archivio documentale open source. Da solo, però, richiede comportamento umano disciplinato per ottenere un archivio ben classificato. Vdoc è ciò che si costruisce sopra Paperless per automatizzare quello che oggi una persona fa a mano.
| Capacità | Paperless-ngx (solo) | Vdoc (con Paperless integrato) |
|---|---|---|
| Archivio documentale, OCR, ricerca full-text | Nativo | Riusato |
| Gestione utenti, gruppi, permessi per documento | Nativo | Esteso con regole |
| Cestino, ripristino, retention | Nativo | Riusato |
| Numerazione progressiva (ASN) | Nativo | Riusato |
| Ingestione multi-canale (USB · email · Telegram · cartella) | Parziale (cartella, email) | Quattro canali unificati |
| Classificazione automatica con AI | Rule-based (regex, mittente) | Forge AI multi-provider |
| Estrazione titolo, riassunto, mittente, data dal contenuto | Non disponibile | Automatica |
| Deduplicazione cross-canale | Per checksum semplice | Hash pre-ingestione |
| Matching fuzzy dei tag (anti-proliferazione) | Non disponibile | Due passaggi · secondo giudizio AI |
| Regole di visibilità per canale e tipo documento | Permessi manuali per doc | Regole dichiarative |
| Notifiche Telegram differenziate per ruolo | Non disponibile | Integrata |
| Pannello di configurazione unificato | UI Paperless per archivio | Pannello Vdoc + Paperless |
| Tracciamento costi AI e quote | Non applicabile | Forge AI |
| Indipendenza dal fornitore AI | Non applicabile | Quattro provider intercambiabili |
La sovrapposizione è intenzionale. Vdoc non sostituisce Paperless-ngx: ne è il consumer principale. Chi amministra il sistema può accedere direttamente all'interfaccia Paperless per operazioni avanzate — modifica manuale di un metadato, ricerca complessa, esportazione bulk — senza dover attendere funzioni dedicate nel pannello Vdoc.
Cosa l'azienda
può cambiare.
Ogni realtà ha vocabolario, categorie e flussi propri. Un pannello di amministrazione consente di adattare il sistema senza toccare il codice. Le modifiche hanno effetto immediato sui documenti successivi.
| Area di configurazione | Cosa si può modificare |
|---|---|
| Gruppi e utenti | Elenco gruppi (nativi Paperless), membership degli utenti, designazione dei gruppi supervisore con visibilità totale. |
| Canali di ingresso | Più caselle email monitorate, più postazioni PC registrate, più utenti Telegram autorizzati. Ciascuno con gruppi di default propri. |
| Regole di competenza | Associazione canale → gruppo di default. Sovrascritture per tipo documento (somma o sostituisce visibilità). |
| Istruzioni per l'AI | Contesto aziendale, regole per tag, regole per mittenti, regole per data, regole per riassunto. Esempi dimostrativi forniti dall'azienda. Lo schema tecnico della risposta resta bloccato. |
| Archiviazione | Percorsi Paperless per tipo documento, numerazione progressiva opzionale, policy di cancellazione, durata cestino. |
| Matching | Soglie di somiglianza per tag, mittenti, tipi documento. Livello di confidenza minimo per il secondo giudizio AI. |
| Provider AI | Scelta del provider, modello specifico, quota mensile in token e in euro, chiavi API. |
| Notifiche e alert | Destinatari per canale. Regole di alert operativo: errori consecutivi, tasso errori, inattività canale, spazio disco, quota AI prossima all'esaurimento. |
Al primo accesso una procedura guidata accompagna l'amministratore nella configurazione minima necessaria. Dopo, il pannello resta libero, con una lista delle configurazioni opzionali ancora da definire.
Dove stanno i documenti.
I documenti aziendali restano su un server dedicato all'azienda, archiviati nel database di Paperless. Nessuna piattaforma condivisa con altri clienti, nessun transito obbligatorio attraverso server di terze parti oltre al provider AI scelto, e solo per il tempo dell'analisi.
Segregazione interna
Gli utenti vedono solo i documenti dei loro gruppi. La segregazione è imposta dal motore di permessi nativo di Paperless e non si può aggirare dal lato utente. L'amministratore di sistema è l'unico con visibilità tecnica completa, come da prassi.
Log operativo
Ogni documento elaborato lascia un record: chi l'ha inviato, quando, con quale esito, con quali metadati. L'archivio degli eventi è consultabile dal pannello Vdoc e conservato per il periodo configurato.
Cosa c'è sotto.
Per chi valuta l'integrazione dal punto di vista IT, una vista sintetica dei componenti tecnici e delle scelte di base. Tutto open source o standard di settore.
| Componente | Tecnologia |
|---|---|
| Sistema operativo server | Ubuntu LTS 24.04 |
| Archivio documentale | Paperless-ngx (Docker), PostgreSQL, OCR Tesseract |
| Orchestrazione applicativa | Vdoc Server (Python + Flask) come servizio systemd |
| Motore AI | Forge AI (libreria Python) con backend SQLite locale per stato |
| Provider AI supportati | Gemini, Claude, OpenAI, Vertex AI, modelli locali via Ollama |
| Reverse proxy & HTTPS | Caddy (rinnovo certificati automatico) |
| Bot Telegram | Bot dedicato per azienda |
| Client cartella Windows | Eseguibile Windows con avvio automatico |
| Dispositivo USB Inbox | Raspberry Pi Zero 2W con MTP gadget |
| Backup | Borg backup cifrato verso Storage Box separato |
| Monitoring & alert | Alert via Telegram su soglie operative |
Hosting: VPS o on-premise
Il sistema è progettato per girare su una singola macchina di dimensioni modeste — tipicamente un VPS da 4 GB di RAM e 2 vCPU in data center europeo basta per aziende fino a circa 500 documenti al mese. Per volumi superiori, o per requisiti di residenza dei dati interni, il sistema si installa identicamente su un server fisico ospitato in azienda.
Cosa Vdoc non fa.
Per completezza, alcune precisazioni su cosa è fuori perimetro. Vdoc è pensato per archiviazione e classificazione, non sostituisce altri strumenti aziendali con responsabilità diverse.
- Non è un gestionale. Non registra movimenti contabili, non emette fatture, non gestisce scadenziari attivi. Archivia e classifica documenti che provengono da altri sistemi.
- Non è una PEC né un sistema di interscambio. L'archiviazione di fatture elettroniche passa per i canali ordinari; Vdoc può ricevere le copie tramite email dopo che sono state acquisite.
- Non impone workflow di approvazione. Un documento archiviato è archiviato; non esistono stati intermedi tipo "in attesa di firma" gestiti dal sistema. L'approvazione avviene nei processi aziendali esistenti.
- Non cancella automaticamente per scadenza normativa. Le regole di conservazione fiscale e legale sono responsabilità dell'azienda. Il sistema offre retention solo opzionale e protezioni contro cancellazioni accidentali, ma non decide autonomamente cosa eliminare.
- Non interpreta il contenuto oltre la classificazione. Il riassunto automatico è un ausilio alla ricerca, non una lettura sostitutiva del documento. Decisioni basate sul contenuto richiedono lettura umana.