Gli addebiti automatici sono regole che, al salvataggio di un documento, aggiungono da sole una riga articolo nel corpo oppure una spesa nel piede, calcolandone l’importo (ed eventualmente la quantità) con una formula o con uno script.
Servono per tutti quegli addebiti che oggi si aggiungono a mano e si dimenticano una volta su tre: contributo trasporto, spese di gestione, contributo ambientale, quota fissa sotto un certo imponibile, percentuale sull’imponibile, addebito legato a una categoria di clienti o a una linea di prodotti.
Si trova in Archivi → Tabelle → Documenti → Addebiti automatici.
La regola non è legata a un tipo di documento in particolare: se non la si limita, vale per tutti e sette i documenti che passano dalla loro maschera (fatture di vendita, DDT di vendita, DDT di acquisto, impegni cliente, ordini fornitore, documenti di magazzino, POS).
1. Come funziona, in due righe
Ogni volta che si salva un documento, Atlantis cerca fra gli addebiti automatici quelli che rispettano tutte le condizioni impostate (validità, soggetto, causale, categoria…). Per ognuno di quelli che passano il filtro:
- calcola l’imponibile sommando le righe del corpo (eventualmente solo quelle degli articoli che interessano);
- applica la formula o lo script per ottenere prezzo e/o quantità;
- cancella dal documento l’eventuale riga o spesa già inserita dalla stessa regola in un salvataggio precedente;
- reinserisce la riga articolo o la spesa con i valori appena calcolati.
Il ricalcolo avviene quindi a ogni salvataggio: modificando il corpo e risalvando, l’addebito si aggiorna da solo.
⚠️ L’addebito scatta solo salvando il documento dalla sua maschera. Le procedure che generano documenti in blocco – fatturazione differita da DDT, generazione ordini, evasioni massive, import – non applicano gli addebiti automatici. Se il documento nasce da una procedura, l’addebito comparirà solo la prima volta che il documento verrà aperto e risalvato a mano.
2. La testata della regola
| Campo | A cosa serve |
|---|---|
| Codice | progressivo assegnato dal programma: si conferma e basta |
| Descrizione | fino a 50 caratteri. È il testo che compare nella richiesta di conferma e nella notifica: scrivilo in modo che l’operatore capisca cosa sta per essere addebitato |
| Attiva | se spento la regola non viene mai considerata. È il modo corretto per sospendere un addebito senza cancellarlo |
| Chiedi conferma esecuzione | prima di applicare l’addebito compare la domanda “Eseguire addebito automatico?” con la descrizione della regola. Rispondendo No l’addebito viene saltato per quel salvataggio |
| Notifica esecuzione | a addebito eseguito compare il messaggio “Eseguito addebito automatico: …”. Utile in avviamento, per far capire agli operatori cosa sta succedendo |
Chiedi conferma e Notifica sono indipendenti: si possono attivare entrambi, uno solo o nessuno.
3. Quando la regola si applica – la scheda Principale
Le condizioni si sommano: perché la regola scatti devono essere vere tutte quelle valorizzate. I campi lasciati vuoti non filtrano nulla.
Validità nel tempo
| Campo | Effetto |
|---|---|
| Data inizio validità | la regola vale dai documenti con data uguale o successiva. Vuota = nessun limite iniziale |
| Data fine validità | la regola vale fino ai documenti con quella data. Vuota = nessun limite finale |
Il confronto è sulla data del documento, non sulla data di oggi: rifatturando o correggendo un documento vecchio si riapplica la regola in vigore allora.
È il meccanismo con cui si gestiscono i cambi di tariffa: non si modifica la regola esistente, le si mette una data di fine e se ne crea una nuova che parte dal giorno dopo. Così i documenti già emessi restano coerenti.
Categoria cliente / Categoria fornitore
Limitano la regola ai soggetti che appartengono a quella categoria in anagrafica.
Attenzione a quale dei due si compila. La categoria cliente viene verificata sull’anagrafica clienti, quella fornitore sull’anagrafica fornitori. Valorizzando la categoria cliente, la regola smette automaticamente di applicarsi ai documenti di acquisto (dove il soggetto è un fornitore e la ricerca non trova nulla), e viceversa. È il modo più rapido per separare gli addebiti attivi da quelli passivi.
Documento con lett. intento
Riguarda solo le fatture immediate e i DDT di vendita, dove esiste il riferimento alla lettera d’intento del cliente:
| Valore | La regola si applica |
|---|---|
| – | sempre, la lettera d’intento è ininfluente |
| Si | solo ai documenti con lettera d’intento indicata |
| No | solo ai documenti senza lettera d’intento |
Impostando Si, la regola si applica soltanto a fatture immediate e DDT di vendita: su tutti gli altri documenti la lettera d’intento non esiste, quindi la condizione non è mai soddisfatta e l’addebito non scatta.
Script attivazione
L’ultima parola. Se indicato, viene eseguito lo script (archivio Script) e la regola parte solo se restituisce vero. Serve per le condizioni che non si possono esprimere con i campi della maschera: un totale minimo, la presenza di una certa destinazione, un dato di testata particolare.
Il pulsante ℹ️ accanto al campo mostra lo scheletro dello script:
// _ditta: codice azienda
// _DOC: BaAnDoc anagrafica documento
function controllo(){
return false;
}
controllo();
Lo script deve restituire vero o falso. Se il codice indicato non esiste in archivio, l’addebito viene saltato con l’errore “Script di attivazione addebito non trovato!”.
4. Cosa viene addebitato – il riquadro Voce di addebito
Qui si sceglie come l’addebito entra nel documento, e le due possibilità si escludono a vicenda:
| Campo | Dove finisce l’addebito |
|---|---|
| Articolo | come riga del corpo, con codice, quantità e prezzo. La riga si comporta come tutte le altre: descrizione, IVA, conto e provvigioni arrivano dall’anagrafica articolo, e l’importo entra nell’imponibile del documento |
| Cod. spesa | come spesa del piede (spese di trasporto, incasso, imballo…), con il solo importo |
Il salvataggio della regola blocca gli errori con due messaggi espliciti:
- “E’ possibile impostare solo un’opzione fra articolo o servizio, non entrambi”
- “E’ necessario impostare almeno uno fra articolo o servizio”
⚠️ Se si creano più regole, dai a ciascuna una voce di addebito diversa – è l’avvertenza scritta anche sulla maschera. Prima di inserire la propria riga, ogni regola cancella dal documento tutte le righe che hanno quel codice articolo (e tutte le spese con quel codice spesa). Due regole che usano lo stesso articolo si sovrascrivono a vicenda, e resta solo quella elaborata per ultima.
Lo stesso vale per l’articolo di addebito digitato a mano dall’operatore: al salvataggio viene rimosso e sostituito da quello calcolato.
5. Su quali articoli si calcola – la scheda Liste articoli
L’imponibile su cui lavorano formule e script è, per impostazione predefinita, la somma di tutte le righe del corpo.
La scheda Liste articoli permette di restringerlo, usando le liste selezionate articoli (vedi la relativa guida). Ogni riga della scheda è una lista, con un flag:
| Flag Escludi articoli di questa lista | Effetto |
|---|---|
| spento | gli articoli della lista entrano nel calcolo dell’imponibile |
| acceso | gli articoli della lista vengono tolti dall’imponibile |
Le liste di inclusione si sommano fra loro; alla fine vengono sottratti gli articoli delle liste di esclusione. Se non si indica alcuna lista, tutti gli articoli del corpo concorrono al calcolo – è quanto ricorda la nota in fondo alla scheda.
Un articolo che compare più volte nella lista (per via delle varianti) viene considerato una volta sola.
L’articolo di addebito è sempre escluso da sé stesso. Le righe che portano il codice articolo della regola non vengono mai sommate nell’imponibile: il calcolo non si autoalimenta, nemmeno risalvando il documento più volte.
Le righe di questa scheda, come quelle delle due successive, si confermano con il pulsante Conferma riga.
6. A chi si applica – la scheda Soggetti
L’elenco dei clienti/fornitori per i quali vale la regola.
- elenco vuoto → la regola vale per tutti i soggetti;
- elenco valorizzato → la regola vale solo per i soggetti indicati.
È il filtro puntuale, alternativo (o aggiuntivo) alla categoria cliente/fornitore della scheda Principale. Per un addebito che riguarda una fascia di clientela conviene usare la categoria; per due o tre clienti nominativi, questa lista.
7. Su quali documenti – la scheda Causali documento
L’elenco delle causali per cui vale la regola.
- elenco vuoto → la regola vale per qualsiasi documento e qualsiasi causale;
- elenco valorizzato → vale solo per le combinazioni indicate.
Ogni riga si compone di:
| Campo | Note |
|---|---|
| Tipo documento | va scelto per primo: la ricerca delle causali propone solo le causali di quel tipo documento |
| Causale doc. | la causale specifica. Lasciandola vuota la regola vale per tutte le causali di quel tipo documento |
Questa è la scheda che decide su quali documenti gira la regola. Non esiste un filtro “tipo documento” nella testata: finché la scheda Causali documento resta vuota, l’addebito viene valutato su tutti i tipi di documento, POS e documenti di magazzino compresi. Se l’addebito riguarda solo le fatture di vendita, va detto qui – con una riga tipo documento = fattura, causale vuota.
8. Come si calcola – il riquadro Modalità calcolo
Ci sono quattro campi, a coppie: uno script e una formula per il prezzo, uno script e una formula per la quantità. Di ogni coppia si compila al massimo uno dei due, e almeno uno dei quattro campi dev’essere valorizzato.
I messaggi bloccanti al salvataggio sono:
- “E’ possibile impostare solo un’opzione fra script o formula per i prezzi, non entrambi”
- “E’ possibile impostare solo un’opzione fra script o formula per le quantità, non entrambi”
- “E’ necessario impostare almeno uno fra script o formula per quantità e prezzo”
Le formule
Espressione aritmetica con due funzioni disponibili (le stesse riepilogate dal pulsante ℹ️):
| Funzione | Valore |
|---|---|
IMPON() |
imponibile delle righe del corpo, al netto delle spese, calcolato secondo le liste articoli della regola |
TOT_DOC() |
totale del documento |
Esempi:
IMPON() * 0.05 contributo del 5% sull'imponibile
IMPON() * 0.02 + 3 2% più tre euro fissi
15 quota fissa
Il risultato viene arrotondato ai decimali prezzo impostati nei dati fissi.
Gli script
Quando la formula non basta si indica il codice di uno script (archivio Script). Lo script riceve queste variabili:
| Variabile | Contenuto |
|---|---|
_ditta |
codice azienda |
_IMPON |
l’imponibile calcolato come sopra |
_TOT_DOC |
totale documento |
_CORPO |
l’elenco delle righe del corpo, riga per riga |
_DOC |
il documento aperto, per leggere qualsiasi dato di testata |
Lo scheletro proposto dal pulsante ℹ️:
function process(){
return _IMPON * 0.05;
}
process();
Lo script deve restituire un numero. Se il codice script non esiste, l’addebito viene saltato con l’errore “Script addebito documento non trovato: …”.
Con lo script si risolvono i casi che la formula non copre: scaglioni (“sotto 500 euro addebito 15, sopra niente”), addebiti a peso o a colli letti dalle righe del corpo, minimi e massimi.
Prezzo e quantità: cosa succede se si lascia vuoto
| Situazione | Risultato sulla riga |
|---|---|
| prezzo calcolato (formula o script) | il prezzo della riga è quello calcolato |
| prezzo non impostato | il prezzo viene preso dal listino, come per un articolo digitato a mano. È il modo di addebitare un articolo a prezzo di listino facendone calcolare solo la quantità |
| quantità calcolata | la riga esce con quella quantità |
| quantità non impostata | quantità 1 |
⚠️ Per la quantità usa lo script, non la formula. Nella versione attuale il campo Formula calcolo qta viene valutato usando l’espressione scritta in Formula calcolo prezzo: la quantità risulta quindi sbagliata, e se la formula prezzo è vuota l’addebito si interrompe in errore. Fino a correzione, per calcolare la quantità va usato Script di calcolo qta.
La quantità vale solo per gli articoli. Una regola che addebita una spesa usa esclusivamente il valore calcolato come prezzo: se questo risulta zero, la spesa non viene inserita (e quella eventualmente presente da un salvataggio precedente viene rimossa).
9. Cosa succede esattamente al salvataggio del documento
Vale la pena conoscere il dettaglio, perché spiega quasi tutte le domande che arrivano dopo l’avviamento.
- Se il corpo del documento è vuoto, non succede nulla. Nessuna regola viene applicata: gli addebiti automatici lavorano solo su documenti che hanno almeno una riga.
- Viene calcolato l’imponibile: somma degli importi di riga (già scontati), escluse le righe con l’articolo della regola e, se ci sono liste, solo le righe degli articoli ammessi.
- Se il documento è in valuta, imponibile, totale e importo dell’addebito lavorano in valuta; altrimenti in euro.
- Vengono cancellate le righe (o le spese) con il codice della regola già presenti nel documento.
- Se prezzo e quantità risultano entrambi zero, la riga non viene reinserita: è il modo corretto per far sparire un addebito quando la condizione decade (basta che la formula restituisca 0).
- Sulla riga articolo inserita vengono ricalcolati descrizione, IVA e importi come se fosse stata digitata; per impegni cliente e ordini fornitore viene riportata anche la data di consegna della testata.
- Se qualcosa va storto (script inesistente, formula non valida, errore di calcolo) compare un messaggio “Errore. …”, quell’addebito viene saltato e il documento viene comunque salvato. Il documento non si blocca: va controllato il messaggio.
⚠️ Con più regole attive sullo stesso documento, l’ordine di applicazione non è garantito. Una regola elaborata dopo un’altra vede nell’imponibile anche la riga inserita dalla prima (se quell’articolo rientra nelle sue liste). Se hai due addebiti che si calcolano in percentuale, mettili in liste articoli che si escludano a vicenda, o escludi esplicitamente gli articoli di addebito dalle liste dell’altra regola. Altrimenti il risultato dipende dall’ordine, e cambia senza preavviso.
10. Tre esempi
Contributo trasporto del 3% su tutte le fatture di vendita, minimo 5 euro
- Voce di addebito: Cod. spesa = la spesa “Contributo trasporto”.
- Causali documento: una riga con tipo documento = fattura di vendita, causale vuota.
- Modalità calcolo: Script di calcolo prezzo, con uno script che restituisce
Math.max(_IMPON * 0.03, 5).
Quota fissa di gestione ai clienti della categoria “PICCOLI”, solo dal 2026
- Categoria cliente = PICCOLI, Data inizio validità = 01/01/2026.
- Voce di addebito: Articolo = il codice di servizio “Spese gestione ordine”.
- Modalità calcolo: Formula calcolo prezzo =
12. - Causali documento: le causali di fattura e DDT di vendita.
Contributo ambientale sui soli elettrodomestici, a quantità
- Voce di addebito: Articolo = il codice del contributo.
- Liste articoli: la lista “Elettrodomestici”, flag Escludi spento.
- Modalità calcolo: Script di calcolo qta, che conta i pezzi delle righe di
_CORPOappartenenti alla lista; prezzo lasciato vuoto, così viene preso dal listino del contributo.
11. Promemoria
- Prima di attivare una regola in produzione, provala su un documento di prova e tieni acceso Notifica esecuzione: è l’unico modo per vedere subito se scatta quando deve.
- Una regola senza scheda Causali documento vale su tutti i documenti, POS e magazzino compresi. Nella maggior parte dei casi non è quello che si vuole.
- Non modificare una regola già usata: chiudila con la data di fine validità e creane una nuova. I documenti vecchi, se riaperti e risalvati, verrebbero ricalcolati con le condizioni nuove.
- Una voce di addebito per regola. Riusare lo stesso articolo o la stessa spesa in due regole significa che una cancella il lavoro dell’altra.
- La riga di addebito non si corregge a mano: al salvataggio successivo viene rifatta. Se serve un importo diverso, va cambiata la regola o disattivata per quel documento rispondendo No alla richiesta di conferma.
- Formula restituisce 0 = addebito rimosso. È una funzionalità, non un errore: usala per le condizioni che decadono.
- Per la quantità usa lo script, non la formula (vedi § 8).
- Gli addebiti non si applicano ai documenti generati dalle procedure massive: se il ciclo aziendale è “DDT poi fatturazione differita”, l’addebito va messo sul DDT, non sulla fattura.