Newsgroup: it.discussioni.commercialisti
Titolo: Bilancio e indicazione tempi medi di pagamento

Come fate ad indicare il tempo medio di pagamento dei fornitori per le 
società ex art. 7-Ter DLgs 231/2002?
 
Se si omette in cosa si incorre?
 
Grazie.

Luigis ha detto questo venerdì :

Qualche bilancio sociale l'ho letto (...circa....) ma non ricordo di 
questa cosa, boh
 
-- 
Disclaimer
Non fidatevi delle mie risposte perché carlo dixit : "mi pare, che sei 
si' un
professionista tecnicamente preparato ma sicuramente ancora acerbo e
perlomento dal lato professionale".
 
 


 
...
 

 penalizzazioni
 
Io non ho trovato la norma che sanziona queste omissioni e i documenti 
che hai citato non mi sembra che ne fanno menzione (riesco a leggere 
solo il primo ed il terzo).
 
Grazie.

Sembra che Luigis abbia detto :
 
La premessa è che parliamo di bilancio sociale, ok? l'obbligo 
introdotto dal 7-ter riguarda solo i bilanci sociali, perché così 
stabilisce la norma "A decorrere dall'esercizio 2019,  nel  bilancio  
sociale  le societa' danno evidenza dei tempi medi di pagamento delle 
transazioni effettuate nell'anno", quindi parliamo di società che 
rientrano nel Terzo settore.
I riferimenti sono il il Dlgs 117/2017 e le linee guida del bilancio 
sociale: la mancata evidenza di questo aspetto non è specificatamente 
sanzionata.  Certo, resta l'obbligo di monitoraggio dell'organo di 
controllo ex art. 30 comma 7, il quale dovrebbe rilevare che manca 
questa informazione.


Luigis scriveva il 14/07/2023 :

Da non scordare che sono da includere i debiti pure relative le fatture 
da ricevere.
Non dimenticarlo, eh.


 commerciale che va espressa in giorni non in euro.
 
Hai ragione, sorry, riformulo.
 
Per calcolare il tempo medio di pagamento dei fornitori, possiamo includere 
la necessita' di conoscere la durata media in giorni tra la data di 
emissione della fattura e la data di pagamento effettivo, segue una 
versione modificata della procedura:
 
1. Calcolare il totale degli importi pagati ai fornitori in un determinato 
periodo
2. Determinare la durata media in giorni tra la data di emissione della 
fattura e la data di pagamento effettivo per ciascuna fattura pagata nel 
periodo considerato
3. Calcolare la somma di tutte le durate medie in giorni ottenute al punto 
2
4. Dividere la somma delle durate medie per il numero di fatture pagate nel 
periodo considerato.
5. Moltiplicare il risultato ottenuto per il numero di giorni del periodo 
considerato
 
Riprendendo l'esempio, se una societa' ha pagato un totale di 100.000 euro 
ai fornitori in un trimestre e ha pagato 50 fatture in quel periodo, e la 
durata media tra la data di emissione e la data di pagamento e' di 30 
giorni, il tempo medio di pagamento sarà calcolato come segue:
 
Totale degli importi pagati ai fornitori = 100.000 euro
Numero di fatture pagate = 50
Durata media tra la data di emissione e la data di pagamento = 30 giorni
Numero di giorni del periodo considerato = 90 giorni (un trimestre)
 
Tempo medio di pagamento = (30 * 50) / 90 = 16,67 giorni
 
... ossia ...
 
1. Calcolare il totale degli importi pagati ai fornitori in un determinato 
periodo (T)
2. Determinare la durata media in giorni tra la data di emissione della 
fattura (D_emissione) e la data di pagamento effettivo (D_pagamento) per 
ciascuna fattura pagata nel periodo considerato
3. Calcolare la somma di tutte le durate medie in giorni ottenute al punto 
2 (S)
4. Dividere la somma delle durate medie per il numero di fatture pagate nel 
periodo considerato (N)
5. Moltiplicare il risultato ottenuto per il numero di giorni del periodo 
considerato (T)
 
L'equazione che rappresenta questa procedura e' la seguente:
 
Tempo Medio di Pagamento = (S / N) * T
 
Dove:
- Tempo Medio di Pagamento e' il tempo medio di pagamento dei fornitori
- S e' la somma delle durate medie in giorni tra la data di emissione e la 
data di pagamento per ciascuna fattura
- N e' il numero di fatture pagate nel periodo considerato
- T e' il numero di giorni del periodo considerato
 
Utilizzando questa procedura e l'equazione corrispondente e' possibile 
calcolare il tempo medio di pagamento dei fornitori conoscendo il totale 
degli importi pagati, il numero di fatture pagate e la durata media tra la 
data di emissione e la data di pagamento.
 
 
Se il tuo software non li calcola di per se', se il software in uso te lo 
permette, potresti esportare i dati che ti servono cio' che ti serve in 
file .csv ovveor .xls .xlsx e quindi elaborarli.
 
 
Ad e.g.con utilizzo di Pytnon:
 
A - gli algoritmi per calcolare il tempo medio di pagamento dei fornitori a 
partire da file .csv o file .xls. 
 
Nell'esempio a seguiri usando Il modulo `xlrd` che e' una libreria Python 
di terze parti che permette di leggere file .xls (formato di file di 
Microsoft Excel precedente al 2007) sebbene sia stato ampiamente utilizzato 
in passato non e' piu' attivamente mantenuto o supportato.
 
Algoritmo per file .csv:
 
1. Importa il modulo per Python, vedi piu' sotto, per leggere il file .csv
2. Inizializza le variabili `totale_importi`, `somma_durata`, 
'numero_fatture` e `numero_giorni` a 0
3. Apri il file .csv e leggi le righe
4. Per ogni riga tranne l'intestazione:
   - Aggiungi l'importo della riga alla variabile `totale_importi`
   - Calcola la durata in giorni tra la data di emissione e la data di 
pagamento
   - Aggiungi la durata alla variabile `somma_durata`
   - Incrementa il contatore `numero_fatture` di 1
5. Chiudi il file .csv
6. Calcola il tempo medio di pagamento:
   - Tempo_medio = (somma_durata / numero_fatture) * numero_giorni
7. Restituisci il tempo medio di pagamento
 
Algoritmo per file .xls:
 
1. Importa il modulo `xlrd` per leggere il file .xls
2. Inizializza le variabili `totale_importi`, `somma_durata`, 
`numero_fatture` e `numero_giorni` a 0
3. Apri il file .xls e leggi il foglio di lavoro
4. Per ogni riga tranne l'intestazione:
   - Aggiungi l'importo della riga alla variabile `totale_importi`
   - Calcola la durata in giorni tra la data di emissione e la data di 
pagamento
   - Aggiungi la durata alla variabile `somma_durata`
   - Incrementa il contatore `numero_fatture` di 1
5. Chiudi il file .xls
6. Calcola il tempo medio di pagamento:
   - Tempo_medio = (somma_durata / numero_fatture) * numero_giorni
7. Restituisci il tempo medio di pagamento
 
Se lo permette potresti utilizzare questi algoritmi nel tuo software per 
calcolare il tempo medio di pagamento dei fornitori a partire da file .csv 
o file .xls. assicurandoti di adattare l'algoritmo alle specifiche del tuo 
software e di gestire eventuali eccezioni o errori durante la lettura del 
file.
 
Come d'altro canto, invece, per leggere file .xls o file .xlsx (formato di 
file di Microsoft Excel a partire dal 2007), potresti  utilizzare il modulo 
`openpyxl`, auesto modulo e' molto popolare e offre funzionalita' complete 
per leggere e scrivere file Excel.
 
Puoi installare il modulo `openpyxl` utilizzando il gestore dei pacchetti 
di Python, pip, eseguendo il seguente comando:
 
pip install openpyxl
 
Una volta installato il modulo `openpyxl`, puoi importarlo nel tuo codice 
Python utilizzando l'istruzione di importazione:
 
python
import openpyxl
 
Successivamente, puoi utilizzare le funzioni e le classi fornite dal modulo 
`openpyxl` per leggere e manipolare file Excel nel tuo software.
 
Altrimenti per leggere file .xls e .xlsx utilizzando Python, puoi 
utilizzare il modulo `pandas` insieme al modulo `xlrd` per file .xls o al 
modulo `openpyxl` per file .xlsx. 
 
Per importare e utilizzare questi moduli:
 
1. Installa i moduli necessari eseguendo i seguenti comandi nel terminale:
 
pip install pandas
pip install xlrd
pip install openpyxl
 
2. Importa i moduli nel tuo script Python:
 
python
import pandas as pd
import xlrd
import openpyxl
 
3. Utilizza il modulo `pandas` per leggere il file .xls o .xlsx:
 
Per file .xls:
 
python
df = pd.read_excel('path/to/file.xls', engine='xlrd')
Per file .xlsx:
 
python
df = pd.read_excel('path/to/file.xlsx', engine='openpyxl')
 
Assicurati di sostituire `'path/to/file.xls'` o `'path/to/file.xlsx'` con 
il percorso corretto del tuo file Excel.
 
4. Ora puoi utilizzare il dataframe `df` per eseguire operazioni sui dati, 
come calcolare il tempo medio di pagamento dei fornitori.
 
Un esempio di come calcolare il tempo medio di pagamento utilizzando il 
modulo `pandas`:
 
python
import pandas as pd
 
df = pd.read_excel('path/to/file.xlsx', engine='openpyxl')
 
# Calcola la durata in giorni tra la data di emissione e la data di 
pagamento
df['Durata'] = (df['DataPagamento'] - df['DataEmissione']).dt.days
 
# Calcola il tempo medio di pagamento
tempo_medio = df['Durata'].mean()
 
Assicurati di adattare il codice alle tue specifiche esigenze e di 
utilizzare i nomi corretti delle colonne nel tuo file Excel.
 
 
Oltre a Python esistono molti altri linguaggi di programmazione che puoi 
utilizzare per leggere file .xls e .xlsx., ad esempio alcuni esempi:
 
1. Java: puoi utilizzare le librerie Apache POI o JExcelAPI per leggere 
file .xls e .xlsx in Java
 
2. C#: puoi utilizzare le librerie NPOI o EPPlus per leggere file .xls e 
.xlsx in C#
 
3. JavaScript: puoi utilizzare le librerie SheetJS o ExcelJS per leggere 
file .xls e .xlsx in JavaScript
 
4. PHP: puoi utilizzare le librerie PhpSpreadsheet o PHPExcel per leggere 
file .xls e .xlsx in PHP
 
5. R: puoi utilizzare il pacchetto readxl per leggere file .xls e .xlsx in 
R
 
6. Ruby: puoi utilizzare il gem Spreadsheet o il gem Roo per leggere file 
.xls e .xlsx in Ruby
 
Charo che questi sono solo alcuni esempi dei linguaggi di programmazione 
piu' comuni ma esistono molte altre opzioni disponibili, la scelta del 
linguaggio dipendera' dalla tua familiarita' ovvero del consulente che ti 
segue con il linguaggio stesso, dalle esigenze del progetto e dalle 
librerie disponibili per la lettura dei file Excel nel linguaggio scelto.
 
 
B) Se invece desideri utilizzare Excel 2013 o versioni successive per 
calcolare il tempo medio di pagamento dei fornitori, se&o, puoi seguire 
questi passaggi:
 
1. Apri il file Excel contenente i dati dei pagamenti dei fornitori
 
2. Assicurati che i dati siano organizzati in una tabella, con le colonne 
corrispondenti al totale degli importi, alla data di emissione della 
fattura e alla data di pagamento effettiva
 
3. Aggiungi una colonna 'Durata' per calcolare la durata in giorni tra la 
data di emissione e la data di pagamento per ciascuna fattura, puoi 
utilizzare la formula `=DATEDIF(DataEmissione, DataPagamento, "d")` per 
calcolare la differenza in giorni tra le due date, assicurati di sostituire 
'DataEmissione' e 'DataPagamento' con i riferimenti corretti alle celle 
contenenti le date
 
4. Calcola la somma dei totali degli importi pagati ai fornitori 
utilizzando la formula `=SUM(TotaleImporti)`, dove "TotaleImporti" e' il 
riferimento alla colonna contenente gli importi
 
5. Calcola la somma delle durate utilizzando la formula `=SUM(Durata)`, 
dove 'Durata' e' il riferimento alla colonna contenente le durate
 
6. Calcola il numero di fatture pagate nel periodo considerato conteggiando 
il numero di righe nella tabella
 
7. Calcola il numero di giorni del periodo considerato
 
8. Calcola il tempo medio di pagamento utilizzando la formula 
`=(SommaDurate / NumeroFatture) * NumeroGiorni`, dove 'SommaDurate' e' il 
risultato della somma delle durate, 'NumeroFatture' e' il numero di fatture 
pagate, e 'NumeroGiorni' e' il numero di giorni del periodo considerato.
 
Assicurati di adattare le formule alle tue specifiche esigenze e di 
utilizzare i riferimenti corretti per le celle contenenti i dati.
 
 
C) Se invece il tuo software, di contabilita' o che sia, che stai 
utilizzando ha la possibilita' di fare una chiamata ad un modulo esterno 
potresti considerare l'utilizzo di un modulo esterno o di una libreria 
specializzata per calcolare il tempo medio di pagamento dei fornitori. 
 
A seguire alcuni suggerimenti su come procedere:
 
1. Ricerca di una libreria o un modulo esterno: cerca una libreria o un 
modulo esterno che possa essere integrato nel tuo software per calcolare il 
tempo medio di pagamento dei fornitori. Puoi cercare su siti come GitHub, 
PyPI (Python Package Index) o su altri siti di risorse per lo sviluppo di 
software per trovare una libreria adatta alle tue esigenze. Assicurati di 
scegliere una libreria compatibile con il linguaggio di programmazione 
utilizzato dal tuo software.
 
2. Integrazione del modulo esterno: una volta trovato un modulo esterno 
adatto segui le istruzioni fornite dalla documentazione del modulo per 
integrarlo nel tuo software, questo potrebbe implicare l'importazione del 
modulo, la configurazione delle impostazioni e l'utilizzo delle funzioni o 
delle API fornite dal modulo per calcolare il tempo medio di pagamento dei 
fornitori.
 
3. Passaggio dei dati al modulo esterno: assicurati di passare i dati 
necessari al modulo esterno per calcolare il tempo medio di pagamento dei 
fornitori, questi dati potrebbero includere gli importi pagati, le date di 
emissione e di pagamento delle fatture, e altre informazioni pertinenti,  
verifica che il modulo esterno sia in grado di elaborare questi dati e di 
restituire il risultato desiderato.
 
4. Gestione degli errori e dei risultati: assicurati di gestire eventuali 
errori durante l'interazione con il modulo esterno, includi controlli di 
validazione dei dati e gestisci eventuali eccezioni o errori che potrebbero 
verificarsi durante il calcolo del tempo medio di pagamento dei fornitori e 
assicurati anche di gestire correttamente i risultati restituiti dal modulo 
esterno nel tuo software.
 
5. Test e verifica: prima utilizzare il software con l'integrazione del 
modulo esterno effettua test approfonditi per verificare che il calcolo del 
tempo medio di pagamento dei fornitori funzioni correttamente, verifica che 
i risultati siano accurati e confrontali con i calcoli manuali per 
confermare la correttezza del modulo esterno.
 
Ricorda che la scelta e l'integrazione di un modulo esterno dipendono dalle 
specifiche del tuo software e dalle tue esigenze aziendali, assicurati 
inoltre di valutare attentamente le opzioni disponibili e di scegliere un 
modulo esterno affidabile e adatto alle tue esigenze.
 
Nel frattempo potresti pure includere al progetto altro ancora che per 
altre finalita', per automatizzare ancor piu' il tuo lavoro etc., se mi 
sorgono altre idee provero' a riferire.
 
Per altro ti hanno gia' risposto.

 società ex art. 7-Ter DLgs 231/2002? 
 
Se ho inteso quello che chiedi, in base alle informazioni a disposizione puoi ottenere valori più o meno precisi.
 
Comunque una formula generale potrebbe essere:
 
Debiti verso fornitori * 365 / Costi per acquisti di materie+servizi+beni di terzi in godimento
 
Volendo calcolare su un valore medio dei debiti nell'anno potresti:
 
(Debiti verso fornitori inizio anno + Debiti verso fornitori fine anno) / 2 * 365 / Costi per acquisti di materie+servizi+beni di terzi in godimento
 
I debiti andrebbero presi al netto dell'iva.
 
Se vuoi un conteggio in base all'anno commerciale invece che moltiplicare per 365 moltiplichi per 360.
 
ciao
 

 Terzo settore.
 
IMHO la norma probabilmente è scritta male ma a leggere il preambolo 
questo obbligo non può essere limitato alle sole società del terzo 
settore, il decreto legislativo è emesso in "Attuazione della direttiva 
2000/35/CE relativa alla lotta contro i ritardi di pagamento nelle 
transazioni commerciali." che non è certo limitata al solo terzo settore.
 
Poiché sembra che questo nuovo obbligo non è specificamente sanzionato 
sarei più dell'opinione di ometterlo anche perché si andrebbero a citare 
dati "sensibili" dell'azienda.
 
Grazie.

 
Il punto è ... "una società commerciale è in generale obbligata a predisporre il bilancio sociale"?
Se la risposta è no allora questa informazioni non riguarda la società commerciale perché la norma è chiara nell'indicare che tale informazione va data nel bilancio sociale.


Ora non vorrei iniziare un 3d infinito ma a fronte di questa ipotesi di partenza "Durata media tra la data di emissione e la data di pagamento = 30 giorni", che già dovrebbe indicare il tempo medio di pagamento per quelle 50 fatture, arrivi ad un tempo medio di 17 giorni.
Se lo stesso numero di fatture con lo stesso tempo medio tra data emissione e data pagamento fosse riferito ad un anno diresti, quindi, che il tempo medio di pagamento è di 4 giorni?
Quando hai appena detto che quei fornitori mediamente sono stati pagati 30 giorni dopo la data di emissione delle fatture?
A mio parere c'è qualcosa che non torna nel metodo proposto.
 

Sembra che casanmaner abbia detto :
 
Immagino che sarà lo stesso indicatore che si chiede agli enti locali:
 
Giorni di ritardo medio medio nei pagamenti
           uguale
Totale degli importi delle singole fatture pagate nell'anno 
moltiplicato per i giorni di ritardo rispetto alla scadenza
          diviso
Totale degli importi pagati nell'anno


 Grazie.


 non torna nel metodo proposto. 
 
Premesso che trattasi di un banale esempio che ben potrebbe l'analista  
ancor piu' elaborarlo, rielaborarlo ... 
 
Premesso quanto sopra, brevemmente, relativo l'esempio e' da precisare che 
la durata media tra la data di emissione e la data di pagamento di 30 
giorni e il periodo considerato di 90 giorni sono due fattori separati e 
non necessariamente correlati tra loro.
 
La durata media tra la data di emissione e la data di pagamento si 
riferisce al tempo medio che trascorre tra l'emissione di una fattura e il 
suo pagamento effettivo, questo valore puo' essere calcolato prendendo in 
considerazione un determinato numero di fatture e il tempo trascorso tra la 
loro emissione e il pagamento.
 
D'altra parte, il periodo considerato di 90 giorni puo' essere un 
intervallo di tempo scelto per analizzare i dati e ottenere un risultato, 
come ad esempio il tempo medio di pagamento, questo periodo di tempo puo' 
essere selezionato a discrezione dell'analista o dell'azienda per valutare 
le performance di pagamento nel corso di un trimestre.
 
Quindi questi due fattori sono slegati tra di loro e vanno considerati 
separatamente, sperando che questa ulteriore spiegazione possa chiarire la 
questione relativo l'esempio.
 
D'altro canto davo per scontato che un professionsista ad e.g. analista, 
come pure un commercialista, nel caso dell'esempio avrebbe potuto dedurre 
che la durata media tra la data di emissione e la data di pagamento di 30 
giorni e il periodo considerato di 90 giorni sono due fattori slegati tra 
di loro, tralasciando in questo contesto altre eccezioni ma dipendendi 
dalle circostanze di cui sotto.
 
Infatti e' importante notare che il calcolo del tempo medio di pagamento 
dipende dai dati specifici e dalle circostanze di ogni azienda, nel mio 
esempio ho ipotizzato una durata media di 30 giorni tra la data di 
emissione e la data di pagamento ma potrebbe essere diversa per ogni 
azienda quindi e' importante adattare il calcolo ocme pure alle condizioni 
specifiche etc.
 
 
 
 
 
 
 

Il giorno lunedì 17 luglio 2023 alle 17:25:02 UTC+2 carlo ha scritto:
 
Perdona ma mi sembra che tu ci abbia girato attorno.
Ripropongo la questione in modo semplice.
In un anno una società effettua 50 acquisti documentati da 50 fatture.
Tra la data della fattura (ipotizzando che corrisponda alla data di acquisto) e la data di pagamento il tempo trascorso per ognuna delle 50 fatture è sempre di 30 giorni.
Alla domanda "per questa società qual è il tempo medio di pagamento dei suoi fornitori" tu che risposta daresti?
4 giorni o 30 giorni?
Risposta secca :-)
Io rispondo 30 giorni.
 
 

 Totale degli importi pagati nell'anno
 
Ok una ponderazione in base all'importo delle fatture.
Anche se, forse, il riferimento al "ritardo" parte dal presupposto che ci sia un termine entro il quale non vi sia un ritardo di pagamento.
Es. se per contratto è previsto che il pagamento avvenga entro 60gg dalla fattura il ritardo si avrebbe se il pagamento avvenisse dal 61° giorno.
Ma non seguo enti locali e non ho idea di quale sia il concetto di "ritardo" in tal caso.
 
Diciamo che, per rimanere al tempo medio di pagamento, avendo una fattura da 100.000 pagata a 60 gg e una fattura di 10.000 pagata a 30 gg, applicando questo modo di calcolo si direbbe che ho pagato mediamente i fornitori (100.000*60 + 10.000*30)/110.000 = 57 giorni
 

 Io rispondo 30 giorni.
 
Mi scuso profondamente per aver cercato di fornire una spiegazione completa 
e comprensibile, come ho osato! 
 
Quindi, per rispondere alla tua domanda, di la' dell'esempio e tenuto conto 
della tua formulazione in tal caso il tempo medio di pagamento dei 
fornitori e' di 30 giorni. 
 
Spero che questa risposta semplice non abbia disturbato la tua preferenza 
per le risposte complicate e intrecciate :) 
 
Di la' di quanto sopra, restando con forma satirica, ovverosia tenuto conto 
della risaputa tua approfondica conoscenza in VBA sarebbe invece 
interessante, correggi ove eventualmente errato, che la tua formulazione 
sia posta con il seguente codice:
 
vba
Sub CalcolaTempoMedioPagamento()
    Dim numFatture As Integer
    Dim tempoTotale As Integer
    Dim tempoMedio As Double
 
    numFatture = 50
    tempoTotale = numFatture * 30 ' Assume che ogni fattura sia pagata dopo 
30 giorni
 
    tempoMedio = tempoTotale / numFatture
 
    MsgBox "Il tempo medio di pagamento dei fornitori per questa società è 
di " & tempoMedio & " giorni."
End Sub
 
In tal caso questo codice calcola il tempo medio di pagamento dei fornitori 
assumendo che ogni fattura venga pagata dopo 30 giorni dalla data di 
acquisto oltre, nel caso specifico, con 50 fatture, il tempo totale sarebbe 
di 1500 giorni (50 fatture x 30 giorni), quindi il tempo medio di pagamento 
dei fornitori sarebbe quindi di 30 giorni.
 
... ovvero, semplifianfo per altri, ad esempio in basic:
 
numFatture = 50
tempoTotale = numFatture * 30 ' Assume che ogni fattura sia pagata dopo 30 
giorni
 
tempoMedio = tempoTotale / numFatture
 
PRINT "Il tempo medio di pagamento dei fornitori per questa società è di "; 
tempoMedio; " giorni."
 
:-)
 
ps: per quanto in oggetto tra l'altro mi chiedevo se a suo tempo avevi gia' 
sviluppato un prodotto ad hoc (?) 

 mediamente i fornitori (100.000*60 + 10.000*30)/110.000 = 57 giorni 
 
Ovvero: indicatore di ritardo annuale dei pagamenti = (Totale degli importi 
delle singole fatture pagate nell'anno X giorni di ritardo rispetto alla 
scadenza) / Totale degli importi pagati nell'anno
 
Ok, grazie e allegra!
 
 

 fornitori e' di 30 giorni. 
 
Quindi in base al tuo ragionamento precedente (e al conseguente algoritmo) come arriveresti a 30 giorni di pagamento medio?
I parametri di riferimento sono i seguenti:
Tempo di riferimento un anno, per semplificare, 360 gg commerciali.
Numero fatture nell'anno 50
Tutte le fatture sono state pagate a 30 gg e quindi il tempo medio è di 30 giorni (come hai concordato).
Il tuo algoritmo quindi diventerebbe (50*30)/360= 4 giorni (e rotti).
Evidentemente c'è qualcosa che non va se poi dall'algoritmo non esce fuori che il tempo medio di pagamento è di 30 giorni.
 
Sulla procedura VBA (ma varrebbe per qualsiasi procedura informatica) il problema sta qui:
tempoTotale = numFatture * 30 ' Assume che ogni fattura sia pagata dopo 30 giorni
Fai un'assunzione che non è detto che sia vera e che riguarda proprio il valore da calcolare.
Se ad es. avessi 25 fatture pagate a 30gg e 25 fatture pagate a 90gg come faresti ad assumere che le 50 fatture sono pagate mediamente a 30 giorni?
Visto che almeno 25 sono tutte pagate a 90gg?
L'assunzione sarebbe errata.
Vorrei farti notare è proprio quel valore medio che devi cercare. E quindi non lo puoi assumere.
Al più il tempoTotale dovrebbe essere dato, se vuoi prendere a riferimento il numero di fatture per determinare un tempo medio di pagamento, dalla sommatoria dei giorni di pagamento di tutte le fatture diviso il numero fatture.
Per rimanere all'es. 25 fatture pagate a 30 gg e 25 fatture pagate a 90 gg, dovresti quindi avere tempoTotale = 25*30 + 25*90 = 3.000
tempoTotale / NumeroFatture diventerebbe quindi  3000 / 50 = 60 gg
 
 

 pagamenti-il-calcolo-dell-indicatore-di-ritardo-annuale-dei-pagamenti> 
 
Ho dato un'occhiata a questo:
https://www.fondazioneifel.it/ifelinforma-news/item/download/3418_fc3925e3eff765f88914dc7c94c61b67
 
Ma mi sembra che l'indice sia particolare e non rispecchi il tempo medio di pagamento dei fornitori in generale ma che si tratti proprio di tempi di ritardo di pagamento rispetto alla data di scadenza del debito (si fa riferimento a scadute nell'anno).
Anche l'altro indicatore di tempestività dei pagamenti non mi sembra rispetti i tempi medi di pagamento. Si fa comunque riferimento al tempo intercorso tra la data di scadenza della fattura (o di richiesta di pagamento) e il pagamento della fattura. Con la particolarità che si prendono tutte le fatture pagate in un determinato periodo.
 
Il tempo medio di pagamento, invece, dovrebbe essere calcolato in base ai giorni complessivi tra la nascita del credito e il suo pagamento.
 

Il giorno lunedì 17 luglio 2023 alle 16:19:40 UTC+2 StefanoTS61® ha scritto:

Ho fatto un po' di ricerca per curiosità.
Tra i tanti ho trovato questo articolo:
https://www.studiomarchetti.net/it/news/2019-04-15-transazioni-commerciali-imprese-tempi-medi-pagamento-bilancio-sociale/
 
 
Viene riportato che:
---
Il legislatore specifica che, nell'espletare questo nuovo adempimento, le società dovranno:
- ponderare il tempo di pagamento di ciascuna transazione per il suo valore;
- distinguere le transazioni verso le grandi imprese, le piccole e medie imprese e le micro imprese;
- riportare il numero e il valore complessivo delle transazioni i cui tempi di pagamento abbiano ecceduto i termini massimi indicati all’art. 4, D.Lgs. n. 231/2002;
---
 
Quindi si tratta di un'analisi puntuale di tutte le transazioni avvenute in un dato esercizio verso soggetti commerciali.
Roba non da poco.
Anche la distinzione verso grandi imprese, piccole/medie e micro richiede una serie di informazioni rispetto ai propri fornitori e anche un aggiornamento di tali informazioni (un fornitore potrebbe passare da una categoria all'altra nel tempo).
 

casanmaner ha detto questo martedì :

No affatto. Per curiosità ho spulciato un paio di BS 2022 di grossi 
enti ma di questo indicatore non c'è traccia


 enti ma di questo indicatore non c'è traccia
 
https://www.provincia.cremona.it/interni/?id=5841&view=Pagina
 
 
... un link, ma ho fretta, alla prox

 wrote in
news:a61bd819-a493-4d28...@googlegroups.com
: 
 
MEGA CUT
 
La presente provando a risponderti, ad esporre e a rispondere al 3D, 
provando pure a scrivere delle funzioni matematiche con la speranza che non 
abbia problemi perche' altrimenti mi tocca convertire le funzioni in modo 
che possano essere integralmente trasmesse, sebbene usenet dovrebbe bene o 
male essere tecnicamente rimasta come fu e quindi non dovrei avere 
problemi, vediamo.
 
Segue la seguente PREMESSA pure relative le funzioni matematiche che 
seguiranno avendole sviluppate tenendo conto di cio' che di volta in volta 
e' stato esposto, discusso, confrontato, riscontrato ed eccepito in sede di 
3D oltre avendo tenuto conto del ocntesto ossia della prima domanda del OP 
e quindi pure relativo la finalita' che in relazione al ex art. 7-Ter DLgs 
231/2002.
 
Devo dire che di la' dei precedenti post dapprima, di primo acchito (!), 
era palese che, oltre altri fattori, pure tenere altresi' conto della su 
indicata finalita' e ocme pure inerente ai tempi medi di pagamento dei 
fornitori per le società ex art. 7-Ter DLgs 231/2002 di cui, ad esempio, 
come essere altresi' esposto in questo collegamento internet: 
 
https://www.provincia.cremona.it/interni/?id=5841&view=Pagina
 
 
A tal fine, ribadito di primo acchito, quindi dopo i miei post ho speso un 
po' del mio tempo e avendo daprrima sviluppato quanto a seguire, poi avendo 
proseguito vs altre funzioni, e a seruire avendo tenuto altresi' conto di: 
 
- calcolare il totale degli importi pagati ai fornitori in un determinato 
periodo
- determinare la durata media in giorni tra la data di emissione della 
fattura e la data di pagamento effettivo per ciascuna fattura pagata nel 
periodo considerato
- calcolare la somma di tutte le durate medie in giorni ottenute al punto 2
- dividere la somma delle durate medie per il numero di fatture pagate nel 
periodo considerato
- moltiplicare il risultato ottenuto per il numero di giorni del periodo 
considerato
 
Cio' tenuto conto che la durata media tra la data di emissione e la data di 
pagamento si riferisce al tempo medio che trascorre tra l'emissione di una 
fattura e il suo pagamento effettivo e che questo valore puo' essere 
calcolato prendendo in considerazione un determinato numero di fatture e il 
tempo trascorso tra la loro emissione e il pagamento e che il periodo 
considerato puo' essere un intervallo di tempo scelto per analizzare i dati 
e ottenere un risultato, come ad esempio il tempo medio di pagamento, e che 
questo periodo di tempo puo' essere selezionato a discrezione dell'analista 
o dell'azienda per valutare le performance di pagamento nel corso di un 
trimestre e che questi due fattori, come in precedenza scrissi, sono 
slegati tra di loro e vanno considerati separatamente.
 
Avendo dapprima fatto seguito la seguente funzione matematica:
 
(T=\frac{1}{n}\sum{i=1}^{n}\frac{{d{i}}}{p}\cdot P)
 
Dove:
 
(T) rappresenta il tempo medio di pagamento dei fornitori nel periodo 
considerato
(n) e' il numero di fatture pagate nel periodo considerato
(d{i}) indica la durata in giorni tra la data di emissione e la data di 
pagamento effettivo per la fattura (i)-esima
(p) e' il numero di giorni nel periodo considerato
(P) indica l'importo pagato per la fattura (i)-esima
 
In sintesi, nulla di nuovo, la funzione calcolando la somma delle durate 
medie in giorni per tutte le fatture pagate nel periodo, divisa per il 
numero di fatture pagate nel periodo e il risultato viene quindi 
moltiplicato per il numero di giorni nel periodo considerato per ottenere 
il tempo medio di pagamento complessivo.
 
Ma cio', qui ancora restando in sede di PREMESSA, che poi sulla base delle 
successive informazioni, delle lecite eccezioni ed affermazioni da parte 
dei partecipanti, convertite anch'esse in funzioni matematiche, che 
prettamente ebbi modo di approfondire l'argomento che di primo e ad 
iniziare quindi seguirono le seguenti espressioni funzioni matematiche che 
a loro volta rappresentano, in sintesi, le informazioni e le eccezioni di 
cui sopra ma espresse in termini matematici di cui riporto alcne funzioni 
di cui:  
 
- relativo allo scrivennte riassumendosi in termine di funzione matematica 
f(x)=3x^2-2x+1f(x)=3x^2-2x+1
 
- relativo a casanmaner  riassumendosi in termine di funzionne matematica 
g(x)=x^3+2x^2-3x g(x)=x^3+2x^2-3x
 
- e relativo a Stefano riassumendosi in termine di funzione matematica h(x) 
= sqrt(x) h(x) = vx
 
... 'n so on 
 
Da cio', qui ancora in sede di PRREMESSA, mi fu come pure era palese che la 
piu' su citata funzione fianche sotto ripresa era quindi da ocnsiderate da 
rielaborarla che alla luce, qui in breve, finanche di quanto a seguire.
 
Quui, in risposta anche a casanmaner, prima di tutto vorrei quindi 
sottolineare che la funzione matematica:
 
(T=\frac{1}{n}\sum{i=1}^{n}\frac{{d{i}}}{p}\cdot P) 
 
E come su specificato, calcola il tempo medio di pagamento dei fornitori 
considerando il numero di fatture pagate nel periodo preso in 
considerazione, la durata in giorni tra la data di emissione e la data di 
pagamento effettivo per ogni fattura e l'importo pagato per ogni fattura.
 
Tuttavia e' importante notare che alcuni dei punti sollevati da casanmaner, 
dai partecipanti, sono legittimi e che hanno richiesto un'analisi piu' 
approfondita e una modifica della formula. 
 
Qui, in sintesi e senza fine di alcuna futile polemica, relativi i punti 
sotto esposti e di cui:
 
punto 1: Il tempo medio di pagamento viene calcolato dalla somma delle 
durate medie in giorni per tutte le fatture pagate nel periodo, divisa per 
il numero di fatture pagate, quindi il risultato sara' e deve essere 
espressa in giorni;
 
punto 2: se si considera un periodo di un anno e tutte le 50 fatture sono 
pagate a 30 giorni dopo la data di emissione, allora il tempo medio di 
pagamento sarebbe effettivamente di 30 giorni utilizzando la formula 
fornita, tuttavia in un contesto reale e' improbabile che tutte le fatture 
abbiano esattamente lo stesso tempo di pagamento;
 
punto 3: sulla base delle affermazioni di casanmaner, sembra che ci siano 
delle perplessita' sul metodo proposto, quindi era necessario un'ulteriore 
analisi e una revisione del metodo al fine di renderlo piu' accurato e 
rappresentativo della realta';
 
punto 4: casanmaner ritiene che la funzione abbia aggirato la finalita' 
quindi quanto meno che a maggior ragione era perlomeno da rivedere lo 
sviluppo di una funzione piu', diciamo, 'puntigliosa' e tralasciando 
inuliti e futili 'testardaggini' e l'ennesimo conseguente infinito 3D; 
 
punto 5: nell'esempio fornito da casanmaner, se tutte le 50 fatture sono 
pagate a 30 giorni dopo la data di emissione, allora a fronte di tal 
presupposto palese che il tempo medio di pagamento calcolato dalla funzione 
sarebbe 30 giorni poiche', diversamente pure dal mio precedente post, 
nell'esempio invece fornito da casanmaner il calcolo tenendo conto di tutte 
le fatture nel periodo considerato;
 
punto 6: sulla base dell'esempio e dei parametri forniti da casanmaner, se 
il tempo medio di riferimento e' di 30 giorni e tutte le 50 fatture sono 
pagate a 30 giorni, allora il tempo medio di pagamento calcolato dalla 
funzione sarebbe (50 * 30) / 360 = 4 giorni e rotti. Questo dipende dal 
periodo di riferimento che e' stato considerato nella formula;
 
punto 7: casanmaner afferma che l'assunzione della funzione sarebbe errata 
se alcune fatture sono pagate a 30 giorni e altre a 90 giorni. In questo 
caso, sarebbe necessario considerare la ponderazione dei tempi di pagamento 
in base all'importo delle fatture al fine di ottenere un tempo medio di 
pagamento accurato;
 
punto 8: casanmaner sottolinea l'importanza di considerare una ponderazione 
in base all'importo delle fatture. Nella funzione ben piu' sopra stata da 
me fornita non viene considerata specificamente la ponderazione in base 
all'importo delle fatture, quindi potrebbe essere necessario modificarla 
per tenerne conto;
 
punto 9: casanmaner cita un articolo che afferma che le societa' dovrebbero 
ponderare il tempo di pagamento di ciascuna transazione in base al suo 
valore e distinguere tra transazioni verso grandi imprese, piccole/medie 
imprese e micro imprese. Questo quindi ha richiesto una revisione della 
formula per adattarla alle specifiche esigenze delle diverse categorie di 
imprese;
 
punto 10: casanmaner indica che analizzare tutte le transazioni in un dato 
esercizio verso soggetti commerciali potrebbe essere complicato e 
richiedere un'elevata quantita' di informazioni, cio' senza dubbio. 
Inoltre, la distinzione tra le diverse categorie di imprese potrebbe 
richiedere un aggiornamento costante delle informazioni sui fornitori.
 
Premesso quanto sopra che alla luce delle considerazioni sopra riportate, 
sembra che la formula attuale, ben piu' sopra stata riportata, potrebbe non 
essere completa o accurata per rappresentare adeguatamente il tempo medio 
di pagamento dei fornitori, tenendo conto di tutti i fattori menzionati da 
casanmaner. E quindi se e' reso necessario apportare delle modifiche alla 
formula o sviluppare un nuovo metodo che consideri la ponderazione basata 
sullìimporto delle fatture e la distinzione tra diverse categorie di 
imprese.
 
Sulla base delle considerazioni sopra riportate che si e' reso necessario 
sviluppare una nuova funzione matematica per rappresentare in modo piu' 
completo ed accurato il tempo medio di pagamento dei fornitori, 
considerando la ponderazione basata sull'importo delle fatture e la 
distinzione tra diverse categorie di imprese, di cui:
 
TPF=(S(TPi*Ai*Ci))/(S(Ai*Ci))
 
dove:
 
- TPF che rappresenta il tempo medio di pagamento dei fornitori
 
- TPi che rappresenta il tempo di pagamento per la categoria di impresa: i
 
- Ai che rappresenta l'importo totale delle fatture pagate alle imprese 
della categoria: i
 
- Ci che rappresenta il numero totale delle imprese della categoria: i
 
La formula tiene conto sia del tempo di pagamento per ogni categoria di 
impresa, sia dell'importo delle fatture pagate e del numero di imprese per 
ogni categoria, pertanto le imprese con un importo elevato delle fatture 
avranno un peso maggiore nel calcolo del tempo medio di pagamento, rispetto 
a quelle con un importo più basso, restando che e' possibile elaborarla 
ancor piu', ma per ora tant'e'.
 
La rappresentazione, l'utilizzo, di questa nuova funzione matematica 
elaborata al fine di ottenere una rappresentazione piu' accurata e 
ponderata del tempo medio di pagamento dei fornitori, in modo da 
considerare adeguatamente tutti i fattori menzionati da casanmaner che da 
altre indicazioni etc riprese da altri partecipanti.
 
Poi, come per tanti ma non per tutto, restando migliorabile ovvero 
rielaborandola pure sulla base di altri fattori.
 
Relativo invece la conversione in VBA o altri, per ora, se avendo tempo e 
sempre se sia utile, rimandando in eventuale altro post.

 TPF=(S(TPi*Ai*Ci))/(S(Ai*Ci))
 
S = sum
 
TPF=(sum(TPi*Ai*Ci))/(sum(Ai*Ci))
 
 
 
 
 

 per tenerne conto; 
 
No, stai confondendo.
Io non ho sottolineato alcuna importanza.
Prendo atto di un metodo di determinazione basato sulla ponderazione dei tempi di pagamento dei fornitori in base agli importi delle fatture.
Ma non ha a che fare con il fatto che fosse errato quanto da te proposto inizialmente.
 
Preso atto che vi sono disposizioni che indicano di ponderare i giorni di pagamento per gli importi delle fatture pagate mi limito a determinare la funzione in questo modo:
 
TempoMedioPagamento = [Sommatoria di (ImportoSingolaFattura * GiorniPagamentoSingolaFattura)] / ImportoComplessivoFatturePagate
 
Dove la sommatoria andrebbe da 1 a n e dove n rappresenta il numero complessivo delle fatture prese in considerazione in un determinato periodo di tempo.
 
Se i dati fossero dal sistema già esportati in una tabella excel semplicemente utilizzerei questa formula:
 
=MATR.SOMMA.PRODOTTO(IntervalloImporti;IntervalloGiorniPagamento) / SOMMA(IntervalloImporti)
 
Mi fermo qui perché penso sia chiaro e credo non sia necessario andare oltre.
 
 

 Mi fermo qui perché penso sia chiaro e credo non sia necessario andare oltre.
 
Speriamo si fermi anche lui.
Non sono riuscito a seguire il 3d perché non riesco a leggere quello 
che scrive, lo trovo confusionario e inconcludente, ma questo è 
certamente un mio limite.
