Controllo e sicurezza dei dati
Le funzioni di controllo e verifica di Banana Contabilità ti aiutano a garantire che la contabilità sia corretta, completa e coerente.
Attraverso strumenti semplici ma potenti puoi individuare errori, bloccare modifiche indesiderate e monitorare i saldi in tempo reale.
Sono funzioni pensate per lavorare con sicurezza, risparmiando tempo nei controlli.
Grazie a queste funzioni puoi:
- Filtrare i dati per cercare, verificare e cambiare immediatamente conti, importi e testi.
- Verificare la correttezza della contabilità in modo rapido e automatico;
- Individuare e correggere errori prima della chiusura o della stampa dei report;
- Visualizzare immediatamente delle differenze contabili
- Lavorare con maggiore sicurezza, precisione e tranquillità.
Filtro righe
Il Filtro righe consente di visualizzare solo le registrazioni che ti interessano, in base a criteri come date, conti, importi o testo.
Puoi usarlo per verificare in modo mirato i dati, eventuali incongruenze e modificare direttamente sulle righe filtrate.
Il filtro è disponibile in molte tabelle e report, permettendoti di isolare e controllare facilmente i dati desiderati.
Controlla contabilità
La funzione Controlla contabilità esegue una verifica automatica dell’intero file, segnalando errori, squilibri o dati mancanti.
Banana controlla la correttezza dei saldi, la coerenza tra conti Dare/Avere, ed eventuali importi errati.
È uno strumento essenziale per individuare rapidamente problemi prima della stampa del bilancio o della chiusura dell’anno.
Blocco registrazioni
Il Blocco registrazioni serve a impedire modifiche accidentali o non autorizzate alle scritture già controllate.
Puoi bloccare tutte le registrazioni fino a una determinata data o solo un periodo specifico, assicurando l’integrità dei dati una volta verificati o approvati.
Colonna Saldo
La Colonna Saldo controlla che, per ogni riga di registrazione, l’importo in Dare e quello in Avere si compensino correttamente.
Quando le due parti non coincidono, Banana segnala la differenza, permettendoti di individuare e correggere subito eventuali errori di imputazione.
È una verifica immediata che ti aiuta a mantenere il bilancio sempre in equilibrio.
Filtro righe temporaneo
Il Filtro righe è uno degli strumenti più potenti, perché permette di ricercare e visualizzare solo determinate righe e di apportare facilmente modifiche a quelle che interessano.
Il Filtro righe è il complemento che rende ancora più efficace il concetto di contabilità con struttura tabellare di Banana Contabilità, assicurando una visione immediata e un controllo totale sui dati.
Con il filtro è possibile applicare anche un ordinamento temporaneo delle righe e dei dati, con un notevole risparmio di tempo, senza alterare l’ordine permanente della tabella. Una volta rimosso il filtro, le righe tornano nell’ordine originale.
La funzione Filtro righe temporaneo richiede il piano Advanced di Banana Contabilità Plus. È possibile provarla anche con i piani Free o Professional fino a 70 righe di registrazione.
Gli utilizzi più comuni del Filtro righe temporaneo sono i seguenti:
- Trova righe con una parola chiave
- Visualizza una scheda conto modificabile
- Evidenzia solo le righe colorate
Attenzione: il Filtro righe temporaneo è diverso dal comando Ordina righe (dal menu Dati), che altera in modo definitivo l'ordine delle righe.
Trova righe con una parola chiave
Inserisci un qualsiasi testo (o importo). Il Filtro righe temporaneo visualizza subito tutte le righe che lo contengono.

Il testo evidenziato in verde è solo a scopo esplicativo; non appare nel software.
Dopo aver effettuato i controlli e le modifiche necessarie, puoi semplicemente togliere il Filtro (cancella il testo o clicca sull’icona a forma di X accanto al campo Filtro) e le registrazioni tornano nell'ordine di prima.
La "scheda conto" modificabile
Uno degli utilizzi più comuni del Filtro di Banana Contabilità Plus è la possibilità di ottenere una scheda conto (o categoria) modificabile. In pratica, puoi visualizzare le registrazioni relative a un conto specifico e apportare direttamente le modifiche necessarie.
Come ottenere una scheda conto modificabile
Nel campo del Filtro temporaneo, inserisci la seguente combinazione:
!=conto
Per esempio se inserisci !=1020 ottieni di fatto una scheda conto modificabile del conto 1020. La sequenza != indica al Filtro di visualizzare tutte le righe in cui c'è una cella che contiene il codice 1020.

Come ottenere una scheda conto modificabile quando il conto è descrittivo e composto da due o più parole
Nel campo del Filtro temporaneo inserisci la seguente combinazione:
!="testo conto"
Per esempio, se inserisci !="Banca XX" ottieni una scheda conto modificabile per il conto Banca XX.
La sequenza != indica al Filtro di visualizzare tutte le righe in cui una cella contiene esattamente un valore. Quando il testo da cercare è composto da due o più parole separate da spazi, devi inserire il testo tra virgolette.
In questo esempio il filtro trova tutte le righe in cui c’è una cella che contiene esattamente il testo "Banca XX".

Modifica e ritorno alla visualizzazione completa
All’interno della scheda conto modificabile puoi effettuare controlli e correggere le registrazioni.
Una volta terminate le verifiche, puoi rimuovere il Filtro:
- cancellando il testo inserito, oppure
- sull’icona a forma di X accanto al campo Filtro.
In questo modo, tutte le registrazioni tornano a essere mostrate nell’ordine originale.
Evidenzia righe colorate
Spesso si colorano le righe dove si vuole ritornare in un secondo tempo, o per un ricontrollo, o per farle visionare a qualcuno, o perché sono registrazioni da completare. La possibilità di evidenziarle tutte insieme evita di dover scrollare nella tabella Registrazioni e offre una chiara visione d'insieme. Il risparmio di tempo e la praticità di lavoro sono evidenti.
Come evidenziare le righe colorate
Nel campo del Filtro temporaneo, inserisci la seguente combinazione:
!_co! oppure !_color!
Il programma visualizza tutte le righe colorate.

È anche possibile visualizzare unicamente le righe di un certo colore. Il programma assegna ad ogni colore un numero di stile (dal numero 2 in su) in base a quando il colore è stato assegnato la prima volta. Puoi quindi usare per esempio:
- !_co!2 per vedere le righe con colore stile 2 (nell'esempio l'azzurro)
- !_co!2|3 per vedere le righe con colore site 2 e 3 (nell'esempio righe azzurre e verdi).
Dopo aver effettuato i controlli e le modifiche necessarie, puoi semplicemente togliere il Filtro (cancella il testo o clicca sull’icona a forma di X accanto al campo Filtro) e le registrazioni tornano nell'ordine di prima.
Espressioni di base per il Filtro
Il Filtro consente di trovare le righe semplicemente inserendo un testo come criterio di ricerca. Quando si inserisce il testo da cercare, il programma filtra tutte le righe che contengono il testo specificato, separato da spazi.
Ecco alcuni esempi di Filtro:
- fattura mario
Mostra le righe che contengono le parole "mario" e "fattura" in qualsiasi posizione. - mar fat
A seconda del numero di righe presenti, è possibile ottenere lo stesso risultato anche solo inserendo un testo abbreviato. - "fattura mario"
Ricerca di testo che include spazi: se si inserisce il testo tra virgolette, il programma considererà il testo come una singola parola. - "!~Mario"
Normalmente la ricerca include sia maiuscole che minuscole.
È possibile specificare che la ricerca sia solo per le maiuscole o le minuscole inserendo un carattere speciale.
Lo spazio è sempre considerato come un separatore per il comando E.
- Lo spazio significa che le condizioni sono additive.
- Non includere mai spazi nella ricerca a meno che non siano tra virgolette, ad esempio: "fattura mario".
- Esempi:
- fattura mario
Il programma considera le righe che contengono entrambe le parole "mario" e "fattura".- "fattura mario"
Il programma considera il testo tra virgolette come una singola parola, includendo lo spazio. Pertanto, cercherà tutte le righe che contengono esattamente "fattura mario" (in questo ordine).
Caratteri particolari
È possibile utilizzare quasi tutti i caratteri nella ricerca.
Solo il punto esclamativo "!" e la barra verticale "|" all'inizio di una sequenza di testo hanno un significato particolare.
- "|" per indicare OPPURE
Almeno uno degli elementi preceduti da "|" deve essere presente nella riga.
Nel caso seguente, la ricerca visualizzerà le righe che includono "mario" e "fattura" oppure "parcella".
mario |invoice |parcella
La barra verticale è il carattere Alt-124. Se non lo trovate sulla tastiera cercate con google- "Layout tastiera windows/mac italia/svizzera/us (Stati Uniti)" e guardate nella sezione immagini.
- Specificatore di comando "!".
Qualsiasi testo preceduto dal punto esclamativo è considerato un comando e ha un significato particolare.
Ad esempio, per escludere un testo, utilizzare la sequenza di comandi "!-".
mario !-fattura
Espressioni avanzate per il Filtro
Le espressioni avanzate del Filtro sono sperimentali: potrebbe essere soggette a modifiche e miglioramenti.
Il carattere "!" all'inizio di un testo indica che si tratta di un comando speciale di ricerca.
- !
Quando posizionato prima o dopo uno spazio, avvia una sequenza di comandi. - !!
È considerato come un semplice "!" e non come una sequenza di comandi. - !-
Il segno meno "-" è utilizzato per escludere contenuti e può essere combinato con qualsiasi altro operatore.
!-mario !-1000 !-=1000 !-^pagamento !-~10 - !~
Il tilde "~" deve essere posizionato immediatamente dopo il "!" o il "!-".
Con "~" la ricerca diventa sensibile alle maiuscole e minuscole.
!~mario
!-~mario
Caratteri di comando
Sono i caratteri che seguono immediatamente l'inizio del comando "!", "!-", "!~" o "!-~".
Possono essere usati anche con il "-" per escludere e "~" per rendere la ricerca case sensitive.
- !=
Trova esattamente il testo specificato nella cella.
!=1000
Può essere usato con più valori separati dal carattere "|".
!=1000|2000|30000
Cella vuota.
Dalla versione 10.1.16 seleziona celle con valori vuoti.
!= - !+
Contiene il testo specificato. Equivalente alla ricerca normale, ma permette combinazioni con altri caratteri.
!-+mario esclude righe che contengono "mario".
!~+mario esclude righe con "mario" rispettando maiuscole e minuscole. - !<>
Diverso dal testo fornito.
!<>1000 - !.
Caratteri jolly (*,?) per una ricerca con caratteri speciali.
!.100*
!.100*|2?0* - !^
Inizia con il testo specificato.
^mar
^mar|hom - !$
Termina con il testo specificato.
!$rio - !_
Ricerca per parola intera.
!_100
!_100|200 - !:
Espressione regolare.
!:\bmario\b
Maggiore, Minore e Intervalli
Caratteri usati per confrontare valori numerici o date.
- Data in formato yyyy-mm-dd
2024-12-31 - Importo con il "." come separatore decimale e senza separatore delle migliaia.
1999.99
Comandi di confronto:
- !> Maggiore di.
!>100 - !>= Maggiore o uguale.
!>=100 - !< Minore di.
!<100 - !<= Minore o uguale.
!<=100 - !<> Diverso da.
- !>< Intervallo esclusivo.
!><99.99|200 - !>=< Intervallo inclusivo.
!>=<100|199.99
Specificazione delle colonne
Permette di specificare la colonna in cui eseguire la ricerca.
- !descrizione!
Ricerca nella colonna "descrizione".
!descrizione!mario
!descrizione!=
!des*!mario
!des*;doc!mario
!descrizione:xml!mario
!debit*!=1000
Mostra righe con formattazione
Con le seguenti espressioni, il Filtro mostra le righe che hanno il grassetto e l'italico.
- !_fo! Mostra righe con formattazione specifica.
- !_fo!b Mostra righe in grassetto.
- !_fo!i Mostra righe in corsivo.
Mostra righe con errori
Con le seguenti espressioni, il Filtro mostra le righe che hanno un errore.
- !_er! Mostra righe con errori o avvisi.
- !_er!e Mostra righe con errori.
- !_er!w Mostra righe con avvisi.
Combinazione di filtri
Puoi combinare più comandi separandoli con uno spazio. I comandi separati da uno spazio sono considerati espressioni AND (tutti i criteri devono essere soddisfatti).
L’uso della barra verticale | prima del comando indica invece un’espressione OR (è sufficiente che uno dei criteri sia soddisfatto).

Il testo evidenziato in verde è solo a scopo esplicativo; non appare nel software.
Altri esempi di combinazioni di filtri:
- 2022 !des*!mario !debit*!=1000
Mostra righe con "2022", "mario" in colonne "des" e "1000" esatto nelle colonne "debit". - |!PeriodTotal_?_C:xml!<> |!PeriodEnd_?_C:xml!<>
Mostra le righe con un importo, in colonne il cui nome XML inizia con PeriodTotal_ e termina con _C
oppure il cui nome XML inizia con PeriodTotal_ e termina con _C
Motivazione delle espressioni nel Filtro
Le espressioni avanzate di ricerca possono sembrare insolite, ma desideriamo che queste:
- Non interferiscano con la ricerca naturale, permettendo all'utente di eseguire la maggior parte delle ricerche in modo intuitivo, combinando i testi così come è abituato a fare nelle applicazioni per smartphone.
- Non siano legate a una lingua specifica, utilizzando quindi soltanto simboli.
- Supportino tutte le possibili ricerche, in modo da poter essere utilizzata per esprimere i filtri inseriti dall'utente in maniera simile a Excel.
- Aprissero la possibilità di includere comandi specifici di Banana, come colore, errori, ecc.
Abbiamo valutato diverse altre espressioni di ricerca, ma tutte utilizzano caratteri comuni come il segno meno "-" o il "+" o altri come "\", "(", "*", "?", che sono frequentemente usati in contabilità.
Così abbiamo deciso di creare un'espressione speciale in cui il punto esclamativo "!" viene utilizzato come indicatore di comando. Il "!" è normalmente usato alla fine di una frase, quindi è improbabile che interferisca con la ricerca.
Tutti i feedback e i suggerimenti sono benvenuti!
Posizione del cursore
Quando si usa il filtro, il cursore rimane sulla cella in cui era prima di usarlo, anche se questa non viene visualizzata.
- Per spostarsi nella tabella bisogna cliccare su una cella.
- Una volta che si toglie il filtro, non è detto che il cursore torni sulla cella originale.
- Per ritornare sulle celle in cui eri posizionato prima di usare il filtro, puoi usare i bottoni di navigazione "<" e ">" posti nella barra degli strumenti.
GPT di Banana Contabilità Plus per usare il Filtro
Questo GPT di Banana Contabilità è stato creato utilizzando ChatGPT ed è progettato per generare espressioni avanzate di ricerca per filtrare le righe nella tabella Registrazioni.
Il generatore di comandi GPT per le espressioni avanzate di ricerca (Filtro) è solo sperimentale: potrebbe essere soggetto a modifiche e miglioramenti.
Requisiti
Per utilizzare questo GPT, è necessario:
- Scaricare e installare l'ultima versione di Banana Contabilità Plus
- Avere un account ChatGPT.
- Per utilizzare questo GPT, è necessario avere un abbonamento ChatGPT Plus. Senza di esso, è possibile provare il servizio gratuitamente per un massimo di dieci richieste. Successivamente, è necessario eseguire l'upgrade a ChatGPT Plus oppure attendere alcune ore prima di poter effettuare ulteriori richieste.
Come funziona
- Apri il GPT di Banana Contabilità Plus da questo link:
- Nel campo Messaggio in basso, inserisci una frase che descriva ciò che vuoi cercare all'interno della tabella Registrazioni con il Filtro. In generale, più specifiche sono le richieste, migliori saranno i risultati.
- Il GPT elaborerà la tua richiesta e restituirà il risultato corrispondente.
In base all'input fornito al GPT, verrà generata una stringa di testo contenente il comando necessario per filtrare le righe nella tabella Registrazioni. - Copia la stringa di testo generata.
- Incolla la stringa copiata nel Filtro della tabella Registrazioni in Banana Contabilità Plus.

Esempi di messaggi da inserire nel GPT
Di seguito sono riportati esempi di messaggi da inserire nella chat del GPT, insieme ai relativi risultati generati:
- "Trova tutte le registrazioni del terzo trimestre del 2024"
- Risultato: "!date:xml!>=2024-07-01 !date:xml!<=2024-09-30"
- "Cerca le righe con un importo di 450.00"
- Risultato: "!amount:xml!=450.00"
- "Cerca le righe con un importo maggiore di 200"
- Risultato: "!amount:xml!>200"
- "Cerca le righe con il valore 3001 nella colonna Conto Avere"
- Risultato: "!accountcredit:xml!=3001"
- "Dammi le righe con il valore 1020 nella colonna Conto Avere e un importo tra 1500 e 4000"
- Risultato: "!accountcredit:xml!=1020 !amount:xml!>=<1500|4000"
Ordina righe temporaneo
La funzione Ordina righe temporaneo di Banana Contabilità Plus consente di ordinare temporaneamente le righe di una tabella, senza modificarne la disposizione permanente. È una funzione utilissima per cercare immediatamente dei dati, sia testi che importi.
Una volta rimossa la funzione, le righe della tabella tornano al loro ordine originale.
Per cambiare l'ordine delle righe di una tabella in modo definitivo occorre usare il menu Dati > Ordina Righe.
La funzione Ordina righe temporaneo è una delle nuove funzionalità disponibile solo nel piano Advanced di Banana Contabilità Plus. È possibile provarla anche con i piani Free o Professional fino a 70 righe di registrazione.
Questo strumento permette di ordinare rapidamente il contenuto secondo la colonna dalla quale è impartita la funzione Ordina:
- Clicca con il tasto destro del mouse sull'intestazione della colonna dove hai bisogno di un ordinamento.
- Posizionati sulla piccola freccia e seleziona il criterio di ordinamento ascendente o discendente.
Vantaggi
- Puoi ordinare le righe visualizzate, in senso ascendente o discendente, in base alla colonna desiderata.
- A differenza di Excel, quando rimuovi l'ordinamento di visualizzazione, le righe tornano all'ordine originale senza dover usare il comando Annulla operazione.


Nell'intestazione della colonna scelta per ordinare i dati apparirà una freccia.
Nota importante
La funzione Ordina righe temporaneo è diversa dal comando Ordina righe (dal menu Dati):
- Ordina righe temporaneo è un ordinamento delle righe a video temporaneo, concepito per velocizzare la revisione e la modifica dei dati inseriti in precedenza. È possibile rimuovere facilmente i criteri di ordinamento per tornare all'ordine originale delle righe. Questa funzione è disponibile solo con il piano Advanced.
- Il comando Ordina righe (dal menu Dati) modifica in modo permanente l'ordine delle righe della tabella e può essere annullato solo con il comando Annulla. Questo comando è disponibile per tutti i piani.
Controlla e ricalcola contabilità
Banana Contabilità mette a disposizione diversi comandi per ricalcolare i dati e verificare la correttezza della contabilità. È buona pratica eseguire questi controlli regolarmente, soprattutto se il programma segnala errori o differenze.
I principali comandi e le funzioni per il ricalcolo e il controllo della contabilità sono i seguenti:
- Tasti rapidi per avviare il ricalcolo della contabilità:
- Maiuscolo + F9 (Windows e Mac)
- Cmd + 9 (Mac)
- Menu Azioni > Controlla contabilità per eseguire dei controlli estesi della contabilità.
- La Colonna Saldo evidenzia le differenze nella tabella Registrazioni tra le colonne Dare e Avere. La colonna Saldo può essere resa visibile dal menu Dati > Disponi colonne.
Se vengono segnalati errori o differenze, è opportuno correggerli prima di proseguire con altre operazioni contabili.
Ricalcolo (maiuscolo + F9) e controllo contabilità
La combinazione Maiuscolo + F9 esegue automaticamente le seguenti azioni:
- Verifica la versione in uso del programma e segnala la disponibilità di eventuali aggiornamenti
(si consiglia sempre di utilizzare l’ultima versione). - Azzera e ricalcola i saldi dei conti, dei centri di costo e dei segmenti.
- Riscrive tutte le operazioni come se fossero inserite nuovamente.
- Segnala eventuali errori nelle tabelle:
- Conti
- Registrazioni
- Codici IVA
- Cambi
- Partita doppia multimoneta
- Aggiorna i saldi di apertura.
- Ricalcola i saldi secondo gli ultimi cambi inseriti nella tabella Cambi.
- Contabilità con IVA
- Ricalcola tutti i valori IVA in base ai codici IVA utilizzati.
- Cash Manager
- Calcola il saldo progressivo nella tabella Registrazioni.
- Ricalcola i totali delle tabelle Conti e Categorie.
- Cash Manager ed Entrate / Uscite
- Ricalcola i totali delle tabelle Conti e Categorie.
- Contabilità con Preventivo
- Aggiorna le colonne Differenza budget e Anno precedente nella tabella Conti.
Dialogo Controlla contabilità
Il comando Azioni > Controlla contabilità apre una finestra di dialogo con opzioni di controllo avanzate.

Ricalcola contabilità ed esegui controlli estesi
Questo è uno dei comandi più importanti per la verifica della contabilità, perché:
- ricalcola l'intera contabilità,
- esegue controlli approfonditi,
- segnala eventuali errori nella finestra Messaggi.
Aggiorna inoltre i testi delle colonne Descrizione conto e Categorie nella tabella Registrazioni, se modificati.
Proprietà dati base
L'opzione è attiva per default e verifica la coerenza dei dati impostati in File > Proprietà file (dati base), come:
- date di apertura e chiusura,
- conti IVA,
- conti per differenze di cambio.
Registrazioni
Differenze registrazioni
- Controlla eventuali differenze tra Dare e Avere (o tra Conti e Categorie).
- Le righe interessate vengono indicate nella finestra Messaggi.
- L’importo totale della differenza è visibile nella finestra informativa in basso.
- Le differenze sono evidenziate anche nella Colonna Saldo.
Includi differenze intermedie
- Verifica che nelle registrazioni multiple non vi siano differenze intermedie.
- Le differenze sono spesso dovute a registrazioni incomplete o importi errati.

Saldi di verifica (#CheckBalance)
- Confronta il saldo contabile con il saldo reale (banca o posta) inserito manualmente.
- Eventuali differenze vengono segnalate indicando i conti interessati.
Maggiori informazioni sulle registrazioni di Check Balance sono disponibili alla pagina Registrazioni #CheckBalance.
Stesso documento con date diverse
- Avvisa se uno stesso numero di documento è associato a date differenti.
- Questa situazione può impedire al programma di determinare correttamente la contropartita.
Conti
Struttura piano dei conti
- Controlla che la struttura dei gruppi contabili sia corretta.
Presenza di differenze di cambio
- Segnala eventuali differenze di cambio non ancora registrate.
Saldi di apertura differiscono dai saldi di chiusura anno precedente
- Controlla se i saldi di apertura del nuovo anno coincidano con quelli di chiusura dell’anno precedente.
- Le differenze tra i saldi di chiusura dell'anno precedente e quelli di apertura del nuovo anno vengono indicate come importo totale nella finestra Messaggi.
Articoli
Saldi di apertura dei conti Asset
- Accerta che il valore di apertura degli Articoli coincida con il saldo del conto Asset associato.
- Il controllo viene effettuato solo per gli articoli con conto Asset assegnato.
Includi controlli estesi con il tasto maiuscolo + F9
Se l’opzione Includi controlli estesi con il tasto Maiuscolo + F9 è attiva, il programma esegue automaticamente tutti i controlli selezionati nel dialogo Controlla contabilità anche tramite il tasto rapido.
Se l’opzione non è attiva, con Maiuscolo + F9 viene eseguito solo il ricalcolo della contabilità.
Blocco registrazioni con la tecnologia del Blockchain
Banana usa un sistema di certificazione dei dati contabili basata su una tecnica che oggi viene chiamata blockchain (catena di blocchi). Il metodo di certificazione basato sul concatenamento dei blocchi di dati "blockchain" è considerato talmente affidabile da essere impiegato per assicurare la validità dei bitcoin e di tutte le moderne crypto-monete.
Banana.ch è stata la prima ditta al mondo a usare la tecnologia blockchain in ambito contabile. Il metodo è stato depositato come brevetto nel 2002 (US Patent No. 7,020,640). Questo metodo garantisce alti livelli d’integrità dei dati e di conformità alle normative di legge.
Per maggiori informazioni si veda Blockchain per garantire l'integrità dei movimenti contabili.
Comando Blocca registrazioni
Con il comando dal menu Azioni > Blocca registrazioni > Blocca registrazioni, i movimenti della contabilità vengono bloccati e segnati con delle cifre di controllo che permettono di verificare nel tempo che le registrazioni non siano state modificate.
- Viene verificata la validità di un eventuale blocco già esistente
- Le registrazioni fino alla data del blocco sono numerate progressivamente e bloccate. Per ogni registrazione viene calcolato il marchio digitale della riga e quello progressivo.
Il calcolo dei marchi digitali viene fatto nella sequenza delle colonne. - Nella contabilità viene indicato che non verranno più accettate registrazioni con data uguale o inferiore alla data blocco.

Data nuovo blocco (compresa)
Specificare la data fino a quando i movimenti devono essere bloccati.
Password (opzionale)
È possibile inserire una password per permettere l’eventuale sblocco delle registrazioni o per poter in seguito eseguire un nuovo blocco. Il programma, se non trova errori nelle registrazioni comprese nella data del blocco, blocca le registrazioni, calcola e assegna ad ogni riga di registrazione delle cifre e dei codici diversi per ogni riga, visualizzate nella vista Blocco.
Ultimo blocco
I dati di questa sezione vengono indicati automaticamente dal programma in base all'ultimo blocco eseguito.
Blocco valido
Viene visualizzato un "Sì" se il blocco è valido.
Data blocco
È la data dell'ultimo blocco eseguito.
Numero di blocco
È il valore inserito automaticamente dal programma nell'ultima riga della colonna BloccoNum.
Quando il blocco viene ripetuto, se il valore della riga dell'ultimo blocco rimane invariato, significa che il blocco è valido e di conseguenza i dati non sono stati modificati; se invece il valore varia viene indicato:
- (-1) se già dalla prima riga il blocco non è valido
- (-2) se ci sono delle righe che hanno il medesimo Blocco Num.
Hash progressivo
È la cifra di controllo presente nell'ultima registrazione.
Registrazioni: Vista Blocco
Sono visualizzate i marchi digitali e le informazioni che sono servite per la firma digitale.

- BloccoNum: il numero progressivo che distingue la riga
- BloccoImp: l'importo cumulato dei movimenti, simile al totale di fine pagina, richiesto da alcune legislazioni
- BloccoLinea: (colonna nascosta) il marchio digitale calcolato sulla base dei valori della riga.
- BloccoProgr: il marchio digitale complessivo.
Il marchio digitale BloccoProgr
È l'elemento centrale della certificazione e usa la metodologia del blockchain.
Il marchio digitale è calcolato in base a questi valori:
- Del contenuto della registrazione attuale, compresi importi, descrizioni e descrizione del conto al momento del blocco.
- Del numero progressivo (BloccoNum)
- Del saldo cumulato (BloccoImp)
- Del marchio progressivo della registrazione precedente (BloccoProgr).
Nel caso in cui i dati della contabilità dovessero subire una minima modifica (è cambiata una data, un importo) la cifra di controllo risulterà diversa.
Se la cifra rimane la medesima significa che i dati sono originali e quindi che non sono stati cambiati.
Comando Verifica blocco
Con il Menu Azioni > Verifica blocco, il programma controlla se il blocco è valido e visualizza i dati del blocco.
- Il programma ricalcola i marchi digitali e verifica se quelli ricalcolati sono uguali a quelli abbinati alle registrazioni.
- Se sono uguali, il blocco è considerato valido e quindi i dati sono originali.
- Se i marchi non sono uguali, significa che i dati sono stati modificati e non sono quelli originali calcolati al momento del blocco.

Comando Sblocca registrazioni
La funzione Sblocca registrazioni nel menu Azioni rimuove il sblocco e le cifre di controllo.
Prima di eseguire il comando, procedere come segue:
- Selezionare le righe interessate nella tabella Registrazioni.
- Cancellare la data di blocco esistente (vedi finestra di dialogo che segue).
Se il blocco era protetto da una password, sarà necessario inserirla nuovamente per completare lo sblocco.
Volendo successivamente procedere ad un nuovo blocco, se i dati e l’ordine delle registrazioni non sono cambiati, le cifre di controllo saranno le medesime del blocco precedente, se invece sono stati modificati, le cifre di controllo cambiano.
Sblocco parziale
Quando le registrazioni sono state bloccate, è possibile sbloccarle anche solo parzialmente, partendo da una determinata data. Se nel blocco è stata inserita una password, per poter confermare lo sblocco, occorre digitare la password nell'apposita casella.

Perché lasciare sbloccare la contabilità?
In linea di principio la contabilità bloccata non si dovrebbe sbloccare. Capita che dopo il blocco ci si accorge di errori nella contabilità e della necessità di fare correzioni.
Per avere la possibilità di fare ulteriori modifiche, gli utenti tenevano una copia del file prima del blocco. Se trovavano errori ripristinavano la situazione precedente. Nel frattempo erano state fatte magari altre registrazioni, per cui spesso succedeva che ripristinando versioni precedenti la contabilità risultava sbagliata. Per evitare questo inutile dispendio di tempo si è deciso di mettere a disposizione il comando Sblocca registrazioni.
La certificazione non deve essere confusa con la sicurezza dei dati. La certificazione dei dati è una metodologia che assicura che i dati contabili siano originali. Per impedire che i dati vengano modificati, la metodologia è quella relativa alla sicurezza dei dati. Delle procedure per la sicurezza dei dati possono però essere implementate unicamente in un ambiente che limita l'accesso ai dati.
Se il file è completamente a disposizione dell'utente, come quando è su un PC, le persone si trovano ad avere il controllo completo dei dati. Possono quindi sostituire facilmente dei file. Con la certificazione non si impedisce che i dati siano alterati, ma si riesce comunque a sapere se sono quelli originali.
La persona che tiene la contabilità è responsabile della contabilità e decide se una modifica è lecita o meno.
Organizzare la certificazione e la verifica
Una volta che i movimenti del periodo sono stati bloccati bisogna:
- Stampare l'informazione relativa al blocco o l'ultima riga cerficata con il relativo numero di certificazione (BloccoProgr).
- Firmare e custodire questa informazione con i documenti della contabilità o in un altro luogo sicuro.
Per verificare che i dati contabili siano quelli originali:
- Date il comando Mostra informazioni blocco.
- Riprendete il documento dove risulta il marchio digitale di verifica.
- Controllate se la riga identificata con il BloccoNum ha ancora lo stesso marchio digitale:
- Se il numero corrisponde, i dati della contabilità sono i medesimi di quelli certificati
- Se il numero non corrisponde, significa che i dati della contabilità sono stati modificati.
Banana sta sviluppando delle applicazioni che permettono di confrontare due file e avere indicazioni circa i dati che sono stati cambiati.
Sicurezza dati
La certificazione digitale assicura che i dati siano ancora quelli originali. Non impedisce però la modifica dei dati.
È responsabilità del contabile assicurare che i dati non siano alterati. Ogni amministrazione deve avere un'organizzazione adeguata alle proprie dimensioni e necessità.
Chi desidera fare in modo che i dati non siano alterati da persone non autorizzate, deve impiegare altre metodologie e altri strumenti, come per esempio:
- Salvare i dati su un sistema sicuro (disco di rete protetto) protetto da password.
- Tenere delle copie dei dati.
- Criptare gli archivi.
Archiviazione a lungo termine
Il file della contabilità contiene i dati immessi. Per aprire il file e ottenere un report o la scheda conto dovete quindi avere sempre a disposizione il programma.
Banana Contabilità consente di esportare tutti i dati della contabilità e anche le diverse stampe in formato Pdf, Html e Xml.
L'archivio generato può essere salvato su un CD e consultato su qualsiasi computer a distanza di anni, anche da persone che non hanno Banana Contabilità.
Blockchain nuove pagine Francesca
Capitolo 1
La blockchain nella contabilità (titolo pagina)
La popolarità della tecnologia della blockchain è cresciuta senza sosta negli ultimi anni ed è utilizzata in diversi ambiti per garantire l’autenticità e l’integrità dei dati digitali. Il percorso che ha portato alla nascita e uso della blockchain è lungo, ma solo nel 2009 la tecnologia viene ufficialmente denominata “blockchain”.
Prima che diventasse popolare, Banana.ch SA aveva già applicato questa innovazione per certificare la validità dei dati contabili presenti sul software Banana Contabilità. Dunque, l’azienda svizzera può essere riconosciuta come una degli “early adopter” della blockchain.
Scopri i retroscena e le informazioni più rilevanti in questa sezione completamente dedicata alla blockchain nella contabilità, una delle numerose innovazioni applicate da Banana.ch SA.
Partiamo dalla definizione:
La tecnologia blockchain è un sistema di sicurezza e di certificazione che assicura l'integrità dei dati trasmessi, consentendo di:
Inoltre, la blockchain è principalmente decentralizzata, ovvero non ha un'autorità centrale che controlla le transazioni, ma è gestita dalla rete di computer interconnessi che lavorano insieme per impedire qualsiasi modifica non autorizzata. Tuttavia esistono anche modelli centralizzati o ibridi, come nel caso di Banana Contabilità Plus. |
La nascita della “pre-blockchain” di Banana Contabilità
Nell’era dei primi passi verso la digitalizzazione, il Governo svizzero, verso la fine degli anni ‘90, aveva messo in consultazione delle nuove norme relative al conservare la contabilità in formato digitale, prescrivendo anche una serie di adempimenti. I programmi di contabilità dovevano aggiornarsi per permettere alle aziende di integrare i sistemi informatici entro il maggio del 2002. Da quel momento in poi bisognava abbandonare la carta.
Nel frattempo, Domenico Zucchetti, fondatore di Banana.ch SA con una formazione come giurista e programmatore, aveva già iniziato a sviluppare un software per scopi professionali.
Immagine Domenico Zucchetti, Fondatore e CEO di Banana.ch SA |
|
Domenico aveva iniziato a lavorare a delle possibili soluzioni, ma non è stato semplice trovare una che potesse soddisfare tutte le esigenze e risultare di facile comprensione per i contabili. Dopo alcuni anni e molte iterazioni, si è cristallizzata l’idea di certificare ogni singolo movimento con un hash (metti link alla pagina dove si spiega cos’è) e riprenderlo anche nel calcolo dell’hash della registrazione successiva. Questo approccio è, in sostanza, quello della blockchain. «La soluzione mi pareva garantisse la massima protezione dei dati, soddisfacendo i requisiti di legge. Questa era però la mia opinione e occorreva verificare se gli specialisti avrebbero concordato» precisa Domenico.
La tecnologia blockchain non era ancora molto conosciuta al di fuori della cerchia degli informatici, «infatti veniva vista con sospetto dai revisori e dai contabili, nonostante il sistema funzionasse molto bene e soddisfacesse le esigenze legali» spiega Domenico. Dunque, i software di contabilità continuavano ad usare delle password per proteggere i dati.
Qualche anno dopo, con l’introduzione del Bitcoin nel 2009 è nato il termine “blockchain” e questa tecnologia si è finalmente rivelata al mondo intero. Per molti è stata un’illuminazione: grazie alla blockchain, le operazioni salvate nel giornale di Bitcoin, disponibile liberamente sulla rete, sono state considerate più sicure dei giornali contabili delle banche, custoditi in ambienti separati e protetti da una moltitudine di sistemi di sicurezza. Grazie al Bitcoin, è diventato facile comprendere la potenza della tecnologia della blockchain.
L’uso della blockchain in contabilità
Prima dell’arrivo del Bitcoin, Domenico Zucchetti ha incaricato una società di revisione di verificare se questo nuovo sistema basato sugli hash concatenati sarebbe stato conforme alle normative. Dopo aver documentato il concetto e il funzionamento (vedi documento interno del 2001/2002), nel 2002 il sistema è stato certificato conforme alle normative per l’archiviazione di dati contabili in Svizzera e in Germania.
IMMAGINE
Il sistema di protezione dei dati contabili di Banana Contabilità negli anni 2000
Il 21 marzo 2002 Domenico ha depositato una domanda di brevetto negli USA (US Patent No. 7,020,640) con il titolo di “Method for certifying data containing a sequence of transactions”. Pochi mesi dopo, nel giugno 2002, in tempo per l’entrata in vigore delle nuove norme, «presentammo un aggiornamento di Banana Contabilità che conteneva le funzionalità della blockchain». Questa è divenuta la prima applicazione della blockchain nel mondo della contabilità. Securing Accounting Data è il documento che illustra l’introduzione della tecnologia blockchain nel software Banana Contabilità.
La blockchain di Banana Contabilità
Gli hash in Banana Contabilità vengono concatenati per certificare i movimenti e mantenere l'integrità del giornale. In questo modo si possono aggiungere nuovi movimenti senza alterare quelli esistenti. Il sistema certifica le basi dati, incluso il cambiamento delle sequenze dei record, utilizzando numeri progressivi e hash crittografici. Questo rispetta anche le normative contabili svizzere che richiedono la numerazione progressiva dei movimenti.
Qualche anno dopo, con l’introduzione del Bitcoin nel 2009 è nato il termine “blockchain” e questa tecnologia è stata finalmente svelata al mondo intero. Per molti è stata un’illuminazione: grazie alla blockchain, le operazioni salvate nel giornale di Bitcoin, disponibile liberamente sulla rete, venivano considerate più sicure dei giornali contabili delle banche, custoditi in ambienti separati e protetti da una moltitudine di sistemi di sicurezza. Grazie al Bitcoin, è diventato facile comprendere la potenza della tecnologia della blockchain.
La blockchain è diversa dal bitcoin
Il termine più importante legato alla blockchain è il Bitcoin. Nel 2009 il "fantomatico" Satoshi Nakamoto ha introdotto il Bitcoin, una forma di denaro digitale basato su un giornale distribuito, dove ogni blocco di transazioni è concatenato crittograficamente con il precedente. Questa criptovaluta fa capire che è possibile tenere al sicuro dei valori monetari importanti anche sulla rete. Il Bitcoin è un sistema sofisticato che utilizza e combina diverse tecnologie, tra cui la blockchain, gli indirizzi crittografici, il registro distribuito e il consenso distribuito.
Il Bitcoin viene menzionato in diverse sezioni ed è bene ricordare che, pur essendo molto conosciuto, si tratta solo di uno dei sistemi che utilizzano la tecnologia blockchain. La blockchain e il Bitcoin sono spesso interconnessi, un po’ come Internet (l’infrastruttura tecnologica) e il web (l’applicazione più utilizzata).
Puoi approfondire diversi aspetti della blockchain nella contabilità nei seguenti capitoli:
Aspetti fondamentali della blockchain |
Blockchain per contabili e programmatori |
Funzionamento nella contabilità |
Capitolo 2
Il valore della blockchain nella digitalizzazione (titolo pagina)
Tre punti principali:
- La trasformazione digitale ha creato il bisogno di verificare e proteggere i documenti digitali. La blockchain si è rivelata la tecnologia migliore, sia a livello tecnico che legale.
- La blockchain ha stravolto alcune pratiche che venivano utilizzate prima dell’avvento delle tecnologie digitali. Con la blockchain è possibile: gestire i dati in modo distribuito (e non centralizzato), ridurre l’uso di intermediari nelle transazioni.
- Banana Contabilità applica la blockchain per verificare l’autenticità dei dati contabili in modo centralizzato. L’applicazione della blockchain in Banana è quindi diversa da quella del Bitcoin, ed è ideale per ottenere facilmente la garanzia della validità dei dati.
Per millenni, l’essere umano ha usato dei supporti materiali quali steli, pergamene, e infine carta per redigere dei documenti. Il contenuto poteva essere alterato tramite la modifica del supporto fisico, quindi per evitare falsificazioni si usavano firme, sigilli o altri accorgimenti. Ancora ai giorni nostri, per proteggere il documento da eventuali perdite, è normale ricevere una copia e apporvi delle firme con una penna. Nel caso delle aziende o privati, di solito si conservano i documenti originali o le copie in un archivio. I sistemi di archiviazione seguono tutt’ora delle leggi che prescrivono la conservazione dei contenuti e li tutelano contro la falsificazione.
Ma con l’arrivo delle tecnologie digitali sono arrivati importanti cambiamenti.
La centralità della blockchain nell’era digitale
Nel mondo digitale l’informazione non è più impressa su un supporto fisico, ma è memorizzata come impulsi elettronici all’interno di un dispositivo. Con la trasformazione digitale le modalità millenarie di salvare e accedere alle informazioni vengono stravolte. Per far sì che il nostro sistema economico e giuridico continui a stare in piedi è necessario avere dei sistemi di certificazione che ci consentano di garantire l’autenticità e integrità dei dati digitali. Qui entra in gioco la tecnologia blockchain, che ci permette di verificare in modo affidabile i documenti elettronici.
Immagine
Tutti i documenti (certificato di matrimonio, sentenza, contratto, banconota, ...) sono sostanzialmente degli attestati di eventi che hanno rilevanza giuridica. Ovviamente le persone continuano a sposarsi, a rivolgersi ai giudici, a stipulare contratti e ad effettuare pagamenti, e l’autenticità degli attestati di questi eventi deve essere garantita. La blockchain, intesa come strumento in grado di garantire l’autenticità e l’integrità delle informazioni di valore, assumerà quindi un ruolo sempre più centrale nell’era digitale.
La tabella qui di seguito riepiloga i principali cambiamenti che hanno anche importanti conseguenze legali.
VEDERE SE METTERE TABELLA?
Informazioni di valore verificate: Banana VS Bitcoin
Il contesto d’uso della blockchain è quello dove i contenuti di valore devono rimanere immutati. La blockchain può essere applicata indipendentemente dalla tecnologia della conservazione dei dati usata, quindi può certificare:
• Strutture sequenziali (log)
• Base dati relazionali (SQL)
• Database tipo documento (Json)
• Base di dati distribuite o centralizzate.
La blockchain può valorizzare qualsiasi sistema, l’importante è che sia utilizzato in modo intelligente e che l’applicazione della certificazione sia di utilità all’applicazione. Vediamo quali sono le principali differenze tra il sistema usato da Banana Contabilità e da Bitcoin, il sistema più conosciuto al mondo:
- Aggiunta del sigillo - Nel caso di Banana Contabilità, i sigilli sono aggiunti come informazione supplementare ai dati già esistenti. Nel giornale del Bitcoin invece il sigillo diventa parte integrante della struttura dati, serve come identificativo del blocco e come connessione al precedente.
- Controllo e verifica dei dati – In Banana Contabilità il controllo e la verifica spettano al contabile, che può modificare i dati liberamente, fino a quando non decide di applicare il comando per la certificazione. Quando è stato applicato il sigillo, eventuali errori devono essere corretti con operazioni supplementari di storno o rettifica. In Bitcoin, i minatori che preparano i blocchi sono anche responsabili di verificare l’autenticità delle transazioni e quelle che non hanno i requisiti vengono scartate.
- Fasi dell’applicazione - In Bitcoin ogni blocco è provvisto di timestamp, che offre un chiaro riferimento temporale. Non vi sono obblighi legali da soddisfare e il funzionamento e il valore del Bitcoin dipendono dalla fiducia che le persone nutrono nel sistema.
Vedere come presentare le tabelle
Fasi nel sistema Bitcoin | Eseguita da | Spiegazione |
Creazione delle informazioni | Titolari degli averi | Invio ordini di trasferimento |
Raccolta e verifica contenuti | Minatori | Preselezione degli ordini |
Applicazione dei certificati | Minatori | Creazione dei blocchi e sigilli |
Aggiunta alla collezione | Ogni nodo della rete | Aggiunta al proprio giornale in base alle regole del consenso distribuito |
Custodia dei dati e dei sigilli | Ogni nodo della rete | Copia locale di tutti i dati |
Garanzia autenticità dei dati | Ogni nodo della rete | Verifica multipla presso altri nodi della rete |
In Banana Contabilità c’è un unico giornale, cioè la tabella Registrazioni con tutti i movimenti, da quelli in corso (senza sigilli) e quelli da considerare definitivi che sono muniti di sigilli. Il contabile (o un altro incaricato) si occupa del passaggio a definitivo impartendo il comando che applica i sigilli.
Fasi in Banana Contabilità | Eseguita da | Spiegazione |
Aggiunta e correzione | Utente | Inserimento dei movimenti in modo libero |
Verifica e certificazione dati | Utente / Supervisore | Comando Blocca movimenti |
Custodia dei dati e dei sigilli | Utente / Supervisore | Obbligo di tenere copie |
Garanzia autenticità dei dati | Utente / Supervisore / Esterno | Conservazione sigilli in modo da provare originalità dei dati |
Blockchain come protezione dei dati
La conservazione delle informazioni digitali non è sempre garantita: difetti tecnici, errori di programmazione o persone che abusano o bypassano i sistemi di protezione possono cambiare le informazioni e anche evitare che ci sia traccia del cambiamento. Per questo motivo la blockchain, che funziona per qualsiasi tipo di dati, è diventata importante per verificare se i dati sono originali.
La blockchain è indirettamente anche un sistema di protezione dei dati: dato che è possibile capire facilmente se i contenuti sono stati modificati, fa da deterrente ai tentativi di alterazione. Grazie alla blockchain, se i dati hanno subito delle modifiche si possono recuperare delle copie e verificarne l’originalità.
IMMAGINE
Al momento, la conservazione dei dati si sta spostando sul cloud, esponendoli a una serie di nuovi pericoli per la loro integrità. Bisogna quindi applicare un sistema di certificazione legato alla protezione dei dati sui cloud e le leggi attuali sono aperte all’uso della blockchain come metodo di certificazione. È molto probabile che questa modalità di certificazione dei dati diventerà la norma anche in ambito contabile.
Sul superamento dell'intermediazione: addio alle banche?
L’utilizzo di documenti cartacei ha favorito la crescita dei servizi di intermediazione. Il valore del denaro viene depositato fisicamente presso un intermediario (solitamente una banca) che tiene nota dei passaggi di proprietà, ricevendo un compenso. Anche tutto ciò che viene trattato in borsa viene gestito da intermediari. Nel momento in cui l’attestato della proprietà di un’azione o di un qualsiasi altro valore è in forma digitale, si apre la possibilità di trasferirlo in maniera elettronica in qualsiasi punto del mondo. Non c’è più la necessità di avere degli intermediari.
IMMAGINE
Quando si tratta di dati digitali, anche il sistema Bitcoin permette di effettuare dei pagamenti diretti, senza intermediari. Tramite la blockchain si possono creare valori digitali (azioni, obbligazioni, biglietti, buoni acquisto, certificati d’autenticità e altro), che possono essere scambiati direttamente. Secondo Domenico Zucchetti «la blockchain verrà adottata nell'intermediazione per rendere i processi più sicuri, efficienti e facilmente integrabili».
Il Bitcoin è stato originariamente concepito come un sistema per eseguire trasferimenti di denaro senza intermediari a costi irrisori. Tuttavia, la realtà si è rivelata diversa: gran parte delle operazioni Bitcoin vengono gestite da intermediari (Exchanges), con costi che hanno raggiunto i 60 dollari per transazione a causa dei compensi dei minatori. Per via delle sue limitazioni tecniche, il Bitcoin non può competere con i sistemi bancari tradizionali o centralizzati come Paypal, M-pesa, Wechat e Alipay. Nonostante ciò, la tecnologia blockchain ha attirato molti investimenti e attenzione per la sua capacità di creare nuovi tipi di business che non necessitano di intermediari.
Preservare la flessibilità delle organizzazioni
La blockchain non deve andare contro il concetto della flessibilità nelle operazioni contabili delle organizzazioni. Ma la blockchain rende difficile modificare i dati con un sigillo. Come si può rimanere flessibili usando la blockchain?
Non ha alcun senso correggere continuamente gli errori con delle operazioni di storno e rettifica o applicare i sigilli senza aver verificato i dati; bisognerebbe invece avere un sistema che sia in grado di assicurare un’alta qualità. In Banana Contabilità è possibile inserire i movimenti, controllare la contabilità e correggere le operazioni in modo semplice. Solo al momento in cui i tutti i dati sono stati riconciliati e corretti, si applica la blockchain.
IMMAGINE
Fiscalità e mancanza di flessibilità
Il rischio maggiore di un approccio burocratico lo si vede ovviamente in ambito fiscale, dove è ritenuto normale impedire l’evasione fiscale obbligando le ditte a registrare i movimenti in tempi brevi, senza ulteriori modifiche. Invece che aumentare la complessità, le autorità fiscali dovrebbero fare una valutazione complessiva della situazione e fare in modo che tenere la contabilità e pagare le tasse diventi il più facile possibile. L’utilizzo della blockchain dovrebbe servire a tale scopo. Per le piccole ditte, il concetto da seguire dovrebbe essere quello di applicare la blockchain ai movimenti contabili quando i dati sono stati controllati, cioè quando si chiude un periodo o si presentano dei rendiconti periodici. Diverso è il discorso per le grandi aziende, dove il giornale viene alimentato da molti utenti e da procedure automatiche. In questo caso, la blockchain potrebbe essere applicata immediatamente.
La blockchain nelle applicazioni distribuite: il caso del Bitcoin
C’è un grande interesse nel creare delle applicazioni in cui i dati siano gestiti in modo distribuito, dove gli utenti hanno una propria copia dei dati. Il Bitcoin è il sistema più conosciuto che si basa sulla blockchain decentralizzata.
IMMAGINE
Quando viene usato in contabilità, il Bitcoin è però anche molto diverso dai soliti sistemi contabili perché l’elemento chiave è il consenso distribuito. Non c’è un’autorità centrale, infatti ogni nodo della rete Bitcoin decide, in base a delle regole predefinite, quali siano i blocchi di transazioni che devono essere aggiunti al giornale e in quale ordine. Per poter rendere il sistema Bitcoin affidabile, il calcolo del sigillo è reso molto oneroso da complessi calcoli matematici.
Questa scelta tecnica può indurre a credere che la blockchain venga usata solo con il consenso distribuito. In verità la blockchain funziona sia se il sistema di aggiunta dei dati si basa sul consenso centralizzato che su quello distribuito. Semplicemente, negli ultimi decenni si è preferito puntare su applicazioni distribuite.
La blockchain applicata a base dati centralizzate: il caso di Banana Contabilità
Come dimostra l’esempio di Banana Contabilità, applicare la blockchain ai sistemi contabili esistenti comporta vantaggi notevoli. Adattare applicazioni esistenti che usano dei database relazionali (SQL) alla blockchain è molto facile dal punto di vista tecnico. Risulta più complicato l’aspetto organizzativo del database.
Nel caso dei software contabili, il giornale contiene le transazioni organizzate in un determinato modo. Se si vuole introdurre l’uso della blockchain, bisogna aggiungere nella tabella dei dati due colonne supplementari nelle quali memorizzare il numero progressivo della riga e il sigillo progressivo (blockchain).
- In seguito, bisogna capire come organizzare questi sigilli. Nel caso di Banana Contabilità, usiamo:
Una procedura che permette di calcolare i sigilli delle operazioni definitive non ancora munite di sigillo. - Oppure una procedura che, a scadenze regolari, numera le operazioni, calcola e salva i sigilli nelle righe di registrazione (per ulteriori informazioni tecniche si rimanda alle spiegazioni contenute nel brevetto USA).
La procedura scelta deve ovviamente includere la verifica dell’integrità dei dati. L’affidabilità dei dati in Banana Contabilità sarà comunque sempre dipendente dalle persone che li gestiscono, che sia una persona interna all’azienda o un sistema di notariato digitale. Solo le persone designate devono avere la possibilità di modificare i sigilli originali.
IMMAGINE
Lo stesso approccio usato per la contabilità può anche essere usato in tutti gli ambiti dove c’è un giornale o registro. La blockchain potrebbe quindi essere usata per certificare:
- I dati di un registro fondiario
- Il registro degli accessi
- Il registro degli eventi di un computer
- Altre strutture dati che raccolgono informazioni di valore.
Ogni operazione può essere munita di un sigillo progressivo. Questo sistema, specialmente quando ci sono grandi quantità di dati, è molto più semplice, più veloce e anche più sicuro rispetto alle procedure basate sul confronto di dati perché:
- Eventuali tentativi di manipolazione possono essere facilmente individuati perché si vedrà che la firma digitale non corrisponde più a quella originale.
- La blockchain permette di assicurare che i dati siano sempre sincronizzati e che non ci siano differenze difficili da riconciliare, anche per i giornali di grandi organizzazioni.
Il sistema della blockchain centralizzata è stato adottato dall’organizzazione svizzera di aiuto allo sviluppo Helvetas. Grazie alla blockchain di Banana Contabilità, Helvetas riesce ad integrare e mantenere allineate le contabilità di oltre 200 progetti nel mondo intero con la contabilità centrale. E il loro è solo uno dei molti esempi di applicazione della blockchain non decentralizzata.
Capitolo 3
La blockchain di Banana.ch SA (titolo capitolo 3, cercare qualcosa di più creativo?)
In questo capitolo scoprirai che:
- La blockchain viene sempre applicata a una collezione di dati in crescita. Gli algoritmi chiamati “hash crittografici”, creano un codice unico per ogni transazione, e sono l’elemento base della blockchain.
- Banana Contabilità è un semplice esempio che dimostra come la blockchain può essere integrata in un giornale contabile. In questo caso i movimenti vengono numerati con un numero progressivo e l’ultimo hash crittografico del giornale certifica l’integrità di ogni transazione e dell’intero giornale fino a quel momento.
- Con la blockchain di Banana Contabilità è possibile verificare l’integrità dei dati ed è uno strumento utilissimo per i revisori, ma questo avviene solo se si conservano i sigilli digitali delle operazioni.
Sono numerose le innovazioni adottate dall’azienda Banana.ch SA. Nel caso della blockchain, questa è stata integrata nel software contabile prima di diventare popolare, trasformandoci in pionieri della sua adozione. In questo capitolo scopriremo alcune caratteristiche della blockchain applicate allo sviluppo di Banana Contabilità.
Per chi non ha molta familiarità con la blockchain, abbiamo un capitolo introduttivo che definisce le basi di questa tecnologia. In seguito tratteremo del caso specifico della blockchain di Banana Contabilità.
IMMAGINE
Come funziona la blockchain: gli hash crittografici
La blockchain (o “catena di blocchi” di dati) si basa principalmente sugli hash crittografici:
Un hash crittografico è un tipo di algoritmo che prende qualsiasi tipo di dato (una transazione, nel caso del giornale contabile) e produce un unico codice chiamato hash. Il termine “hash” deriva dall’inglese e significa letteralmente “tritare, macinare”. Infatti, la funzione matematica prende una linea di testo (input) e la “trita”, facendola diventare una serie di caratteri (hash sum). Questo hash è una specie di firma digitale che certifica la validità dei dati e anche un piccolo cambiamento nei dati produce un hash completamente diverso. Se il contenuto invece rimane uguale, ripetendo l’operazione di calcolo si arriverà sempre allo stesso numero. Essendo questo numero gigantesco è praticamente escluso che due sequenze di dati diversi possano dare dei numeri uguali. |
La blockchain consente di aggiungere dei nuovi elementi senza compromettere l'integrità degli hash già presenti. In ambito contabile questo aspetto è fondamentale perché si deve potere certificare e verificare l'integrità dei movimenti contabili inseriti fino a un certo momento, ma anche aggiungerne dei nuovi.
Con i database tradizionali sarebbe necessario scambiare tutti i dati del giornale per verificarne l'integrità. Invece, con la blockchain distribuita, ogni nodo della rete collabora con gli altri ed è in grado di interrogarli per verificare che il suo giornale sia quello corretto. Questo avviene con il sistema Bitcoin, dove ogni nodo assume anche il ruolo di validazione dei contenuti, rendendo estremamente difficile per qualcuno creare un sistema di frode.
IMMAGINE
Gli hash crittografici devono soddisfare determinate caratteristiche, qui trovate un approfondimento tecnico [link sezione 4].
Come funziona la blockchain: le collezioni di dati
La blockchain è un sistema di certificazione che garantisce diversi aspetti fondamentali per l’uso dei dati digitali.
Garanzia dell’integrità delle collezioni di dati - Ogni blocco dati della collezione viene munito di un proprio sigillo digitale; questo sigillo è anche il certificato di tutta la collezioni dati, dall’inizio fino al quel punto. È possibile verificare l'integrità della collezione di dati ricalcolando gli hash di tutti i blocchi e confrontandoli con gli hash originali.
Applicazione a “dati in crescita” - La blockchain permette di aggiungere elementi alla collezione, senza invalidare i sigilli precedenti. All’interno delle collezioni di dati si possono conservare informazioni importanti con la certezza che i contenuti rimangono integri anche se vengono aggiunte nuove informazioni. I blocchi devono avere un modo per definire la loro sequenza, ad esempio un numero progressivo o un riferimento al blocco precedente.
Trasmissione e archiviazione sicura - Il vantaggio offerto da questa tecnologia è che le collezioni di dati possono essere trasmesse facilmente. Questi dati possono custodire informazioni importanti, che attestano il possesso di una certa somma in Bitcoin o la proprietà di una casa, con la certezza che i dati non possano essere manipolati o falsificati. Si possono impostare controlli regolari che scoraggiano e rendono completamente inutili i tentativi di alterazione dei dati.
Il funzionamento della blockchain dal punto di vista logico è molto semplice:
- Per ogni elemento della collezione si calcola un sigillo digitale, includendo nel calcolo, oltre ai dati del movimento, anche il sigillo dell’operazione precedente.
- In questo modo i sigilli formano una catena e il sigillo dell’ultimo movimento è anche il sigillo di tutta la collezione.
IMMAGINE
Se il contenuto della collezione non cambia, ricalcolano i sigilli, si otterrà uno sigillo uguale a quello calcolato in precedenza. Se si modifica anche un singolo elemento, il sigillo risulterà diverso.
In contabilità, per verificare l’integrità della collezione si deve ricalcolare tutti i sigilli partendo dal primo movimento e poi si fa un confronto con i sigilli originali. Una ditta può dimostrare che i dati della contabilità non sono cambiati tenendo sempre una copia dei sigilli originali. Quando si aggiungono nuovi movimenti, non si va a intaccare i sigilli precedenti. Ad esempio, se vogliamo verificare i sigilli di una precedente chiusura trimestrale, questi non subiscono cambiamenti.
La blockchain nel giornale di Banana Contabilità
Nel 2002, Banana Contabilità è stato il primo software contabile al mondo a impiegare la blockchain, offrendo un nuovo metodo per proteggere i dati del giornale contabile.
La blockchain si utilizza per i dati storici, che una volta creati e validati non devono più essere modificati, ad esempio un giornale contabile o un registro degli accessi. Banana Contabilità ci offre un esempio di facile comprensione su come un software contabile può integrare la blockchain:
- Ogni transazione è rappresentata dalla riga del giornale che contiene un hash crittografico calcolato in base al contenuto dell’hash crittografico della riga precedente.
- L’hash della riga è il risultato del concatenamento di tutti gli hash delle righe precedenti, diventando un certificato che garantisce l’integrità dei dati dall’inizio del giornale.
- Aggiungendo altre righe, ciascuna con il proprio hash, non verranno invalidati gli hash precedenti.
IMMAGINE
Verificare facilmente la validità del giornale
Per quanto riguarda la contabilità, diverse normative nazionali richiedono che i movimenti siano numerati in modo progressivo, perciò Banana Contabilità assegna alle registrazioni un numero progressivo. Per ogni movimento viene calcolato un hash crittografico che garantisce l’integrità di ogni transazione e dell’intero giornale fino a quel momento. Questo numero determina la sequenza delle righe, permette di verificare la validità degli hash ed è conforme alle normative. Di conseguenza, il giornale contabile risulta certificato.
La concatenazione degli hash crittografici di Banana
Nella blockchain ogni blocco di dati ha un hash crittografico che è calcolato sulla base dei contenuti e dell’hash del blocco precedente. In questo modo si crea una catena crittografica. L’hash del blocco finale diventa anche il certificato di tutti i dati della catena (dall’inizio fina all’ultimo blocco).
L’ordine in cui i blocchi si susseguono nella blockchain è tanto importante quanto le informazioni contenute nel blocco. Questa tecnologia garantisce infatti l’immutabilità sia dei contenuti che della successione dei dati, in modo che ogni blocco può essere consultato, ma non può essere alterato.
In Banana Contabilità, ogni registrazione ha il suo blocco con relativo hash. L’immagine seguente mostra la concatenazione dei blocchi nel giornale contabile. Ogni blocco ha un numero di sequenza che serve a garantire la progressività dei dati.
IMMAGINE
Quando si modifica il contenuto, cosa succede?
Il concatenamento degli hash garantisce che se i contenuti vengono modificati, lo si potrà vedere perché gli hash saranno diversi.
Le due immagini seguenti mostrano cosa succede quando viene modificato il valore di un singolo importo in Banana Contabilità. Nel registro modificato (modified ledger) viene indicato l’importo di 40 CHF invece di 30 CHF indicato nella seconda riga del registro originale. Cambiando i dati, cambiano anche gli hash crittografici del dato che è stato modificato (in questo caso quello nella seconda riga). Anche gli hash successivi saranno modificati poiché è avvenuto un cambiamento nei dati.
IMMAGINE 1
IMMAGINE 2
Come si crea la blockchain in Banana Contabilità
Le fasi della creazione del blockchain possono essere riassunte nel modo seguente:
- Raccolta e creazione dei blocchi di dati.
- Verifica dei dati.
- Fissazione delle sequenze dei dati.
- Calcolo degli hash crittografici.
Le modalità di creazione di una struttura dati blockchain può variare a seconda del software. Nel caso di Banana Contabilità la sequenza è la seguente:
- Il contabile inserisce o importa i dati nella tabella Registrazioni includendo per ogni movimento tutte le informazioni necessarie.
- Il contabile impartisce il Comando “Blocca righe di Registrazione” specificando fino a quale data i movimenti devono essere bloccati (generalmente si includono i dati controllati). Quando si impartisce questo comando il programma esegue le seguenti operazioni:
- Verifica se i movimenti da bloccare non contengono degli errori;
- Verifica che la sequenza degli hash crittografici precedenti sia corretta;
- Attribuisce un numero di sequenza progressiva a ogni movimento, partendo dall’ultimo numero di sequenza precedente;
- Calcola gli hash crittografici di ogni movimento concatenandoli con quello della riga precedente.
Presenta un riassunto dell’operazione di blocco.
Come verificare l’integrità dei dati
Chi deve verificare la correttezza dei dati, si assicura che siano corretti da un punto di vista materiale (i dati corrispondono all’effettiva operazione) e formale (i conti dare e avere sono indicati in modo corretto). La verifica dei dati può avvenire in più momenti.
Per potere verificare l’integrità di un giornale di Banana Contabilità:
- Si impartisce il comando di verifica che ricalcola l’hash crittografico di tutti i movimenti.
- Si verifica che l’hash crittografico dell’ultima riga sia uguale a quello che si è memorizzato.
Affinché sia possibile verificare l'integrità dei dati, è necessario conservare l'hash crittografico che è stato generato al momento del blocco. La modalità di memorizzazione e conservazione dell'hash crittografico per scopi di verifica dipende dall'organizzazione in questione. Se l'hash non viene conservato, non sarà possibile accertarsi dell'integrità dei dati.
IMMAGINE
Custodia dei sigilli in contabilità
La blockchain è uno strumento utilissimo alla gestione delle raccolte di dati, inclusi quelli contabili. Questa tecnologia deve però essere supportata da un’organizzazione adeguata dei sigilli originali. Ciò dipende dal tipo di azienda. Nel caso delle piccole imprese, l’autenticità può essere assicurata tramite l'operatore, che dopo aver controllato la contabilità, blocca periodicamente i dati e registra i sigilli digitali dell'ultima operazione.
Per custodire i sigilli digitali, è sufficiente seguire alcune semplici accortezze:
- Il contabile deve stampare o inviare tramite email l'hash crittografico relativo all'ultimo sigillo digitale generato.
- Il revisore deve annotare nei propri documenti l'hash relativo ai dati che ha verificato.
Se l'organizzazione possiede più contabilità distribuite, quando consolida i dati deve prendere nota dell'hash corrispondente.
La revisione della contabilità con la blockchain, anche per le autorità fiscali
La blockchain semplifica notevolmente la conservazione dei dati contabili: si possono tenere copie dei file, fare backup e, tramite la verifica degli hash, essere certi dell’autenticità dei dati.
Per i revisori della contabilità è essenziale verificare il funzionamento della blockchain. Va evitata qualsiasi manipolazione degli hash e delle modifiche da terzi. Fortunatamente, con la blockchain è molto semplice individuare in tempi brevi qualsiasi modifica, quindi funziona da terrente contro utilizzi inappropriati dei movimenti contabili.
La blockchain nella fiscalità
La possibilità di creare copie autentiche del giornale contabile con la certezza che i dati siano identici consente ai revisori di effettuare controlli anche al di fuori del sistema informatico . Con l'utilizzo della blockchain, diventa ancora più semplice effettuare revisioni periodiche; i sigilli digitali garantiscono che i movimenti già controllati non siano stati modificati successivamente.
Per le autorità fiscali, la blockchain rappresenta un sistema interessante. Le aziende devono solamente inviare contemporaneamente agli adempimenti l'hash relativo allo stato attuale della contabilità. In questo modo, il fisco e l'ufficio di revisione possono verificare tutta la contabilità, evitare le verifiche mirate a scoprire eventuali modifiche a posteriori dei dati.
Capitolo 4
La blockchain per contabili, giuristi e programmatori (titolo capitolo 4)
L’ultima parte della sezione “Blockchain in contabilità” è dedicato a chi vuole approfondire alcuni aspetti della tecnologia. In questo capitolo scoprirai che:
- La tecnologia blockchain si è adatta facilmente al sistema legislativo esistente
- La certificazione dei dati avviene tramite gli algoritmi di hash, che rappresenta l’impronta digitale di queste collezioni di dati. Questi hash sono anche chiamati sigilli digitali e devono avere determinate caratteristiche
- Banana Contabilità è un esempio chiaro di come la blockchain può essere applicata a un software in commercio. Ci sono però diversi aspetti legali e contabili che vanno applicati a questa tecnologia.
Banana Contabilità ha integrato la blockchain all’interno del software contabile in modo quasi visionario, qualche anno prima che questa tecnologia divenisse popolare. Questo cambiamento si è rivelato rivoluzionario per il programma, poiché la blockchain ha una funzione importante di protezione dei dati e assicura che il software adempia ai requisiti di legge per la tenuta dei dati contabili. Oltre a ciò, ha portato la sicurezza dei dati a un livello molto più alto rispetto alle tecnologie precedenti.
C’è un grande interesse verso la blockchain, ma l’argomento risulta piuttosto complicato per via delle sue tecnicità e dell’aspetto culturale della trasformazione digitale, tutt’ora in atto. È necessario un cambio di prospettiva, che implica però un’immersione nei possibili impieghi della blockchain.
Approfondiamo assieme gli aspetti rivoluzionari di questa tecnologia dal punto di vista di programmazione, di contabilità e legislazione.
Aspetti legali e culturali della blockchain
Domenico Zucchetti [inserire la biografia da qualche parte sul sito o mettere un’ancora] si è occupato delle tematiche del commercio elettronico e la protezione dei dati quando erano ancora sconosciute ai più. Già nel 1986, ne tratta nella sua tesi di laurea in giurisprudenza.
Immagine Domenico Zucchetti, Fondatore e CEO di Banana.ch SA |
|
Il fatto che il sistema giuridico non sia stato stravolto dall’e-commerce ha permesso un’adozione veloce della blockchain come strumento per garantire l’integrità e l’autenticità dei dati. Il sistema della blockchain viene ora utilizzato in diversi ambiti. La premessa per il riconoscimento da parte delle autorità amministrative e giudiziarie è ovviamente che i sigilli digitali siano calcolati con tecnologie che ne impediscano la falsificazione.
La questione si pone più che altro in termini organizzativi e culturali. La blockchain, come altre tecnologie, è stata adottata senza prima riflettere sulle possibili implicazioni. Ad esempio, il crimine organizzato può usare il Bitcoin e altre monete digitali come strumento per muovere e riciclare ingenti somme di denaro. Diverse autorità giudiziarie si stanno aggiornando per poter perseguire i criminali e evitare che investitori o minatori ignari vengano accusati di aver permesso di eseguire delle operazioni illegali. Anche a livello di sviluppo tecnologico, gli sviluppatori stanno continuamente migliorando la blockchain per aumentarne la sicurezza e l'affidabilità.
Per i programmatori: hash e sigilli digitali
La certificazione dei dati della blockchain si basa sulla tecnologia di calcolo degli hash, un’operazione che prevede diversi algoritmi. Per una spiegazione più sintetica e meno tecnica potete leggere la definizione nel capitolo 3 [LINK].
Le funzioni di hash sono dei programmi che prendono un insieme di dati e creano un breve testo chiamato hash o hash sum che rappresenta l'impronta digitale dei dati stessi. La funzione di hash può essere paragonata ad un processo di distillazione, allo scopo di ottenere una piccola goccia. La goccia ottenuta, l’hash sum, sarà sempre esattamente la stessa se i dati di partenza sono uguali.
IMMAGINE
Gli algoritmi di hash sono dei programmi open source sviluppati da esperti nell’ambito della criptografia. Domenico Zucchetti specifica che « come succede a me, la maggior parte dei programmatori probabilmente usa le funzioni di hash senza capire i dettagli dell’implementazione, ma ha fiducia che funzioneranno nel modo corretto».
Ci sono diversi algoritmi con diverse caratteristiche e finalità. Banana Contabilità e Bitcoin usano l’algoritmo di hashing SHA-256, che produce un hash di 256 bit. Si parte da un qualsiasi contenuto e si ottiene sempre un valore della lunghezza di 256 bit, che viene convertito in un testo per risultare leggibile. Di seguito si vede l’hash calcolato su un solo carattere.
Dati | Sigillo / Hash SHA-256 in esadecimale |
|---|---|
“1” | 6B86B273FF34FCE19D6B804EFF5A3F5747ADA4EAA22F1D49C01E52DDB7875B4B |
“2” | D4735E3A265E16EEE03F59718B9B5D03019C07D8B6C51F90DA3A666EEC13AB35 |
Le caratteristiche principali dei sigilli digitali della blockchain
Per la certificazione dei dati si devono usare degli algoritmi di hash molto particolari. Questi hash sono chiamati “sigilli digitali”, in quanto hanno delle caratteristiche molto specifiche:
- Sono un’entità di dati molto piccola, facile da memorizzare e da inviare
- Devono essere in grado di elaborare una sequenza di dati di qualsiasi lunghezza
- Devono produrre un dato riassuntivo di lunghezza fissa, generalmente 256, 512 o 1024 bit
- Sono determinanti: partendo dallo stesso contenuto si ottiene sempre il medesimo hash. Anche un minimo cambiamento nei contenuti, produce un sigillo significativamente diverso
- Sono unidirezionali: partendo dall’hash deve essere tecnicamente impossibile ricostruire il contenuto dei dati originali
- Sono resistenti alle collisioni: deve essere tecnicamente impossibile trovare dei contenuti diversi che producano il medesimo sigillo
- La sequenza di caratteri generati è imprevedibile e non può essere associata ai dati di partenza
- Effetto valanga: una piccola modifica ad un contenuto cambierà il valore degli hash in maniera così radicale che il nuovo valore apparirà non correlato con quello vecchio
Possono essere facilmente scambiati e inviati a terzi senza esporre i contenuti originali.
IMMAGINE
Infine, gli hash crittografici sono riconosciuti legalmente se soddisfano tre caratteristiche principali:
- Garantiscono i criteri di unicità (non sono presenti collisioni)
- Garantiscono l’unidirezionalità dei dati
- Sono difficilmente attaccabili.
Gli hash usati come sigilli digitali identificano in maniera univoca l’insieme dei dati che sigillano. Ciò significa che i sigilli fungono anche da “numero di targa” specifico della sequenza di dati.
Per verificare la validità dei sigilli si calcola nuovamente il sigillo con il medesimo algoritmo partendo dai dati “sigillati” e si confronta il risultato con il sigillo originale. Se i sigilli sono uguali, i contenuti sono uguali; se i sigilli sono diversi, i contenuti sono diversi. In questo modo un malintenzionato non potrà mai creare una sequenza di dati diversa che produca il medesimo sigillo.
Il problema della collisione
L’affidabilità del sigillo dipende dall’impossibilità di generare un hash uguale partendo da dati diversi. L’insieme dei dati di partenza è ovviamente più grande di quello dell’hash, per cui esistono delle combinazioni di dati che possono produrre il medesimo sigillo, che in termine tecnico si chiamano “collisione”. Per evitare questo problema, è essenziale rimanere aggiornati a livello tecnico con i migliori algoritmi.
La differenza con il sistema complicato del Bitcoin
Il calcolo del sigillo nel sistema Bitcoin è abbastanza complesso. Solamente i minatori in possesso di grandi capacità di calcolo riescono a competere. Questo aspetto tecnico richiede ingenti investimenti in computer ed energia. Il sistema prevede in media 10 minuti per completare un singolo blocco. Al momento i sigilli del nuovi blocchi devono iniziare con 18 zeri, richiedendo un numero elevatissimo di tentativi per calcolarlo.
IMMAGINE
Questa particolarità del sigillo che inizia con degli zeri rende la procedura di generazione del sigillo più complessa e più difficile da comprendere. Il sistema di calcolo utilizzato in Banana Contabilità è più lineare e il funzionamento più comprensibile. Nonostante le differenze di calcolo, la blockchain di Bitcoin e di Banana Contabilità servono comunque allo stesso scopo, che è quello di avere una sequenza di dati la cui integrità può quindi essere verificata grazie ai sigilli.
Aspetti legali e contabili della blockchain di Banana contabilità
La blockchain del software Banana Contabilità è stato sviluppata per impedire modifiche alle registrazioni. Banana Contabilità è un interessante esempio di come questo sistema di certificazione può essere aggiunto ad un software in commercio, permettendo grandi passi avanti in termini di sicurezza e affidabilità, con un metodo decisamente più sicuro della semplice password. Nel caso della blockchain di Banana Contabilità, le modalità d’uso sono comprensibili anche a chi non ha particolare conoscenze tecniche.
In Banana Contabilità il giornale è uno solo e ci sono due tipi di registrazioni:
- Registrazione con i sigilli della blockchain, che sono bloccate dal comando “Blocca movimenti”. Da questo momento i movimenti sono protetti, non si possono più cambiare e sono anche muniti dei sigilli digitali, con la possibilità di accertare l’originalità dei dati
- Registrazioni libere, in corso di elaborazione, che si possono modificare.
Tenere la contabilità è un’attività piuttosto complessa dove bisogna raccogliere le informazioni, inserirle e catalogarle correttamente. Ci sono spesso degli errori o dimenticanze che si scoprono solitamente alla fine del periodo, quando si fanno le riconciliazioni bancarie, si analizza il bilancio e si preparano i resoconti dell’IVA.
Ovviamente questi errori vanno rivisti e in Banana Contabilità ci sono due modi per correggere:
- Le operazioni che non sono ancora state munite di sigillo possono essere modificate direttamente
- Le operazioni della blockchain devono invece essere corrette con delle operazioni supplementari di storno e di rettifica.
Applicare la blockchain al giornale di Banana Contabilità
La blockchain in Banana Contabilità è stata concepita come un servizio controllato completamente dall’utilizzatore. L’utente ha una contabilità sempre aggiornata e gode della massima libertà di modificare i movimenti, consultare i diversi resoconti e confrontare i propri dati con quelli della banca. Nel momento in cui ritiene che tutto sia corretto (di regola alla fine di un periodo o quando si deve presentare rendiconti particolari) impartisce il comando di blocco dei movimenti.
- All’utente viene presentata una finestra di dialogo nella quale indicare la nuova data di blocco delle registrazioni da bloccare.
IMMAGINE
- A questo punto Banana Contabilità procede all’applicazione dei sigilli ad ogni operazione, e li indica nella colonna BloccoProgr.
IMMAGINE
- Per tutte le righe che non sono bloccate e fino alla data del blocco indicata, il programma procede nel modo seguente:
- Verifica che non ci siano errori nei movimenti. Se vengono riscontrati degli errori (ad esempio se il conto non è corretto) la procedura di blocco viene interrotta. L’utente dovrà correggere l’errore e ripetere il comando di blocco
- Assegna un numero progressivo che viene salvato insieme ai dati della riga stessa. Quando si blocca il periodo successivo, la numerazione riprende dall’ultimo
- Calcola il sigillo dell’operazione (hash progressivo) combinando i dati della registrazione con il sigillo della registrazione precedente.
- Il software impedisce modifiche alle righe con i sigilli e inserimenti di registrazioni con una data inferiore a quella del blocco. In pratica non si bloccano solo le registrazioni, ma anche il periodo contabile.
- Il programma visualizza un rapporto dell’avvenuto blocco, che mostra il numero progressivo dell’ultima registrazione bloccata e il relativo sigillo. Questo sigillo è anche il certificato di tutti i movimenti contabili dalla prima registrazione in avanti, quindi di tutta la contabilità fino a quel punto.
IMMAGINE
- Il programma offre una funzione di verifica dei sigilli, controllando se la sequenza è corretta. Questa funzione è automatizzata anche quando si impartisce il comando di controllo della contabilità e, se i dati sono stati manipolati bypassando le sicurezze del software, verrà segnalato un errore.
La custodia dei sigilli, una certificazione a prova di legge
La tenuta della contabilità è soggetta a regolamentazioni. La certificazione dei dati è generalmente eseguita allo scopo di garantirne e di assicurarne la conformità alle normative. La blockchain è un sistema che, dal punto di vista tecnico, soddisfa i requisiti di legge. Il certificato dei dati indica la data di sistema in cui si è impartito il comando di blocco, ma questo valore non fa stato legalmente. Infatti spetta all’utente salvare questi dati in modo da potere dimostrare il momento in cui i sigilli sono stati applicati. Una possibile modalità è quella di stampare il resoconto e munirlo della propria firma.
L’applicazione dei sigilli avviene di regola quando bisogna trasmettere dei dati alle autorità fiscali. L’invio dei dati servirà anche come certificazione dei dati della contabilità.
La sicurezza data dalla blockchain nella contabilità
La blockchain semplifica enormemente la conservazione dei dati contabili. Si possono tenere copie dei file, effettuare dei backup e, tramite la verifica dei sigilli, essere certi che si tratti dei dati autentici. Per i revisori, invece, diventerà importante verificare il funzionamento della blockchain e di come sono attribuiti e salvati i sigilli. Bisogna evitare che i sigilli possano essere manipolati dato che ciò comporterebbe la modifica dei dati.
La blockchain costituisce un deterrente importante alla modifica dei movimenti contabili per varie ragioni:
- Se i movimenti sono muniti di sigilli, è molto difficile per persone non autorizzate modificare movimenti contabili senza farsi scoprire.
- Con la blockchain individuare modifiche sui dati è semplice ed è facile ripristinare anche la situazione originale.
- Qualsiasi tentativo di modifica può essere scoperto in tempi molto brevi
- Si potranno facilmente individuare modifiche indebite ai dati esistenti, frutto di procedure errate.
Colonna Saldo per rilevare le differenze contabili
La colonna Saldo è presente nella tabella Registrazioni nei file di contabilità in partita doppia, multimoneta, contabilità entrate/uscite e cash manager. È molto utile perché rileva le differenze contabili nella tabella Registrazioni.
La colonna Saldo mostra un valore solo quando è presente una differenza contabile.
Se la registrazione è corretta e il saldo è pari a zero, la cella rimane vuota e la colonna non evidenzia alcuna anomalia.
La presenza di un importo nella colonna Saldo indica quindi che la registrazione è incompleta o contiene un errore da verificare e correggere.
▶ Guarda il video: La nuova colonna Saldo
Come visualizzare la colonna Saldo
La colonna Saldo non è visibile per impostazione predefinita. È possibile visualizzarla dal menu:
- Dati > Disponi colonne > Saldo
La colonna Saldo può essere posizionata nella posizione desiderata utilizzando i pulsanti Su (sposta la colonna a sinistra) e Giù (sposta la colonna a destra) nella finestra di dialogo Disponi colonne.
Motivi delle differenze nella colonna Saldo
Quando si riscontrano discrepanze contabili, è fondamentale identificarne la causa e procedere alla correzione.
Le differenze possono essere dovute, in particolare, ai seguenti motivi:
- la cella del Conto Dare, del Conto Avere o della Categoria è stata lasciata vuota o contiene un valore errato
- nelle registrazioni su più conti o categorie, i totali degli importi non coincidono
- nelle registrazioni con codice IVA, la scomposizione IVA o il conto IVA non sono corretti.
Nota: nelle registrazioni composte, il programma può mostrare temporaneamente una differenza tra Dare e Avere fino al completamento della registrazione.
La colonna Saldo nella Contabilità in partita doppia
Nella contabilità in partita doppia, la colonna Saldo rileva le differenze tra le colonne Dare e Avere.
Quando la contabilità è corretta, la colonna Saldo non deve contenere alcun valore (celle vuote):
- il saldo è pari a zero quando la somma degli importi in Dare e Avere si compensano;
- nelle registrazioni su più conti o categorie, può comparire un saldo fino al completamento di tutte le registrazioni coinvolte. Con l’ultima registrazione, il saldo deve tornare a zero.

L’esempio visualizzato nell’immagine riguarda una registrazione relativa al pagamento di più fatture. I conti e i relativi importi sono inseriti su più righe:
- Nella prima riga, nella colonna Avere, è stato registrato il conto bancario 1020, per un importo totale pagato di 1'000.
- Nelle righe successive, nella colonna Dare, sono stati registrati:
- il conto 1520 – Investimenti, per 300;
- il conto 5820 – Viaggi, per 200;
- il conto 4000 – Acquisti materiale, per 400.
Il totale degli importi registrati in Dare è quindi pari a 900, mentre l’importo registrato in Avere è 1'000.
La registrazione presenta pertanto una differenza di 100. Questa differenza viene evidenziata nella colonna Saldo, nell’ultima riga della registrazione, permettendo di individuare immediatamente che la registrazione non è in pareggio.
La colonna Saldo nella contabilità Entrate/Uscite
Nella contabilità Entrate/Uscite e Cash Manager la colonna Saldo rileva le differenze tra le colonne Conto e Categoria.
Quando la contabilità è corretta, la colonna Saldo non deve avere alcun valore (celle vuote):
- Il saldo è a zero se la somma degli importi nelle colonne Conto e Categoria si compensano (nessuna differenza).
- Per le registrazioni su diversi conti, figura un saldo finché non viene completata la registrazione su tutti i conti e le categorie coinvolti. Con l'ultima riga di registrazione il saldo deve andare a zero.

Nell'immagine di esempio si è generata una differenza di 1000:
- Nella registrazione, sulla riga Doc 2, non è stata inserita la categoria nella colonna Categoria. Pertanto, l'importo, essendo stato registrato solo sul conto, si è generata una differenza di 1000.
Controllare la contabilità
Il comando Controlla contabilità include anche il controllo della colonna Saldo.
Se la colonna Saldo non è a zero significa che ci sono degli errori. Per cercare la prima riga da dove si è generata la differenza contabile:
- scorrere la colonna Saldo per individuare la prima riga da dove parte la differenza.
- utilizzare il comando Ricontrolla contabilità che indica la riga da dove inizia la differenza.