Cash flow previsionale e budget: inserimento dati

Cash flow previsionale e budget: inserimento dati

Cash flow previsionale e budget: inserimento dati 150 150 Giovanni Pianca

Abbiamo esaminato sinteticamente nel precedente post ( Cash-flow previsionale e IA: come gestire i castelletti SBF ) come modificare l’architettura di integrazione dei vari tipi di dati al fine di costruire un cash-flow previsionale adatto ad una PMI per tenere conto dell’esistenza di castelletti s.b.f. (presentazione ri.ba. e anticipo fatture).

Ciò data la particolarità di quanto stabilito dalla direttiva europea PSD2.

Qui invece esamineremo le relazioni tra cash flow previsionale e budget, cioè come tener conto dei dati derivanti dai budget (ove esistenti e formalizzati documentalmente).

La risposta dipende dagli applicativi utilizzati.

Cash flow previsionale e budget: il problema concettuale

I dati di budget sono diversi per natura da tutti gli altri dati recepiti nei diversi layer (“livelli”: si veda il post sopra richiamato e l’architettura proposta più sotto). Gli ordini confermati e la pipeline CRM hanno un ancoraggio alla realtà (un cliente ha firmato o ha almeno trattato). Il budget vendite è invece una previsione pura, costruita a tavolino. Questo crea un problema di affidabilità: se il motore IA li tratta allo stesso modo degli ordini confermati le previsioni di cassa spesso diventano troppo ottimistiche.

Per questo motivo il budget vendite non dovrebbe mai “mescolarsi” con i dati certi, ma essere recepito nel sistema con un peso probabilistico; il layer in cui inserirlo dipende proprio da quanto è strutturato e affidabile il processo con cui viene prodotto.

Ipotesi per le vendite da budget

Caso 1 — Excel (scenario più comune nelle PMI)

Il budget è un file Excel aggiornato periodicamente dalla direzione o dal commerciale. In questo caso siamo nel Layer 4, perché richiede un’azione manuale di caricamento. Il middleware legge il file da una cartella condivisa o lo riceve via upload, lo normalizza e lo inserisce nel DB con un flag “budget” e un coefficiente di confidenza configurabile (es. 60%). Il vantaggio è la semplicità; lo svantaggio è che dipende dalla disciplina di chi aggiorna il file.

Caso 2 — Salesforce o HubSpot o altri piattaforme di CRM con forecast strutturato

Questi CRM hanno già un modulo di forecast con probabilità di chiusura per fase di pipeline. In questo caso siamo nel Layer 3, perché i dati arrivano via API in modo automatico e strutturato. Il middleware legge le opportunità con data di chiusura prevista, importo e percentuale di probabilità e costruisce una curva di incasso attesa pesata. È il caso ottimale perché la probabilità è già stimata dal CRM sulla base dello storico.

Caso 3 — ERP con modulo budget (SAP, TeamSystem, ecc.)

Se il gestionale ha un modulo di pianificazione o budget attivo, i dati sono già nel Layer 1 e viaggiano con le stesse API delle fatture. Il middleware li distingue tramite un campo tipo “documento = budget” e li tratta separatamente. È il caso più raro nelle PMI ma il più integrato.

Caso 4 — nessuno strumento strutturato

Il commerciale stima le vendite future a voce o in riunione. Qui si è necessariamente nel Layer 4, con un’interfaccia semplice di input manuale dove si inserisce: prodotto/cliente, importo previsto, mese atteso, grado di confidenza soggettivo. È un dato grezzo ma meglio di niente, perché almeno entra nel sistema con un peso esplicito.

Acquisti conseguenti alle vendite previste

Questo è il passaggio più delicato, perché introduce una dipendenza causale: se prevedo di vendere X, devo comprare Y entro una certa data per poter produrre. Ci sono due approcci.

Il primo è il collegamento manuale: nel Layer 4 si inserisce la vendita prevista e contestualmente si stima il fabbisogno di acquisto associato (materie prime, componenti, servizi) . Questo approccio è semplice ma richiede disciplina.

Il secondo è il collegamento automatico tramite distinta base: se il gestionale/ERP ha una distinta base attiva, il middleware può calcolare automaticamente il fabbisogno di acquisto partendo dalla previsione di vendita. Questo è tipico di ERP strutturati (SAP, Panthera, anche alcuni TeamSystem) e porta i dati direttamente nel Layer 1. Per le PMI senza distinta base formalizzata, si può approssimare con un coefficiente fisso per categoria di prodotto (es. “ogni € 10.000 di venduto genera € 4.000 di acquisti“). Chiaramente diminuisce l’attendibilità.

Vincoli di capacità produttiva

Questo è il tema più complesso e raramente gestito nelle PMI. I vincoli di capacità impattano il cash-flow in due modi: ritardano i ricavi (se non si riesce a produrre in tempo, la fattura “slitta”) e anticipano i costi (si devono acquistare risorse prima di incassare).

Gli approcci possibili sono tre, in ordine crescente di complessità.

Il più semplice è inserire nel Layer 4 un calendario di capacità mensile (ore disponibili, turni, macchinari) e confrontarlo manualmente con il piano di produzione previsto. Se la capacità è satura, il commerciale sposta la data di fatturazione prevista.

Il secondo è usare un MES o un modulo di pianificazione produzione già integrato nel gestionale — in questo caso i vincoli arrivano via API nel Layer 1 e il middleware può calcolare automaticamente lo slittamento dei ricavi.

Il terzo, più sofisticato, è un motore di ottimizzazione che, dato il portafoglio ordini confermati + budget, la capacità disponibile e i lead time di acquisto, calcola il piano di produzione ottimale e da lì deriva il cash flow atteso. Questo esula dal middleware semplice ed è un modulo IA dedicato — utile per aziende manifatturiere con cicli di produzione complessi.

In sintesi: dove collocare i dati di budget nello schema

LAYER 1 → budget da ERP con modulo pianificazione (raro)
LAYER 3 → forecast da Salesforce/HubSpot via API (automatico)
LAYER 4 → Excel, input manuale, stime commerciali (più comune)

ACQUISTI CONSEGUENTI
LAYER 1 → distinta base ERP (automatico)
LAYER 4 → coefficiente fisso o input manuale (approssimato)

VINCOLI CAPACITÀ
LAYER 1 → MES / modulo produzione ERP (strutturato)
LAYER 4 → calendario capacità manuale (base)

La regola generale è:
– più il dato è strutturato e automatico, più “sale” verso il Layer 1;
– più è soggettivo o manuale, più “scende” al Layer 4.
Il middleware in ogni caso applica sempre un peso probabilistico diverso ai dati di budget rispetto ai dati certi, per evitare che le previsioni IA diventino troppo ottimistiche.
L’architettura diventa perciò la seguente:
┌─────────────────────────────────────────────────────────────────────────────┐
│                                 SORGENTI DATI                               │
│    ┌─────────────┐ ┌──────────────┐ ┌───────────────┐ ┌─────────────────┐   │
│    │ GESTIONALE  │ │ HOME BANKING │ │ EMAIL / CRM   │ │ PRODUZIONE      │   │
│    │ /ERP        │ │              │ │               │ │ MES / MRP       │   │
│    └─────────────┘ └──────────────┘ └───────────────┘ └─────────────────┘   │
└─────────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ LAYER 1 — DATI CERTI                                                        │
│ Gestionale / ERP via API                                                    │
│ · fatture attive & passive · anagrafica clienti/fornitori                   │
│ · scadenzario · Prima nota / movimenti                                      │
│ · budget da modulo ERP (se attivo) · distinta base / fabbisogno acquisti    │
│ · vincoli capacità da MES/MRP · ordini di produzione pianificati            │
└─────────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ LAYER 2 — DATI IN TEMPO REALE                                               │
│ Home Banking via PSD2                                                       │
│ · saldo c/c disponibile · movimenti estratto conto                          │
│ · accrediti SBF su c/c · addebiti insoluti su c/c                           │
│                                                                             │
│ ⚠ PORTAFOGLIO SBF — FUORI PERIMETRO PSD2                                    │
│ Canale di accesso alternativo da scegliere:                                 │
│                                                                             │
│     ┌─────────────────────┐ ┌─────────────────────┐ ┌─────────────────────┐ │
│     │ A) API CBI          │ │ B) EXPORT MANUALE   │ │ C) MODULO           │ │
│     │ CORPORATE           │ │ CSV / XML           │ │ TESORERIA ERP       │ │
│     │ [AUTO] ⚡           │ │ [SEMI] ?          │ │ [AUTO] ?           │ │
│     │                     │ │                     │ │                     │ │
│     │ · CBI Globe API     │ │ · download portale  │ │ · lettura flussi    │ │
│     │ · castelletti       │ │ · CSV/Excel/XML     │ │ SBF dal modulo      │ │
│     │ real-time           │ │ SEPA                │ │ tesoreria già       │ │
│     │ · distinte &        │ │ · import            │ │ attiva nel          │ │
│     │ partite             │ │ schedulato          │ │ gestionale          │ │
│     │ · stati & insoluti  │ │ · universale        │ │                     │ │
│     └─────────────────────┘ └─────────────────────┘ └─────────────────────┘ │
└─────────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ LAYER 3 — DATI ANTICIPATI (automatici ma non certi)                         │
│ Email · CRM · forecast strutturato                                          │
│                                                                             │
│ · distinte SBF via email · ordini confermati non fatturati                  │
│ · conferme d'ordine da email · pipeline vendite CRM                         │
│                                                                             │
│ VENDITE FUTURE DA BUDGET — se CRM strutturato (Layer 3):                    │
│ ┌─────────────────────────────┐ ┌──────────────────────────────────────┐    │
│ │ SALESFORCE / HUBSPOT        │ │ CRM CON FORECAST API                 │    │
│ │ · opportunità con prob. %   │ │ · data chiusura prevista             │    │
│ │ · importo & data chiusura   │ │ · importo pesato per probabilità     │    │
│ │ · curva incasso attesa      │ │ · curva acquisti conseguenti         │    │
│ └─────────────────────────────┘ └──────────────────────────────────────┘    │
│                                                                             │
│ ACQUISTI CONSEGUENTI (se CRM strutturato):                                  │
│ · fabbisogno stimato da coefficiente fisso per categoria prodotto           │
└─────────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ LAYER 4 — INPUT MANUALE E STIME                                             │
│ Dati soggettivi · Aggiustamenti · Budget non strutturato                    │
│                                                                             │
│ CORREZIONI OPERATIVE:                                                       │
│ · pagamenti effettuati non ancora contabilizzati                            │
│ · proroghe scadenze concordate · override previsioni AI                     │
│                                                                             │
│ VENDITE FUTURE DA BUDGET — se non strutturato (Layer 4):                    │
│  ┌─────────────────────────────┐ ┌──────────────────────────────────────┐   │
│  │ EXCEL                       │ │ INPUT MANUALE DIRETTO                │   │
│  │ · upload file da cartella   │ │ · cliente / prodotto previsto        │   │
│  │ · importo & mese previsto   │ │ · importo & mese atteso              │   │
│  │ · coefficiente confidenza   │ │ · grado di confidenza soggettivo     │   │
│  │ configurabile (es. 60%)     │ │ · inserito da commerciale/direzione  │   │
│  └─────────────────────────────┘ └──────────────────────────────────────┘   │
│                                                                             │
│ ACQUISTI CONSEGUENTI (Layer 4):                                             │
│ · Stima manuale fabbisogno · Coefficiente fisso per categoria               │
│                                                                             │
│ VINCOLI CAPACITÀ PRODUTTIVA (Layer 4):                                      │
│ · calendario capacità mensile · ore disponibili / turni                     │
│ · se capacità satura → slittamento data fatturazione prevista               │
└─────────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ MIDDLEWARE (proprietà cliente)                                              │
│                                                                             │
│ · raccoglie dati da tutti 4 i layer                                         │
│ · adatta i formati sorgente tramite adapter specifici                       │
│ · normalizza tutto in formato standard proprietario                         │
│ · applica peso probabilistico ai dati di budget (≠ dati certi)              │
│ · calcola acquisti necessari da distinta base o coefficiente fisso          │
│ · verifica vincoli capacità e slitta ricavi se necessario                   │
│ · salva nel DB cliente (storico permanente, export aperto)                  │
└─────────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ MOTORE IA — CASH-FLOW ENGINE                                                │
│                                                                             │
│ · piano previsionale 6 mesi · alert liquidità                               │
│ · ottimizzatore castelletti SBF · scoring insoluti                          │
│ · previsione acquisti & uscite · simulazioni scenari (best/worst)           │
│ · cruscotto unificato · KPI in tempo reale                                  │
└─────────────────────────────────────────────────────────────────────────────┘

Pertanto, con riferimento ai rapporti tra cash flow previsionale e budget, le principali aggiunte rispetto alla architettura vista nel post precedente ( si veda qui ) sono:

  • nel Layer 1 la distinta base e i vincoli MES/MRP;
  • nel Layer 3 il forecast strutturato da Salesforce/HubSpot o altre piattaforme di CRM;
  • nel Layer 4 le due opzioni budget (Excel e input manuale) con i relativi acquisti conseguenti e il calendario della capacità produttiva;
  • nel middleware la logica di pesatura probabilistica e il calcolo degli slittamenti per capacità produttiva satura.