Vashlabs: dal referto odontoiatrico al Fascicolo Sanitario Elettronico.
Generazione, firma e invio di referti CDA2 al Fascicolo Sanitario Elettronico, più la ricetta bianca elettronica, per un software usato dagli studi odontoiatrici.
Il gestionale produce referti CDA2 validati e firmati e li invia al Fascicolo Sanitario Elettronico attraverso due canali: middleware nazionale e INI della Regione Sicilia.
- Cliente
- Vashlabs
- Settore
- Software sanitario per studi odontoiatrici
- Anno
- 2025–2026
- Servizi
- Gestionali e web app
Contesto
Vashlabs sviluppa software per studi odontoiatrici in Sicilia. Il prodotto doveva collegarsi al Fascicolo Sanitario Elettronico e gestire la ricetta bianca elettronica: due adempimenti con specifiche nazionali e regionali, poco spazio per interpretazioni e molti sistemi coinvolti.
Ho lavorato sul backend Java del prodotto tra marzo 2025 e agosto 2026, in coordinamento con il team della software house e sul loro codice esistente. Il mio incarico è stato lo sviluppo: hosting e messa in esercizio sono gestiti da Vashlabs.
Problema
Un referto per il FSE non è un semplice XML. Deve rispettare lo standard HL7 CDA2 con il profilo del referto di specialistica ambulatoriale, superare controlli XSD e Schematron, essere incorporato in un PDF e firmato digitalmente prima dell’invio.
L’invio segue due strade diverse: un middleware REST nazionale e i servizi SOAP dell’Infrastruttura Nazionale per l’Interoperabilità in sussidiarietà per la Regione Sicilia, con autenticazione tramite tessera sanitaria CNS. Ogni sistema risponde con identificativi, codici e stati propri, che il gestionale deve capire.
Soluzione
Ho costruito il modulo che porta un referto dal gestionale fino all’esito dell’invio. Ogni fase è esposta come operazione separata, così può essere eseguita e verificata da sola in fase di assistenza.
- Generatore CDA2 per il referto di specialistica ambulatoriale (RSA 1.1): mappatura dei dati, controlli semantici, modello del documento e serializzazione XML, con versionamento dei documenti.
- Validazione locale con XSD e Schematron (ART-DECOR, XSLT/SVRL), con errori e avvisi distinti.
- Incorporamento del CDA nel PDF e firma PAdES con smart card (PKCS#11, Windows) oppure firma remota.
- Canale middleware REST: validazione server, pubblicazione, stato transazione e cancellazione, con autenticazione HMAC.
- Canale INI Sicilia SOAP: comunicazione metadati, esito caricamento, ricerca e cancellazione, con sessione CNS e proxy gateway.
- Modello unico di risposta per il gestionale: successo, oppure errore con categoria, codice, dettagli e indicazione se è possibile riprovare.
- Ricetta bianca elettronica, sviluppata sia lato backend sia lato frontend: invio, visualizzazione e annullamento delle ricette, autenticazione a due fattori, ricerca farmaci e diagnosi, promemoria PDF e interfaccia React avviata dal gestionale.
Risultato
Il gestionale può produrre, firmare e inviare referti conformi senza che lo studio si occupi di formati, firme e comunicazioni tra sistemi. Gli errori arrivano al gestionale con un significato chiaro invece di una risposta grezza del provider.
Le API sono documentate con OpenAPI e ogni fase del flusso è isolabile: utile per diagnosticare un invio fallito senza ripetere tutto da capo.
Dettagli tecnici
Backend Java 8 con Spring Boot e MySQL. Client SOAP generati da WSDL con JAX-WS, EU DSS per la firma PAdES, PDFBox per il PDF, Saxon per le trasformazioni Schematron. Frontend della ricetta bianca in React, servito dallo stesso backend.
- Java
- Spring Boot
- HL7 CDA2
- Schematron
- PAdES / EU DSS
- SOAP / JAX-WS
- REST
- MySQL
- React
Hai un’integrazione complessa da portare nel tuo prodotto?
Posso affiancare il tuo team nell’analisi e nello sviluppo.

