Da dove vengono i movimenti
Due strade, che possono convivere:- File esportato dalla banca, caricato dal wizard Import Mensile. Funziona con qualunque banca che esporti una tabella.
- Revolut Business in diretta, dallo stesso wizard. Vedi Revolut Business.
Formati accettati
- Excel
.xlsxe.xls, oppure CSV (separatore;,,o tab: lo riconosce da solo). Massimo 50 MB. L’unica via da usare per caricare è il wizard Import Mensile: se un file viene rifiutato per dimensione ed è sotto i 50 MB, vuol dire che non stai passando di lì. - Viene letto solo il primo foglio del file. Se la banca esporta più fogli, sposta la tabella nel primo.
- La riga di intestazione viene cercata automaticamente anche se non è la prima (molte banche mettono sopra logo e dati del conto).
- PDF: no. Il tool non legge l’estratto conto in PDF. Se la banca dà solo PDF, va convertito in Excel prima (la maggior parte delle home banking ha comunque un export CSV o Excel nella sezione movimenti).
Come funziona l’import
1
Scegli il conto
Il tool non indovina la banca dal file: sei tu a scegliere il conto bancario su cui caricare. Il tipo del conto (Revolut, Sella, Intesa, UniCredit, Fineco, altro) precompila la mappa delle colonne.
2
Controlla la mappa delle colonne
Il tool propone quale colonna del file è la data, la descrizione, la controparte, l’importo. Se il file usa nomi diversi prova a riconoscerli per somiglianza. Correggi se serve: la mappa si può salvare sul conto, così il mese dopo non la rifai.
3
Anteprima
Vedi le righe come verranno importate, con i duplicati già segnalati. Nota che per i movimenti bancari l’anteprima segnala solo i duplicati rispetto a quello che è già nel tenant: vedi sotto, Duplicati.
4
Importa
Le righe entrano nel tenant. Se hai sbagliato file, il bottone Cancella ultimo import sulla pagina Transazioni bancarie le toglie.
Banche già mappate
Per le banche con due colonne (Accrediti/Addebiti, Entrate/Uscite) il tool le unisce in un unico importo con segno.
Una banca nuova: cosa serve
Nella maggior parte dei casi non serve toccare il codice: crea il conto come tipo «Altro», mappa le colonne al primo import e salva la mappa. Da lì in poi è come una banca supportata. Serve un intervento sul codice solo se vuoi che la banca compaia precompilata per tutti gli studenti. In quel caso i punti da toccare sono quattro, tutti nel repo (vedi Regole per chi tocca il codice):- le colonne di default della banca (
backend/src/bank-accounts/bank-type-defaults.ts); - la voce nel menu a tendina dei tipi di conto (
frontend/src/pages/BankAccountsPage.tsx); - facoltativo, i sinonimi delle colonne per il riconoscimento automatico (
column-mapper.service.ts); - facoltativo, il conto seed creato ai nuovi tenant (
schema-guard.ts).
01/12), legge giorno/mese, all’europea, perché europee sono tutte le fonti che entrano qui — estratti conto italiani e file di Booking, Airbnb e Stripe. Se una banca esporta date in un formato che il tool non capisce, va segnalato al team: è una modifica al codice, non alla mappa.
Duplicati
Un movimento bancario è considerato duplicato se data, importo e riferimento coincidono con uno già presente nel tenant. Il confronto è solo questo: file nuovo contro quello che c’è già.- Ricaricare lo stesso file non crea doppioni: le righe già presenti vengono saltate.
- Dentro lo stesso file non si scarta niente. Per i movimenti bancari (e per i payout) il controllo fra righe dello stesso file è disattivato apposta: due bonifici veri possono avere stessa data e stesso importo, e buttarne via uno sarebbe un errore silenzioso in meno visibile del doppione. Quindi se un file contiene davvero la stessa riga due volte, entrano entrambe.
- Il rischio resta fra un import e l’altro: due movimenti diversi con stessa data, stesso importo e riferimento vuoto, caricati in due momenti diversi, vengono visti come uno solo e il secondo viene saltato. Succede con banche che lasciano il campo riferimento vuoto: in quel caso conviene mappare come «riferimento» una colonna che varia (id operazione, causale completa).
Il file di Cosmica: Revolut, export CSV dei movimenti dalla web app, caricato una volta al mese sul conto Revolut del tenant Cosmica. Se vuoi un esempio di file che funziona, è quello.