Note operative e permessi configurabili
🗒️ Pannello Note: ogni scheda di registrazione corrispettivi giornaliera ha un pannello "post-it"
giallo floating ancorato all'entitĂ corrente. Si apre minimizzato come fascia
centrata sulla topbar (sulla barra blu del modale per i documenti); cliccando
la fascia o la freccia expand_more si espande al centro del viewport
(ridimensionabile via handle in basso a destra). La fascia minimizzata è trascinabile
e la sua posizione viene memorizzata in localStorage per ciascun record (es. ogni
documento ha la sua posizione independente). Per scrivere una nota: testo nel box giallino
+ bottone + Aggiungi (o Cmd/Ctrl + Invio). Modifica/elimina riservate
all'autore o agli amministratori. Cestino note con ripristino disponibile
dal toggle delete_outline nell'header del pannello espanso (solo ADMIN/SUPERADMIN).
Tutti i CRUD (create/update/delete/restore) sono tracciati in audit_log
(consultabile da Amministrazione Sistema → Audit Log).
đź”’ Permessi configurabili: alcune azioni di questa scheda (creazione, modifica, cancellazione, esportazione, stampa) possono essere bloccate per il ruolo del tuo workspace. Quando un bottone è bloccato, appare con icona "lucchetto" e tooltip "Permesso disabilitato dal Super Amministratore". La configurazione si fa in Amministrazione di Sistema » Permessi per Ruolo (solo SUPERADMIN).
Corrispettivi
Registro corrispettivi giornalieri (art. 24 DPR 633/72)
• Pacchetto
CORRISPETTIVI attivo sul workspace (configurabile da SUPERADMIN in /admin/pacchetti)
• Profilo attività compatibile: Farmacia, Ferramenta, Elettronica (vendita al dettaglio art. 24 DPR 633/72)
• Permesso utente abilitato in Modifica Utente → Moduli
I tre livelli si applicano in intersezione. Dettagli completi in Gerarchia Pacchetti+Profilo+Utente.
Il modulo Corrispettivi registra le operazioni giornaliere di vendita al dettaglio che non richiedono emissione di fattura individuale (art. 24 DPR 633/72). Il sistema gestisce:
- Registrazioni giornaliere con numerazione progressiva annuale
- Scorporo automatico IVA da totale lordo per aliquota
- Stati BOZZA (modificabile) → CONFERMATO (immutabile, solo storno)
- Soft-delete solo per BOZZA, mai per CONFERMATO
- Riepilogo periodo con aggregazione per aliquota
- Menu Contabilità → Corrispettivi.
- Cliccare + Nuovo.
- Inserire la data della registrazione e una descrizione opzionale.
- Aggiungere le righe: per ciascuna aliquota IVA e il totale lordo incassato. Il sistema scorpora automaticamente imponibile e imposta.
- Salvare come BOZZA. Il numero progressivo viene assegnato automaticamente.
- Quando verificato, cliccare Conferma (richiede ruolo ADMIN). Dopo la conferma non è più modificabile.
Endpoint: GET /api/corrispettivi/_/riepilogo?dal=YYYY-MM-DD&al=YYYY-MM-DD
Restituisce:
| Campo | Contenuto |
|---|---|
| totali.righe | Numero di registrazioni CONFERMATE nel periodo |
| totali.lordo | Totale incassato (comprensivo di IVA) |
| totali.scorporato | Imponibile IVA |
| totali.imposta | IVA dovuta |
| perAliquota | Dettaglio per aliquota (es. 22%, 10%, 4%, 0% con natura N1..N7) |
Utile per preparare la liquidazione periodica IVA.
- Soft-delete selettivo: solo BOZZA può finire nel cestino. CONFERMATO → obbligo di storno.
- Audit log (
log_modifiche_corrispettivi): traccia modifiche a data, descrizione, totali, stato, note. - Bulk actions (ADMIN): conferma / soft-delete multiplo.
- Guard periodo chiuso: blocca creazione/modifica in periodi IVA chiusi.
- Mascheramento: il log applica audit-mask per valori sensibili (se presenti nelle note).
| Metodo | Path | Descrizione |
|---|---|---|
| GET | /api/corrispettivi | Lista paginata (esclude cancellati) |
| GET | /api/corrispettivi/_/cestino | Cestino |
| GET | /api/corrispettivi/_/riepilogo | Riepilogo per aliquota |
| GET | /api/corrispettivi/:id | Dettaglio + righe |
| GET | /api/corrispettivi/:id/audit-log | Storico modifiche |
| GET | /api/corrispettivi/:id/timeline | Timeline eventi |
| POST | /api/corrispettivi | Crea (BOZZA) |
| PUT | /api/corrispettivi/:id | Modifica (solo BOZZA) |
| POST | /api/corrispettivi/:id/conferma | Conferma [ADMIN] |
| DELETE | /api/corrispettivi/:id | Soft-delete |
| POST | /api/corrispettivi/:id/ripristina | Ripristina [ADMIN] |
| DELETE | /api/corrispettivi/:id/definitivo | Hard-delete [ADMIN] |
| POST | /api/corrispettivi/bulk | Azioni massive [ADMIN] |
| POST | /api/fatturazione/storno-corrispettivo/:id | Storno (refund) [ADMIN] |
Feature #11 del pacchetto FATTURAZIONE v 2.2: consente di rimborsare un corrispettivo precedentemente confermato. Viene creato un nuovo corrispettivo con importo negativo collegato al corrispettivo originale.
Due nuovi campi sulla tabella corrispettivi:
storno_di(INT) — FK al corrispettivo originalemotivazione_storno(TEXT) — descrizione libera obbligatoria
Regole operative
- Solo corrispettivi in stato
CONFERMATOpossono essere stornati (HTTP 409 altrimenti) - Il corrispettivo di storno nasce già in stato
CONFERMATOcon numero progressivo dell'anno corrente - È possibile storno parziale passando
importoRimborsoinferiore al lordo originale; in assenza del parametro viene stornato l'intero importo - Lo scorporo IVA sul corrispettivo di storno è calcolato al 22% (default); aliquote diverse richiedono aggiustamento manuale della riga
- Richiede ruolo ADMIN (requireAdmin middleware)
Endpoint
POST /api/fatturazione/storno-corrispettivo/:id
Body: { motivazione, importoRimborso? }
Risposta: { id, numero, importoStornato } (importo negativo).