Accesso e tenant
| Sintomo | Causa | Soluzione |
|---|---|---|
| Entro e vedo movimenti che non sono miei | manca il tenant Reconciliation assegnato sulla platform, quindi si è ripiegato sullo slug dell’organizzazione, che punta altrove | assegnare il tenant Reconciliation giusto sulla platform; disattivare l’utente nel tenant sbagliato |
| Il pulsante dalla platform apre il tool ma mi rimanda al login | il codice usa-e-getta è scaduto o già usato — è la platform a controllarlo, non il tool — oppure il tool non raggiunge la platform | riprovare dal pulsante; se persiste, controllare sul server l’indirizzo della platform e il segreto condiviso |
| Tool vuoto, nessun conto bancario | il tenant è nato dopo l’ultimo avvio del tool: i tre conti pronti si creano all’avvio, non al login | non è un guasto e non significa database sbagliato. Segnalare al team, che fa ripartire il tool; oppure crearsi il conto a mano da Conti Bancari, sapendo che così i tre pronti non arriveranno più |
Import file
| Sintomo | Causa | Soluzione |
|---|---|---|
| Il file della banca ha un formato diverso da quello che il tool si aspetta | ogni banca esporta colonne e nomi diversi; il tool non indovina | scegliere il conto come tipo «Altro», mappare le colonne a mano nell’anteprima, salvare la mappa sul conto: vedi Banche e file |
| «Nessuna colonna riconosciuta» | intestazioni diverse dalla mappa del tipo di conto, o tabella non sul primo foglio | mappare a mano le colonne e salvare la mappa sul conto; spostare la tabella nel primo foglio |
| Importi tutti a zero o tutti positivi | banca con due colonne (Accrediti/Addebiti) mappate su una sola | mappare entrambe le colonne |
| Righe saltate come duplicate ma sono movimenti diversi | stesso giorno, stesso importo, riferimento vuoto — succede solo fra import diversi: dentro lo stesso file i movimenti bancari non vengono mai scartati | mappare come riferimento una colonna che varia (id operazione, causale completa) |
| Ho caricato il file sbagliato | Cancella ultimo import sulla pagina Transazioni bancarie. Non è un annulla a tempo: parte dalla riga più recente presente nello spazio e cancella tutte quelle entrate nei 5 minuti prima di quella, quindi funziona anche giorni dopo, ma se nel frattempo hai caricato altro cancella quell’altro. Leggi il conteggio che ti mostra prima di confermare: è irreversibile | |
| Date sballate (mese e giorno invertiti) | quando data e mese sono entrambi ≤ 12 la data è ambigua | dal 5 settembre 2026 il tool legge giorno/mese, all’europea, ed è la lettura giusta per tutte le fonti che tratta. Se le date restano sbagliate il formato del file è un altro: segnalare al team, è una modifica al codice, non alla mappa |
Revolut Business
| Sintomo | Causa | Soluzione |
|---|---|---|
| «Mattone user not linked» | sei entrato con il login classico, non dalla platform | entrare dal pulsante Reconciliation su app.mattone.co |
| Errore 404 dalla platform durante la sincronizzazione | Revolut non collegato in Connessioni | collegarlo, poi riprovare |
| Errore 400 «esistono già movimenti nel periodo» | protezione anti-doppioni | scegliere un periodo non sovrapposto o annullare l’import precedente |
| Periodo rifiutato | più di 92 giorni | spezzare in trimestri |
| Movimenti di un altro conto (es. GBP) | la sincronizzazione prende tutti i conti dell’account | ignorarli a mano o segnalare: il filtro per conto non esiste ancora |
KrossBooking
| Sintomo | Causa | Soluzione |
|---|---|---|
| «Non collegato» | la platform non ha credenziali Kross per il tenant e non ce ne sono nel tool | collegare Kross sulla platform (onboarding step 2). Nel tool non c’è nessun form dove inserirle: il ripiego lo può impostare solo il team Mattone, quindi non cercare la voce in Integrazioni |
| HTTP 400 con «not allowed» | filtro IP della chiave partner: l’indirizzo del server non è autorizzato | non è un problema di password; vedi KrossBooking, filtro IP |
| HTTP 401 | credenziali sbagliate (hotel, utente o password) | rifare il test credenziali dalla platform |
| Sincronizzazione Kross «ok» ma zero prenotazioni | periodo senza arrivi, oppure hotel sbagliato nelle credenziali (la terna è di un’altra struttura) | confrontare con Kross a mano: se lì le prenotazioni ci sono, rifare il test credenziali sulla platform e controllare l’hotel |
| Prenotazioni importate ma nessun abbinamento | periodo Kross troppo stretto: i bonifici arrivano settimane dopo il soggiorno | sincronizzare un periodo più ampio dei soggiorni, non solo del mese bancario |
| Molti Unmatched su Booking | descrizioni bancarie accorciate, senza booking.com | mappare la descrizione completa dell’export |
Abbinamenti
| Sintomo | Causa | Soluzione |
|---|---|---|
| Molti Partial dello stesso importo | commissione o rimborso non tracciato nei payout | controllare i payout caricati; spiegare al commercialista se è sistematico |
| Un movimento in uscita non è riconciliato | il tool non riconcilia le uscite, per costruzione | non è un bug |
La prima nota ha Partial su un gruppo che a mano torna | differenza di 2 centesimi o più per arrotondamento multi-riga (la soglia è stretta: 2 centesimi esatti sono già Partial) | correggere l’importo della riga nel tool e riesportare |
La prima nota ha Unmatched su un gruppo che a mano torna al centesimo | non è un problema di importi: una riga sola non abbinata dentro il gruppo lo marca tutto Unmatched | trovare la riga non abbinata e agganciarla nel tool, poi riesportare |
Deploy e server
| Sintomo | Causa | Soluzione |
|---|---|---|
/api/health senza la chiave db | in produzione gira codice vecchio | deploy da main come in Regole codice e deploy |
Backend che esce subito con DbGuard | host del database non canonico | correggere la configurazione: l’host dev’essere quello canonico |
| Tabelle vuote dopo lo switch del database | protezione per riga accesa sulle tabelle, o tabelle create da un altro utente | ripristinare con l’utente dell’app; verificare SchemaGuard nei log |
| Preflight rosso per «HEAD non su origin» | commit locali sul server | portarli su GitHub in un branch, mai reset --hard |
| Container sconosciuto sul server | sul droplet gira solo il tool | fermarlo, rimuoverlo, avvisare il team; non è mai legittimo un database dev in produzione |