Il template dei dati per Order to Cash - elaborazione degli ordini di vendita
Il template dei dati per Order to Cash - elaborazione degli ordini di vendita
- Attributi consigliati da raccogliere
- Attività principali da monitorare
- Indicazioni per l’estrazione dei dati da Salesforce Sales Cloud
Attributi del processo Order to Cash - elaborazione degli ordini di vendita
| Nome | Descrizione | ||
|---|---|---|---|
| Nome dell’attività ActivityName | Nome dello specifico evento aziendale o dell’attività che si è verificata durante il ciclo di vita dell’ordine di vendita. | ||
| Descrizione Il nome dell’attività descrive un passaggio del processo di gestione degli ordini di vendita, ad esempio 'Ordine creato', 'Verifica del credito effettuata' o 'Fattura inviata'. Queste attività costituiscono gli elementi fondamentali della mappa del processo e derivano da eventi di sistema, modifiche dello stato o completamenti di attività. Analizzarle consente di visualizzare il flusso del processo, individuare i percorsi più frequenti (varianti) e misurare la frequenza e la durata di ogni passaggio. È un elemento fondamentale per capire cosa accade nel processo. Perché è importante Questo attributo definisce i passaggi nella mappa del processo. Senza di esso non è possibile visualizzare il flusso del processo né analizzare come vengono effettivamente gestiti gli ordini di vendita. Dove reperirli In genere si ricava dalle modifiche dello stato nel campo 'Order.Status', dalla creazione di record correlati (ad esempio, Invoice) o dal completamento di record 'Task' o 'Event' associati all’ordine. Esempi Ordine creatoOrdine approvatoMerce speditaPagamento ricevuto | |||
| Ora dell’evento EventTime | Data e ora esatte in cui si è verificata l’attività. | ||
| Descrizione L’ora dell’evento, o data e ora, registra il momento preciso in cui si è svolta un’attività. Questo dato è fondamentale per ordinare correttamente gli eventi e calcolare la durata tra un’attività e l’altra, alla base di tutte le analisi temporali di Process Mining. L’attributo serve a ordinare le attività per ciascun caso, calcolare i tempi di ciclo, individuare i tempi di attesa e analizzare le prestazioni del processo in periodi diversi. Date e ore imprecise o mancanti possono ridurre notevolmente l’utilità dell’analisi. Perché è importante Le date e le ore sono essenziali per ordinare gli eventi cronologicamente e calcolare tutte le metriche di prestazione, come i tempi di ciclo e i colli di bottiglia. Dove reperirli Corrisponde a campi come 'CreatedDate' o 'LastModifiedDate' dell’oggetto 'Order' o dei record correlati. Per eventi specifici, può derivare dalla data di completamento di un record 'Task'. Esempi 2023-10-26T10:00:00Z2023-10-26T14:35:10Z2023-10-27T09:00:00Z | |||
| Ordine di vendita SalesOrderId | Identificativo univoco di ciascun ordine di vendita, utilizzato come caso principale per monitorare l’intero processo dall’ordine all’incasso. | ||
| Descrizione L’ID dell’ordine di vendita è il riferimento fondamentale per l’analisi del processo: identifica in modo univoco ogni ordine del cliente durante tutto il suo ciclo di vita. Collega tutte le attività associate, dalla creazione e approvazione fino all’evasione e al pagamento. Nel Process Mining, ogni evento relativo a un ordine specifico è associato a questo ID. È così possibile ricostruire l’intero percorso dell’ordine e analizzare nel dettaglio i tempi di ciclo, le varianti del processo e i colli di bottiglia per ciascun ordine. Perché è importante Questo attributo è essenziale per raggruppare tutti gli eventi correlati in un unico caso e visualizzare e analizzare il flusso completo del processo per ciascun ordine di vendita. Dove reperirli È il campo 'Id' dell’oggetto standard Salesforce 'Order'. Esempi 8018d000000XwPBAA08018d000000Y1qCAAS8018d000000Z3kDAB1 | |||
| Sistema di origine SourceSystem | Identifica il sistema da cui sono stati estratti i dati. | ||
| Descrizione Questo attributo specifica l’origine dei dati del processo. In questa analisi il valore sarà sempre 'Salesforce Sales Cloud'. Negli ambienti con più sistemi, il campo è fondamentale per ricostruire la provenienza dei dati e risolvere i problemi. Anche quando si utilizza un solo sistema, fornisce metadati importanti sull’origine dei dati. Perché è importante Fornisce informazioni essenziali sull’origine dei dati, importanti per la governance dei dati e per l’integrazione di dati provenienti da più sistemi di origine. Dove reperirli In genere è un valore statico aggiunto durante l’estrazione dei dati per identificare il set di dati. Esempi Salesforce Sales Cloud | |||
| Ultimo aggiornamento dei dati LastDataUpdate | Data e ora dell’ultima estrazione o dell’ultimo aggiornamento dei dati. | ||
| Descrizione Questo attributo registra la data e l’ora dell’estrazione più recente dei dati dal sistema di origine. Fornisce un contesto essenziale sull’aggiornamento dei dati analizzati. Gli analisti utilizzano questa informazione per capire se stanno consultando i dati di processo più recenti e valutare quanto siano attuali i risultati. È un metadato fondamentale per qualsiasi progetto di Process Mining. Perché è importante Indica quanto sono aggiornati i dati, aiutando gli utenti a capire a quale momento si riferisce l’analisi. Dove reperirli È una data e ora generata e aggiunta durante il processo di estrazione, trasformazione e caricamento dei dati (ETL). Esempi 2023-11-01T05:00:00Z | |||
| Data di consegna richiesta RequestedDeliveryDate | Data di consegna richiesta dal cliente per l’ordine. | ||
| Descrizione Questo attributo registra la data entro cui il cliente si aspetta di ricevere la merce. È un riferimento fondamentale per misurare le prestazioni delle consegne e la soddisfazione dei clienti. La data viene utilizzata direttamente nella Dashboard 'Delivery Date Adherence Tracking' e nel KPI 'On-Time Delivery Rate'. Viene confrontata con la data effettiva di consegna, registrata dall’evento 'Goods Delivered', per stabilire se l’ordine è stato consegnato in anticipo, puntualmente o in ritardo. Perché è importante È il principale riferimento per misurare le prestazioni delle consegne puntuali, un indicatore importante della soddisfazione dei clienti e dell’efficacia operativa. Dove reperirli Spesso si tratta di un campo data personalizzato dell’oggetto 'Order'. Il nome esatto può variare. Consultare la documentazione o lo schema di Salesforce Sales Cloud. Esempi 2023-11-152023-12-012024-01-10 | |||
| Importo totale dell’ordine TotalOrderAmount | Valore monetario complessivo dell’ordine di vendita. | ||
| Descrizione Questo attributo rappresenta l’importo finanziario complessivo dell’ordine del cliente. È una metrica fondamentale per comprendere l’impatto aziendale delle efficienze o inefficienze del processo. In fase di analisi, l’importo totale dell’ordine consente di segmentare i casi, ad esempio per verificare se gli ordini di valore elevato seguono un iter diverso o subiscono più ritardi rispetto a quelli di valore inferiore. È inoltre essenziale per calcolare i KPI finanziari e comprendere il valore che attraversa il processo. Perché è importante Consente di analizzare gli aspetti finanziari del processo, segmentando gli ordini in base al valore e quantificando l’impatto economico dei ritardi o delle rilavorazioni. Dove reperirli Corrisponde al campo 'TotalAmount' dell’oggetto standard 'Order' di Salesforce. Esempi 5400.50125000.00950.75 | |||
| Nome dell’account AccountName | Nome del cliente o dell’azienda che ha effettuato l’ordine di vendita. | ||
| Descrizione Il nome dell’account identifica il cliente associato all’ordine di vendita e consente di analizzare il processo dal punto di vista del cliente. Questo attributo permette agli analisti di filtrare il processo per singolo cliente, confrontare le prestazioni tra diversi segmenti di clientela o individuare eventuali problemi ricorrenti per determinati clienti. È fondamentale per collegare direttamente le prestazioni del processo all’esperienza del cliente. Perché è importante Collega le prestazioni del processo a clienti specifici e consente di analizzare e segmentare i dati per individuare schemi ricorrenti o problemi. Dove reperirli L’oggetto 'Order' contiene un campo di ricerca 'AccountId'. Per recuperare il campo 'Account.Name', è necessario unire questo ID all’oggetto 'Account'. Esempi Global Tech Inc.Innovate Solutions LLCVenture Dynamics | |||
| Stato dell’ordine OrderStatus | Stato dell’ordine di vendita al momento dell’evento. | ||
| Descrizione Questo attributo registra lo stato dell’ordine di vendita, ad esempio 'Bozza', 'Attivato', 'Spedito' o 'Chiuso'. Le modifiche dello stato sono spesso utilizzate per generare le attività nell’Event Log. Analizzare lo stato dell’ordine fornisce un contesto per ciascun evento ed è fondamentale per monitorare l’avanzamento dell’ordine. Aiuta a comprendere l’esito dei casi, ad esempio distinguendo gli ordini 'Annullati' da quelli 'Chiusi' correttamente. Perché è importante Fornisce un contesto essenziale per ogni evento ed è spesso la base per definire le attività. È inoltre fondamentale per analizzare gli esiti dei casi, come gli annullamenti. Dove reperirli È il campo a elenco di selezione 'Status' dell’oggetto standard Salesforce 'Order'. Esempi BozzaAttivatoSpeditoChiusoAnnullato | |||
| Tempo di ciclo totale CycleTime | Tempo complessivo trascorso dalla creazione dell’ordine di vendita alla sua chiusura definitiva. | ||
| Descrizione Il tempo di ciclo totale è un indicatore chiave che misura la durata complessiva del processo di gestione dell’ordine di vendita. Si calcola come differenza tra il primo evento, ad esempio 'Order Created', e l’ultimo, ad esempio 'Order Closed'. Questa metrica è al centro della Dashboard 'Sales Order End-to-End Cycle Time'. Analizzare il tempo di ciclo aiuta a individuare inefficienze complessive nel processo e a misurare l’impatto delle iniziative di miglioramento. Le variazioni possono essere approfondite segmentando i dati in base ad altri attributi, come il paese o la famiglia di prodotti. Perché è importante È un KPI fondamentale per misurare l’efficienza complessiva del processo e individuare gli ordini che richiedono tempi lunghi, possibili segnali di problemi sistemici. Dove reperirli Calcolato durante la trasformazione dei dati sottraendo, per ogni 'SalesOrderId', il timestamp del primo evento da quello dell’ultimo. Esempi 10 giorni e 4 ore25 giorni e 11 ore5 giorni e 2 ore | |||
| Utente che esegue l’azione UserPerformingAction | Nome dell’utente o dell’agente di sistema che ha eseguito l’attività. | ||
| Descrizione Questo attributo identifica la persona responsabile del completamento di un passaggio del processo. Può trattarsi di un rappresentante commerciale, di un analista del credito o di un utente di sistema automatizzato. L’analisi per utente è fondamentale per comprendere la distribuzione del carico di lavoro, le prestazioni individuali e il livello di automazione. Aiuta a rispondere a domande come 'Quali utenti gestiscono più rilavorazioni?' o 'Alcuni team approvano più rapidamente?'. Viene inoltre utilizzata nell’analisi delle reti sociali per capire come vengono passate le attività da una persona all’altra. Perché è importante Consente di analizzare le prestazioni per utente, team o ruolo e aiuta a individuare opportunità di automazione o esigenze di formazione. Dove reperirli Può essere ricavato da campi come 'LastModifiedById' dell’oggetto 'Order' o 'OwnerId' dei record 'Task'. Per ottenere il nome dell’utente, questi ID devono essere collegati all’oggetto 'User'. Esempi Alice SmithBob JohnsonAutomazione di sistemaTeam del credito | |||
| Canale di vendita SalesChannel | Canale attraverso cui è stato effettuato l’ordine di vendita, ad esempio 'Web', 'Direct Sales' o 'Partner'. | ||
| Descrizione L’attributo del canale di vendita classifica gli ordini in base al canale di provenienza e consente di confrontare le prestazioni del processo tra canali diversi. È essenziale per la Dashboard 'Sales Channel Performance Comparison'. Filtrando o confrontando i dati per canale, le aziende possono individuare quelli più efficienti, quelli che richiedono più rilavorazioni e le aree in cui occorre uniformare le modalità operative per allineare le prestazioni. Perché è importante Consente di confrontare le prestazioni dei diversi canali aziendali, individuando le buone pratiche e le aree in cui armonizzare i processi. Dove reperirli In genere si tratta di un campo elenco di selezione personalizzato dell’oggetto 'Order' o 'Opportunity'. Consultare la documentazione o lo schema di Salesforce Sales Cloud. Esempi Vendita direttaPortale webRete di partnerVendita interna | |||
| Consegna puntuale IsOnTimeDelivery | Indicatore che specifica se la merce è stata consegnata entro la data richiesta dal cliente. | ||
| Descrizione Questo attributo booleano misura direttamente le prestazioni delle consegne rispetto alle aspettative del cliente. Si calcola confrontando il timestamp dell’attività 'Goods Delivered' con 'RequestedDeliveryDate'. È alla base del calcolo del KPI 'On-Time Delivery Rate'. L’analisi dell’indicatore aiuta le organizzazioni a valutare l’affidabilità e il rispetto degli impegni, fattori determinanti per la soddisfazione dei clienti. Incrociandolo con altri attributi, è possibile individuare metodi di spedizione o aree geografiche con tassi di puntualità inferiori. Perché è importante Fornisce una misura chiara e binaria del rispetto degli impegni presi con i clienti e supporta direttamente il KPI On-Time Delivery Rate. Dove reperirli Calcolato durante la trasformazione dei dati. La logica è: IF ('Goods Delivered' EventTime <= 'RequestedDeliveryDate') THEN true ELSE false. Esempi truefalse | |||
| È automatizzata IsAutomated | Indicatore che specifica se l’attività è stata eseguita da un processo di sistema o da un utente. | ||
| Descrizione Questo attributo booleano distingue gli eventi attivati da un’automazione di sistema, come l’aggiornamento automatico di uno stato, da quelli eseguiti manualmente da un utente. È fondamentale per comprendere il livello di automazione del processo. L’analisi di questo attributo aiuta a quantificare l’impatto dell’automazione su efficienza e coerenza. Consente di confrontare i percorsi automatizzati con quelli manuali e può mettere in luce opportunità per automatizzare ulteriormente il processo, riducendo il lavoro manuale e il rischio di errori. Perché è importante Aiuta a distinguere le azioni di sistema da quelle degli utenti, un aspetto essenziale per analizzare l’automazione e individuare opportunità di riduzione del lavoro manuale. Dove reperirli Derivato durante la trasformazione dei dati, verificando se 'UserPerformingAction' corrisponde a un utente di sistema designato oppure applicando regole basate sul tipo di attività. Esempi truefalse | |||
| Famiglia di prodotti ProductFamily | Categoria o famiglia a cui appartengono i prodotti inclusi nell’ordine. | ||
| Descrizione La famiglia di prodotti classifica a grandi linee gli articoli inclusi nell’ordine di vendita e consente di analizzare il processo in base al tipo di prodotto venduto. Questo attributo permette di segmentare il processo e verificare se determinate famiglie di prodotti seguono percorsi diversi, hanno tempi di ciclo più lunghi o presentano tassi di rilavorazione più elevati. Ad esempio, i prodotti complessi e configurabili possono richiedere un processo di approvazione e gestione più articolato rispetto agli articoli standard pronti all’uso. Perché è importante Consente di analizzare il processo per categoria di prodotto e di individuare eventuali differenze di efficienza tra le diverse tipologie. Dove reperirli Recuperato dall’oggetto 'Product2', collegato a 'Order' tramite l’oggetto di raccordo 'OrderItem'. È necessario unire Order -> OrderItem -> PricebookEntry -> Product2. Esempi HardwareLicenze softwareServizi professionaliContratti di assistenza | |||
| ID fattura InvoiceId | Identificativo univoco della fattura associata all’ordine di vendita. | ||
| Descrizione L’ID fattura collega un ordine di vendita alla relativa fattura. La creazione e l’invio della fattura sono tappe fondamentali nella seconda parte del processo order-to-cash. Questo attributo è essenziale per monitorare il processo dalla gestione dell’ordine all’incasso. Consente di misurare con precisione le attività 'Invoice Created' e 'Invoice Sent to Customer', necessarie per calcolare la 'Payment Collection Duration'. Perché è importante Collega l’ordine di vendita al sottoprocesso di fatturazione e consente di monitorare con precisione le attività finanziarie e i tempi del ciclo di pagamento. Dove reperirli Spesso si tratta di un campo di ricerca personalizzato dell’oggetto 'Order' che rimanda a un oggetto 'Invoice' standard o personalizzato. L’implementazione esatta può variare. Esempi INV-001234INV-001235INV-001236 | |||
| Metodo di spedizione ShippingMethod | Metodo scelto per spedire la merce, ad esempio 'Standard Ground', 'Express' o 'International'. | ||
| Descrizione Questo attributo indica il livello di servizio logistico scelto per la consegna dell’ordine. Incide direttamente sui tempi e sui costi di consegna. Nell’'Analisi dell’efficienza dei metodi di spedizione', l’attributo viene utilizzato per confrontare le prestazioni delle diverse opzioni. Aiuta a verificare se le spedizioni express rispettano i tempi previsti e in che modo i diversi metodi incidono sul tempo complessivo tra gli eventi 'Goods Shipped' e 'Goods Delivered'. Perché è importante Consente di analizzare le prestazioni logistiche e valutare costi ed efficienza delle diverse opzioni di spedizione. Dove reperirli Probabilmente è un campo personalizzato dell’oggetto 'Order' o di un oggetto personalizzato correlato 'Shipment'. Consultare la documentazione o lo schema di Salesforce Sales Cloud. Esempi Spedizione standard via terraExpress in 2 giorniTrasporto aereo notturnoPrioritaria internazionale | |||
| Ora di fine dell’evento EventEndTime | Data e ora esatte in cui è stata completata l’attività. | ||
| Descrizione L’ora di fine dell’evento indica il completamento di un’attività. Molti strumenti di Process Mining la deducono dall’ora di inizio dell’attività successiva, ma registrarla esplicitamente può fornire durate più precise, soprattutto per le attività di lunga durata. Questo attributo serve a calcolare con precisione il tempo di elaborazione di un’attività. È particolarmente utile per analizzare attività che richiedono molto tempo, come 'Verifica del credito effettuata' o 'Scorte allocate', e distinguere il tempo di elaborazione effettivo dai tempi di attesa. Perché è importante Consente di calcolare con precisione i tempi di elaborazione delle singole attività, un dato fondamentale per individuare i colli di bottiglia e i passaggi che assorbono più risorse. Dove reperirli Può essere ricavata dal campo 'StartTime' dell’evento successivo nella sequenza di un determinato caso. Per alcune attività, può corrispondere a un campo specifico come 'Task.CompletedDateTime'. Esempi 2023-10-26T10:05:12Z2023-10-26T15:00:00Z2023-10-27T11:20:30Z | |||
| Paese di spedizione ShippingCountry | Paese di destinazione della spedizione dell’ordine di vendita. | ||
| Descrizione Questo attributo specifica il paese verso cui viene spedito l’ordine. È una dimensione fondamentale per l’analisi geografica del processo order-to-cash. L’analisi per paese di spedizione può mettere in luce differenze regionali nelle prestazioni del processo, ad esempio tempi di consegna più lunghi per gli ordini internazionali o variazioni nei tempi di incasso. Consente di segmentare il processo per comprendere e affrontare le criticità specifiche di ciascuna area. Perché è importante Consente di segmentare il processo per area geografica e di individuare differenze regionali nelle prestazioni, problemi di conformità o criticità logistiche. Dove reperirli Corrisponde al campo 'ShippingCountry' dell’oggetto standard 'Order' di Salesforce. Esempi USAGermaniaGiapponeBrasile | |||
| Responsabile dell’ordine OrderOwner | Utente principalmente responsabile della gestione dell’ordine di vendita. | ||
| Descrizione Il responsabile dell’ordine è il rappresentante commerciale o il responsabile clienti che ne ha la responsabilità principale. Non coincide necessariamente con l’utente che esegue una singola attività, poiché risponde dell’avanzamento complessivo del caso. L’analisi per responsabile aiuta a valutare il carico di lavoro e le prestazioni dei team o dei singoli nella gestione del portafoglio ordini. Può evidenziare chi gestisce ordini che si bloccano spesso o richiedono rilavorazioni, indicando possibili esigenze di formazione. Perché è importante Identifica la persona responsabile del buon esito dell’ordine e consente di analizzare il carico di lavoro e le prestazioni a livello individuale. Dove reperirli Corrisponde al campo 'OwnerId' dell’oggetto 'Order'. L’ID può essere unito all’oggetto 'User' per recuperare il nome del responsabile. Esempi Jane DoeJohn SmithTeam vendite Est | |||
| Richiede rilavorazioni IsRework | Indicatore che segnala se l’ordine di vendita ha richiesto rilavorazioni, ad esempio la ripetizione di un’attività o un ciclo nel processo. | ||
| Descrizione Questo attributo calcolato individua i casi che si discostano da un avanzamento lineare. Si verificano rilavorazioni quando un’attività viene ripetuta o il processo torna a una fase precedente, spesso a causa di errori, informazioni mancanti o approvazioni rifiutate. L’indicatore viene utilizzato per calcolare il KPI 'Sales Order Rework Rate' e alimentare la Dashboard 'Sales Order Rework and Error Rate'. Aiuta a quantificare la frequenza e l’impatto delle inefficienze, indicando le aree in cui occorrono controlli di qualità più efficaci o una maggiore chiarezza del processo. Perché è importante Quantifica le inefficienze del processo segnalando gli ordini che richiedono attività aggiuntive non previste, con un impatto diretto sui costi e sul tempo di ciclo. Dove reperirli Calcolato dal software di Process Mining o durante la trasformazione dei dati, rilevando la ripetizione dei nomi delle attività o i flussi di processo a ritroso per un determinato caso. Esempi truefalse | |||
| Stato della verifica del credito CreditCheckStatus | Esito della verifica del credito per l’ordine. | ||
| Descrizione Questo attributo indica l’esito della valutazione del merito creditizio del cliente, che spesso rappresenta un passaggio decisivo nel processo di gestione dell’ordine. I valori più comuni sono 'Approvato', 'Rifiutato' o 'In attesa'. È essenziale per la Dashboard 'Credit Check Bottleneck Analysis'. Monitorando quando un ordine entra ed esce dalla fase di verifica del credito e registrandone l’esito finale, le organizzazioni possono misurare la durata e il risultato di questa fase e individuare eventuali fonti di ritardo. Perché è importante Supporta direttamente l’analisi della verifica del credito e consente di misurarne la durata, il tasso di esito positivo e l’impatto sul tempo di ciclo complessivo. Dove reperirli Probabilmente si tratta di un campo personalizzato dell’oggetto 'Order' o 'Account'. Consultare la documentazione o lo schema di Salesforce Sales Cloud. Esempi ApprovatoRifiutatoIn attesa di revisioneNon richiesto | |||
| Tempo di incasso PaymentCollectionDuration | Tempo trascorso dall’invio della fattura al cliente alla ricezione del pagamento. | ||
| Descrizione Questa metrica calcolata misura l’efficienza della fase finale, ma fondamentale, del ciclo order-to-cash: l’incasso. Corrisponde al tempo trascorso tra l’attività 'Invoice Sent to Customer' e l’attività 'Payment Received'. L’attributo supporta direttamente la Dashboard 'Payment Collection Duration' e il KPI 'Payment Realization Time'. Analizzando questo intervallo, l’ufficio finanziario può individuare i colli di bottiglia negli incassi, valutare l’efficacia delle condizioni di pagamento e trovare opportunità per accelerare il flusso di cassa. Perché è importante Misura l’efficienza del processo di gestione dei crediti verso clienti, con un impatto diretto sul flusso di cassa dell’azienda. Dove reperirli Calcolato durante la trasformazione dei dati sottraendo, per ogni caso, il timestamp dell’evento 'Invoice Sent to Customer' da quello dell’evento 'Payment Received'. Esempi 30 giorni15 giorni e 8 ore45 giorni | |||
Attività del processo Order to Cash - elaborazione degli ordini di vendita
| Attività | Descrizione | ||
|---|---|---|---|
| Fattura creata | Indica la generazione della fattura relativa all’ordine di vendita. L’evento può essere registrato tramite la creazione di un oggetto 'Invoice' correlato, con Salesforce Billing o tramite un’integrazione. | ||
| Perché è importante Questa tappa segna l’inizio della fase di incasso. Il tempo che intercorre tra la consegna e la fatturazione può rivelare colli di bottiglia amministrativi che incidono sul flusso di cassa. Dove reperirli Si deduce dalla data di creazione di un oggetto 'Invoice', standard o personalizzato, collegato all’oggetto 'Order'. Acquisizione Utilizzare il campo 'CreatedDate' del record Invoice correlato. Tipo di evento inferred | |||
| Merce consegnata | Indica che la spedizione è arrivata correttamente al cliente. L’informazione proviene dal sistema del corriere e viene aggiornata in Salesforce. | ||
| Perché è importante Questo evento è essenziale per calcolare il KPI 'Tasso di consegne puntuali' e misurare i tempi di ciclo effettivi dal punto di vista del cliente. Conferma il completamento del processo di evasione. Dove reperirli Si deduce dalla compilazione del campo 'Delivery Date' nell’oggetto 'Order' o nell’oggetto personalizzato 'Shipment'. In genere i dati vengono forniti tramite un’integrazione con un operatore logistico. Acquisizione Utilizzare la data e l’ora in cui viene compilato il campo della data di consegna. Tipo di evento inferred | |||
| Merce spedita | Indica il momento in cui l’ordine lascia fisicamente il magazzino per essere consegnato al cliente. Quasi sempre l’evento viene registrato in Salesforce tramite un aggiornamento proveniente da un sistema di spedizione o ERP esterno. | ||
| Perché è importante È una tappa fondamentale per misurare il KPI 'Tasso di spedizioni puntuali' e l’efficienza complessiva del processo di evasione. Segna l’inizio della fase di consegna nel percorso del cliente. Dove reperirli Si deduce dalla compilazione del campo 'Shipped Date' o 'Tracking Number' nell’oggetto 'Order' o in un oggetto personalizzato correlato 'Shipment'. I dati provengono da un sistema di evasione. Acquisizione Utilizzare la data e l’ora in cui viene compilato per la prima volta un campo relativo alla data di spedizione o al numero di tracciamento. Tipo di evento inferred | |||
| Ordine attivato | Un evento standard di Salesforce che indica che l’ordine è stato finalizzato e può passare alla fase di evasione e fatturazione. L’attivazione impedisce la maggior parte delle modifiche all’ordine e viene registrata tramite una specifica modifica dello stato. | ||
| Perché è importante L’attivazione è una tappa fondamentale e irreversibile che conferma la validità dell’ordine. Segna il passaggio ufficiale delle attività dal reparto vendite a quello operativo ed è essenziale per monitorare i tempi di ciclo delle vendite. Dove reperirli Si deduce quando il campo standard 'Status' dell’oggetto 'Order' cambia in 'Attivato'. La data e l’ora sono registrate nella cronologia dei campi dell’oggetto 'Order'. Acquisizione Monitorare la cronologia dei campi dell’oggetto 'Order' per rilevare il passaggio dello stato a 'Attivato'. Tipo di evento inferred | |||
| Ordine chiuso | Indica il completamento e la chiusura definitiva dell’ordine di vendita nel sistema. Si deduce da un aggiornamento finale dello stato dell’ordine, che segnala che non sono necessarie altre attività. | ||
| Perché è importante È l’evento finale del percorso ottimale principale. Misurare il tempo totale fino a questa attività consente di calcolare il KPI 'Tempo medio dall’ordine alla chiusura'. Dove reperirli Si deduce quando il campo 'Status' dell’oggetto 'Order' cambia in un valore finale come 'Chiuso', 'Completato' o 'Evaso'. La data e l’ora sono disponibili nella cronologia dei campi. Acquisizione Monitorare la cronologia dei campi dell’oggetto 'Order' per rilevare il passaggio a uno stato finale di completamento. Tipo di evento inferred | |||
| Ordine creato | Indica la creazione iniziale di un record dell’ordine di vendita nel sistema. L’evento viene registrato esplicitamente quando un nuovo record dell’oggetto 'Order' viene salvato per la prima volta in Salesforce. | ||
| Perché è importante È l’evento iniziale principale del processo Order to Cash. Analizzare il tempo che intercorre da questo momento alle attività successive è fondamentale per comprendere i tempi di ciclo complessivi. Dove reperirli L’evento corrisponde alla creazione dell’oggetto 'Order'. La data e l’ora sono riportate nel campo standard 'CreatedDate' del record Order. Acquisizione Direttamente dalla data e ora 'CreatedDate' dell’oggetto 'Order'. Tipo di evento explicit | |||
| Pagamento ricevuto | Indica la conferma della ricezione e della riconciliazione del pagamento del cliente. In genere l’informazione viene aggiornata in Salesforce dal sistema finanziario tramite una modifica dello stato. | ||
| Perché è importante Questo evento segna la fase finale dell’incasso. Analizzare il tempo che intercorre tra l’invio della fattura e questo momento è fondamentale per gestire il flusso di cassa e i Giorni medi di incasso (DSO). Dove reperirli Si deduce quando lo stato dell’oggetto 'Invoice' cambia in 'Pagata' o 'Chiusa'. L’aggiornamento proviene da un’integrazione con un sistema contabile o di elaborazione dei pagamenti. Acquisizione Monitorare le modifiche dello stato dell’oggetto 'Invoice' provenienti dall’integrazione con un sistema finanziario esterno. Tipo di evento inferred | |||
| Fattura inviata al cliente | Indica che la fattura è stata inviata al cliente per il pagamento. In genere l’evento viene registrato tramite una modifica dello stato del record della fattura. | ||
| Perché è importante Questo evento avvia il calcolo del KPI 'Tempo di incasso'. Qualsiasi ritardo tra la creazione e l’invio della fattura posticipa direttamente l’inizio dei termini di pagamento. Dove reperirli Si deduce quando lo stato dell’oggetto 'Invoice' cambia in 'Inviata' o in un valore simile. È possibile utilizzare anche una voce nel registro delle attività relativa all’invio dell’e-mail. Acquisizione Monitorare il campo 'Status' dell’oggetto 'Invoice' correlato oppure cercare le attività registrate nel registro delle e-mail. Tipo di evento inferred | |||
| Ordine annullato | Indica che l’ordine è stato annullato prima del completamento dell’evasione. L’evento viene registrato tramite una modifica dello stato finale nel record dell’ordine. | ||
| Perché è importante È un’eccezione e un evento finale di particolare rilievo. Analizzare perché e quando vengono annullati gli ordini può far emergere problemi nel processo di vendita, nella disponibilità dei prodotti o nella solvibilità dei clienti. Dove reperirli Si deduce quando il campo 'Status' dell’oggetto 'Order' cambia in 'Annullato'. La data e l’ora sono disponibili nella cronologia del campo 'Status'. Acquisizione Monitorare la cronologia dei campi dell’oggetto 'Order' per rilevare il passaggio allo stato 'Annullato'. Tipo di evento inferred | |||
| Ordine approvato | Indica che tutte le parti richieste hanno approvato formalmente l’ordine di vendita e che questo può passare alla fase successiva. L’evento si rileva osservando la fase finale di approvazione nel flusso di lavoro o il corrispondente aggiornamento dello stato. | ||
| Perché è importante È una tappa fondamentale che consente di avviare il processo di evasione. I ritardi nell’approvazione possono incidere sensibilmente sul tempo di ciclo complessivo dall’ordine all’incasso. Dove reperirli Si deduce quando il campo dello stato dell’oggetto 'Order' cambia valore, ad esempio in 'Approvato'. Può anche essere ricavato dalla data di completamento del record 'ProcessInstance' associato. Acquisizione Monitorare il campo 'Status' dell’oggetto 'Order' oppure il completamento della cronologia del processo di approvazione. Tipo di evento inferred | |||
| Ordine inviato al reparto evasione | Segna il passaggio dell’ordine attivato a un magazzino o a un sistema di evasione, per il prelievo e l’imballaggio. In genere viene registrato tramite una modifica dello stato dell’ordine attivata da un’integrazione. | ||
| Perché è importante Questo evento separa la parte commerciale da quella logistica del processo. Monitorare il tempo che intercorre dall’attivazione a questo momento aiuta a distinguere i ritardi amministrativi da quelli legati alle attività di magazzino. Dove reperirli Si deduce quando lo stato dell’oggetto 'Order' cambia in un valore come 'Inviato al reparto evasione' o 'In attesa di spedizione'. La modifica dello stato è spesso attivata da un’integrazione con un sistema ERP o WMS. Acquisizione Monitorare il campo 'Status' dell’oggetto 'Order' per rilevare i valori che indicano il passaggio al reparto evasione. Tipo di evento inferred | |||
| Ordine inviato per l’approvazione | Indica il momento in cui una bozza d’ordine viene inviata al flusso di lavoro formale di approvazione. In genere si deduce da una modifica dello stato dell’ordine o dalla creazione di un record nella cronologia del processo di approvazione di Salesforce. | ||
| Perché è importante Monitorare gli invii consente di misurare quanto tempo gli ordini restano in attesa di approvazione e l’efficienza del processo di revisione. Aiuta inoltre a individuare i colli di bottiglia che precedono l’approvazione. Dove reperirli Si deduce da una modifica dello stato dell’oggetto 'Order' (ad esempio, da 'Bozza' a 'Inviato per l’approvazione') oppure monitorando la data di invio nell’oggetto 'ProcessInstance' associato all’ordine. Acquisizione Monitorare le modifiche al campo dello stato oppure interrogare l’oggetto 'ProcessInstance'. Tipo di evento inferred | |||
| Scorte allocate | Indica che i prodotti dell’ordine sono stati riservati nel sistema di gestione delle scorte. In genere l’evento proviene da un sistema ERP o di gestione delle scorte esterno e viene registrato in Salesforce tramite una modifica di campo. | ||
| Perché è importante Questa attività è fondamentale per analizzare il KPI 'Tempo di attraversamento dell’allocazione delle scorte'. I ritardi in questa fase incidono direttamente sulla possibilità di spedire gli ordini in tempo. Dove reperirli Richiede un’analisi dei sistemi. Spesso si deduce da un aggiornamento dello stato degli oggetti 'Order' o 'OrderItem', oppure dalla compilazione del campo personalizzato 'Allocation_Date__c' tramite un’integrazione. Acquisizione Monitorare le modifiche ai campi dello stato o della data degli oggetti Order o OrderItem provenienti da un’integrazione ERP. Tipo di evento inferred | |||
| Verifica del credito effettuata | Indica il completamento della verifica della solvibilità del cliente associato all’ordine. Spesso si tratta di un evento dedotto, registrato quando un campo personalizzato, come 'Credit Check Status', viene aggiornato a 'Superato' o 'Completato'. | ||
| Perché è importante Questa attività è spesso una fonte significativa di ritardi. Misurarne la durata e i tempi di attesa è fondamentale per intervenire sul Dashboard 'Analisi dei colli di bottiglia della verifica del credito' e migliorare il flusso di cassa. Dove reperirli Si deduce da una data e ora o da una modifica dello stato in un campo personalizzato dell’oggetto 'Order' o dell’oggetto correlato 'Account', ad esempio 'Credit_Check_Date__c' o 'Credit_Status__c'. Acquisizione Monitorare gli aggiornamenti dei campi personalizzati che indicano il completamento della verifica del credito. Tipo di evento inferred | |||
Guide all’estrazione
Passaggi
- Prerequisito: configurare il monitoraggio della cronologia dei campi: prima di creare i report, un amministratore Salesforce deve verificare che il monitoraggio della cronologia dei campi sia attivo per l’oggetto Order. In particolare, occorre monitorare il campo Status e gli eventuali campi personalizzati usati per indicare gli eventi, ad esempio Credit_Check_Status__c o Fulfillment_Status__c. La configurazione si esegue da Setup > Object Manager > Order > Fields & Relationships > Set History Tracking.
- Creare un tipo di report personalizzato: per accedere ai dati sulle modifiche dei campi insieme ai dettagli degli ordini, crei un tipo di report personalizzato. Vada in Setup > Report Types e crei un nuovo tipo di report con Orders come oggetto principale. Aggiunga quindi Order History come oggetto secondario e imposti la relazione su "'A' records may or may not have related 'B' records." In questo modo il report includerà tutti gli ordini, anche quelli senza cronologia. Salvi il tipo di report con il nome "Orders with History".
- Creare il report principale degli eventi: apra la scheda Reports e faccia clic su New Report. Selezioni il tipo di report "Orders with History". Il report raccoglierà tutte le attività basate sulle modifiche dei campi.
- Configurare le colonne del report degli eventi: aggiunga le colonne seguenti: Order: Order Number (per SalesOrderId), Edit Date (per EventTime), User (per UserPerformingAction), Field/Event (il campo modificato), Original Value e New Value. Aggiunga anche altre colonne dell’oggetto Order principale, ad esempio Order: Total Amount, Account: Account Name e Order: Company Authorized By Date (come valore sostitutivo di RequestedDeliveryDate, se applicabile).
- Applicare i filtri al report degli eventi: imposti il filtro Show Me su All orders e il campo data su Created Date, selezionando l’intervallo desiderato, ad esempio Last 3 Months. Aggiunga un filtro alla colonna Field/Event per includere solo le modifiche ai campi corrispondenti alle attività da analizzare, ad esempio Status e Credit_Check_Status__c.
- Creare il report "Order Created": crei un secondo report più semplice usando il tipo di report standard Orders. Questo report deve acquisire solo l’evento di creazione. Aggiunga le colonne Order Number, Created Date, Created By, Status, Total Amount e Account Name. Filtri per Created Date in base all’intervallo desiderato.
- Esportare entrambi i report: esegua i due report e selezioni Export. Scelga il formato Details Only e Comma Delimited .csv.
- Unire e trasformare i dati: apra i file CSV esportati con un programma per fogli di calcolo, come Microsoft Excel, oppure utilizzi un linguaggio di scripting come Python.
- Per il report "Events", crei una nuova colonna ActivityName. Utilizzi formule o uno script per associare i dati sulle modifiche dei campi ai nomi delle attività desiderati. Ad esempio, se Field/Event è 'Status' e New Value è 'Activated', imposti ActivityName su 'Order Activated'.
- Per il report "Order Created", aggiunga una colonna ActivityName e imposti il valore su 'Order Created' per tutte le righe. Rinomini le colonne in modo che corrispondano allo schema dell’Event Log, ad esempio Order Number -> SalesOrderId e Created Date -> EventTime.
- Unire i dati in un unico Event Log: aggiunga le righe dei dati trasformati di "Order Created" a quelle dei dati trasformati di "Events". Otterrà così un elenco unico di tutte le attività.
- Preparare il file per il caricamento: aggiunga le colonne obbligatorie rimanenti: SourceSystem (con il valore statico 'Salesforce Sales Cloud') e LastDataUpdate (con la data e l’ora correnti). Verifichi le intestazioni e i formati di tutte le colonne, quindi salvi il file finale in formato CSV, pronto per il caricamento.
Configurazione
- Tipi di report: per acquisire le modifiche allo stato e agli altri campi come eventi distinti, è essenziale creare un tipo di report personalizzato che unisca Orders e Order History.
- Monitoraggio della cronologia dei campi: questo metodo richiede che il monitoraggio della cronologia dei campi sia attivo per l’oggetto Order prima di iniziare l’estrazione dei dati. È necessario monitorare i campi principali, come Status, e gli eventuali campi personalizzati che rappresentano fasi del processo.
- Filtri per intervallo di date: utilizzi Created Date dell’oggetto Order come filtro principale, così da analizzare un gruppo omogeneo di ordini. Per l’analisi iniziale è consigliato un intervallo di 3-6 mesi.
- Servizio di esportazione dei dati: negli ambienti con volumi elevati, è possibile programmare l’esportazione dei dati (settimanale o mensile) tramite Data Export Service per gli oggetti specificati (Order, OrderHistory, Account). Si ottengono dati grezzi che richiedono ulteriori elaborazioni e unioni esterne, ma si evitano i timeout e i limiti di righe del generatore interattivo di report.
- Autorizzazioni: gli utenti che eseguono l’estrazione devono poter eseguire ed esportare report e visualizzare tutti i dati degli oggetti Order e Account. Per configurare Data Export Service sono necessari i privilegi di amministratore di sistema.
- Struttura dei report: per semplificare l’esportazione e l’elaborazione, imposti i report nel formato Tabular. Eviti i formati di riepilogo o matrice.
Query di esempio sql
/*
Salesforce Reports are configured through the user interface. This section describes the configuration of the necessary reports and the logic for post-processing. It is not an executable script.
*/
// ======== REPORT 1: Order Creation Events ========
{
"ReportName": "O2C - Order Created",
"ReportType": "Orders",
"Format": "Tabular",
"Filters": [
{
"Field": "Created Date",
"Operator": "equals",
"Value": "[Specify Date Range, e.g., LAST 90 DAYS]"
}
],
"Columns": [
{"SourceField": "Order Number", "OutputAs": "SalesOrderId"},
{"StaticValue": "Order Created", "OutputAs": "ActivityName"},
{"SourceField": 'Created Date', "OutputAs": "EventTime"},
{"SourceField": "Last Modified By: Full Name", "OutputAs": "UserPerformingAction"},
{"SourceField": "Status", "OutputAs": "OrderStatus"},
{"SourceField": "Total Amount", "OutputAs": "TotalOrderAmount"},
{"SourceField": "Account: Account Name", "OutputAs": "AccountName"},
{"SourceField": "[Your Requested Delivery Date Field]", "OutputAs": "RequestedDeliveryDate"}
]
}
// ======== REPORT 2: Order Field Change Events ========
{
"ReportName": "O2C - Order History Events",
"ReportType": "Orders with History (Custom)",
"Format": "Tabular",
"Filters": [
{
"Field": "Order: Created Date",
"Operator": "equals",
"Value": "[Specify Date Range, e.g., LAST 90 DAYS]"
},
{
"Field": "Field/Event",
"Operator": "in",
"Value": ["Status", "[Credit Check Status Field]", "[Inventory Status Field]", "[Fulfillment Status Field]", "[Shipping Status Field]", "[Delivery Status Field]", "[Invoice Status Field]", "[Payment Status Field]"]
}
],
"Columns": [
{"SourceField": "Order: Order Number", "OutputAs": "SalesOrderId"},
{"SourceField": "Edit Date", "OutputAs": "EventTime"},
{"SourceField": "User", "OutputAs": "UserPerformingAction"},
{"SourceField": "Field/Event", "OutputAs": "SourceFieldForActivity"},
{"SourceField": "New Value", "OutputAs": "SourceValueForActivity"},
{"SourceField": "Order: Total Amount", "OutputAs": "TotalOrderAmount"},
{"SourceField": "Account: Account Name", "OutputAs": "AccountName"}
]
}
// ======== EXTERNAL TRANSFORMATION LOGIC (to be applied after export) ========
/*
- Combine the two exported files.
- For the 'Order History Events' data, create the 'ActivityName' and 'OrderStatus' columns based on the following mapping logic:
CASE
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Submitted' THEN 'Order Submitted for Approval'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Approved' THEN 'Order Approved'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Activated' THEN 'Order Activated'
WHEN SourceFieldForActivity = '[Fulfillment Status Field]' AND SourceValueForActivity = 'Sent to Fulfillment' THEN 'Order Sent to Fulfillment'
WHEN SourceFieldForActivity = '[Shipping Status Field]' AND SourceValueForActivity = 'Shipped' THEN 'Goods Shipped'
WHEN SourceFieldForActivity = '[Delivery Status Field]' AND SourceValueForActivity = 'Delivered' THEN 'Goods Delivered'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Closed' THEN 'Order Closed'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Cancelled' THEN 'Order Cancelled'
WHEN SourceFieldForActivity = '[Credit Check Status Field]' AND SourceValueForActivity = 'Passed' THEN 'Credit Check Performed'
WHEN SourceFieldForActivity = '[Inventory Status Field]' AND SourceValueForActivity = 'Allocated' THEN 'Inventory Allocated'
WHEN SourceFieldForActivity = '[Invoice Status Field]' AND SourceValueForActivity = 'Created' THEN 'Invoice Created'
WHEN SourceFieldForActivity = '[Invoice Status Field]' AND SourceValueForActivity = 'Sent' THEN 'Invoice Sent to Customer'
WHEN SourceFieldForActivity = '[Payment Status Field]' AND SourceValueForActivity = 'Received' THEN 'Payment Received'
ELSE 'Unknown'
END AS ActivityName
- The OrderStatus attribute should be populated with the 'New Value' when the changed field was 'Status'. For other events, you may need to look up the order's status at that point in time, which is a limitation of this method.
- Add 'SourceSystem' and 'LastDataUpdate' columns to the final combined dataset.
*/ È pronto a iniziare?
Inizi oggi a ottimizzare il processo Order to Cash - elaborazione degli ordini di vendita preparando i dati con questo template. Ottenga informazioni utili per rendere più efficienti le operazioni e migliorare la gestione dei flussi di cassa.
Migliori i flussi di cassa: ottimizzi subito l’elaborazione degli ordini di vendita nel processo Order to Cash
Individui le inefficienze, riduca del 30% il tempo di ciclo e acceleri i flussi di cassa.
Non è richiesta la carta di credito • Inizi in pochi minuti