Template dati: Order to Cash - Sales Order Processing
Il Suo Template di Dati per l'Elaborazione degli Ordini di Vendita nel Ciclo Dall'Ordine all'Incasso.
- Attributi consigliati da raccogliere
- Attività chiave da tracciare
- Guida all’estrazione dei dati per Salesforce Sales Cloud
Dall'ordine all'incasso - Attributi della gestione degli ordini di vendita
| Nome | Descrizione | ||
|---|---|---|---|
Nome attività ActivityName | Il nome dello specifico evento di business o dell’attività svolta nel ciclo di vita dell’ordine di vendita. | ||
Descrizione L’Activity Name descrive una fase del processo degli ordini di vendita, ad esempio 'Order Created', 'Credit Check Performed' o 'Invoice Sent'. Queste attività sono gli elementi fondamentali della mappa di processo e derivano da eventi di sistema, cambi di stato o completamento di attività. Analizzarle consente di visualizzare il flusso del processo, individuare i percorsi ricorrenti (varianti) e misurare la frequenza e la durata di ciascun passaggio. È fondamentale per capire cosa accade nel processo. Perché è importante Questo attributo definisce i passaggi nella mappa di processo. Senza questo attributo non è possibile visualizzare il flusso del processo né analizzare come vengono realmente gestiti gli ordini di vendita. Dove trovare In genere deriva da variazioni nel campo 'Order.Status', dalla creazione di record correlati (es. 'Invoice') o da record 'Task' o 'Event' completati e collegati all'oggetto 'Order'. Esempi Ordine CreatoOrdine approvatoMerce speditaPagamento ricevuto | |||
Ordine di vendita SalesOrderId | L’identificativo univoco di ciascun ordine di vendita, che funge da caso principale per tracciare l’intero processo da ordine a incasso. | ||
Descrizione Il Sales Order ID è la pietra angolare dell’analisi di processo: identifica in modo univoco ciascun ordine cliente lungo tutto il ciclo di vita. Collega tutte le attività associate, dalla creazione e approvazione fino all’evasione e al pagamento. Nel Process Mining ogni evento legato a uno specifico ordine è ricondotto a questo ID. Ciò permette di ricostruire end‑to‑end il percorso dell’ordine ed effettuare analisi dettagliate su tempi di ciclo, varianti di processo e colli di bottiglia per i singoli ordini. Perché è importante Questo attributo è essenziale per raggruppare tutti gli eventi correlati in un unico caso, rendendo possibile visualizzare e analizzare il flusso end-to-end per ciascun ordine di vendita. Dove trovare È il campo 'Id' sull'oggetto standard 'Order' di Salesforce. Esempi 8018d000000XwPBAA08018d000000Y1qCAAS8018d000000Z3kDAB1 | |||
Timestamp Evento EventTime | La data e l'ora esatte in cui si è verificata l'attività. | ||
Descrizione L’Event Time (timestamp) registra il momento esatto in cui si è svolta un’attività. Questi dati sono essenziali per ordinare correttamente gli eventi e calcolare le durate tra le attività, la base di ogni analisi di Process Mining basata sul tempo. Questo attributo serve per ordinare le attività per ciascun caso, calcolare i tempi di ciclo, identificare i tempi di attesa e analizzare le prestazioni del processo su periodi temporali diversi. Timestamp imprecisi o mancanti possono limitare fortemente l’utilità dell’analisi. Perché è importante I timestamp sono essenziali per ordinare gli eventi in sequenza cronologica e calcolare tutte le metriche di performance, come i tempi di ciclo e i colli di bottiglia. Dove trovare Corrisponde a campi come 'CreatedDate' o 'LastModifiedDate' sull'oggetto 'Order' o sui 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 | |||
Sistema di Origine SourceSystem | Identifica il sistema da cui i dati sono stati estratti. | ||
Descrizione Questo attributo specifica l'origine dei dati di processo. Per questa analisi sarà sempre 'Salesforce Sales Cloud'. In ambienti con più sistemi, questo campo è fondamentale per la data lineage e per il troubleshooting. Anche in un contesto con un solo sistema, fornisce metadati importanti sull'origine dei dati. Perché è importante Fornisce un contesto essenziale sull’origine dei dati, importante per la governance dei dati e quando si integrano dati da più sistemi sorgente. Dove trovare Di solito è un valore statico aggiunto durante il processo di estrazione dei dati per etichettare il dataset. Esempi Salesforce Sales Cloud | |||
Ultimo Data Update LastDataUpdate | Il timestamp che indica quando i dati sono stati estratti o aggiornati l’ultima volta. | ||
Descrizione Questo attributo registra data e ora dell'estrazione più recente dal sistema sorgente. Fornisce un contesto cruciale sulla freschezza dei dati analizzati. Gli analisti utilizzano questo dato per capire se stanno visualizzando i dati di processo più aggiornati e per valutarne la rilevanza. È un metadato chiave per qualsiasi progetto di Process Mining. Perché è importante Informa gli utenti sul livello di aggiornamento dei dati, così da chiarire quanto sia attuale l'analisi. Dove trovare È un timestamp generato e aggiunto durante il processo di estrazione, trasformazione e caricamento (ETL) dei dati. Esempi 2023-11-01T05:00:00Z | |||
Data di consegna richiesta RequestedDeliveryDate | La data di consegna dell’ordine richiesta dal cliente. | ||
Descrizione Questo attributo memorizza la data in cui il cliente si aspetta di ricevere la merce. È un riferimento critico per misurare le performance di consegna e la soddisfazione del cliente. Questa data è utilizzata direttamente nella dashboard 'Delivery Date Adherence Tracking' e nel KPI 'On-Time Delivery Rate'. Viene confrontata con la data di consegna effettiva (timestamp di 'Goods Delivered') per stabilire se l'ordine è stato consegnato in orario, in anticipo o in ritardo. Perché è importante È il riferimento principale per misurare la puntualità delle consegne, un indicatore chiave della soddisfazione del cliente e dell'efficacia operativa. Dove trovare Spesso è un campo data personalizzato sull'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 | Il valore monetario totale dell’ordine di vendita. | ||
Descrizione Questo attributo rappresenta l'importo totale dell'ordine del cliente. È una metrica chiave per comprendere l'impatto sul business di efficienze o inefficienze di processo. Nell'analisi, l'importo totale dell'ordine può essere utilizzato per segmentare i casi, ad esempio per verificare se gli ordini di alto valore vengono gestiti in modo diverso o subiscono più ritardi rispetto a quelli di basso valore. È inoltre fondamentale per calcolare i KPI finanziari e comprendere il valore che scorre nel processo. Perché è importante Abilita l'analisi finanziaria del processo, consentendo di segmentare gli ordini per valore e di quantificare l'impatto monetario di ritardi o rilavorazioni. Dove trovare È il campo 'TotalAmount' sull'oggetto standard 'Order' di Salesforce. Esempi 5400.50125000.00950.75 | |||
Nome account AccountName | Il nome del cliente o dell’azienda che ha effettuato l’ordine di vendita. | ||
Descrizione L’Account Name identifica il cliente associato all’ordine di vendita. Consente un’analisi del processo in ottica customer‑centric. Utilizzando questo attributo, gli analisti possono filtrare il processo per clienti specifici, confrontare le prestazioni tra segmenti di clientela diversi o verificare se alcuni clienti incontrano regolarmente problemi di processo. È fondamentale per collegare direttamente le prestazioni del processo all’esperienza del cliente. Perché è importante Collega le prestazioni del processo a clienti specifici, abilitando analisi e segmentazioni per individuare schemi ricorrenti o criticità a livello di cliente. Dove trovare L’oggetto 'Order' ha un campo di lookup 'AccountId'. Questo ID deve essere collegato all’oggetto 'Account' per recuperare il campo 'Account.Name'. Esempi Global Tech Inc.Innovate Solutions LLCVenture Dynamics | |||
Stato dell'ordine OrderStatus | Lo stato dell’ordine di vendita al momento dell’evento. | ||
Descrizione Questo attributo registra lo stato dell'ordine di vendita, ad esempio 'Draft', 'Activated', 'Shipped' o 'Closed'. I cambi di stato sono spesso all'origine della generazione delle attività nel log di processo. Analizzare lo stato dell'ordine fornisce contesto a ogni evento ed è cruciale per tracciare l'avanzamento di un ordine. Aiuta a comprendere l'esito dei casi, ad esempio distinguendo gli ordini 'Cancelled' da quelli 'Closed'. Perché è importante Fornisce un contesto decisivo per ogni evento ed è spesso la base per definire le attività. È inoltre fondamentale per analizzare gli esiti dei casi, come le cancellazioni. Dove trovare È il campo picklist 'Status' sull'oggetto standard 'Order' di Salesforce. Esempi BozzaAttivatoSpeditoChiusoAnnullata | |||
Tempo di ciclo totale CycleTime | Il tempo totale trascorso dalla creazione dell’ordine di vendita alla sua chiusura definitiva. | ||
Descrizione Il Tempo di ciclo totale è un indicatore chiave che misura la durata end-to-end del processo di ordine di vendita. Si calcola come differenza tra il primo evento (es. 'Order Created') e l'ultimo evento (es. '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 e a misurare l'impatto delle iniziative di miglioramento. Le variazioni del tempo di ciclo si possono approfondire segmentando i dati per altri Attributi, come paese o famiglia di prodotto. Perché è importante È un KPI fondamentale per misurare l'efficienza complessiva del processo e individuare gli ordini con durata eccessiva che possono segnalare problemi sistemici. Dove trovare Calcolato durante la trasformazione dei dati sottraendo il timestamp del primo evento da quello dell'ultimo evento per ciascun 'SalesOrderId'. Esempi 10 giorni 4 ore25 giorni e 11 ore5 giorni 2 ore | |||
Utente che esegue l'azione UserPerformingAction | Il 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 commerciale, di un analista del credito o di un utente di sistema automatizzato. Un'analisi basata su questo attributo è 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 sono più rapidi nelle approvazioni?'. È utilizzato anche nella Social Network Analysis per capire come il lavoro viene trasferito tra le persone. Perché è importante Consente l'analisi delle performance per utente, team o ruolo e aiuta a individuare opportunità di automazione o esigenze formative. Dove trovare Può trovarsi in campi come 'LastModifiedById' sull'oggetto 'Order' o 'OwnerId' sui record 'Task'. Questi ID vanno uniti all'oggetto 'User' per ottenere il nome dell'utente. Esempi Alice SmithBob JohnsonAutomazione di sistemaTeam crediti | |||
Canale di vendita SalesChannel | Il canale attraverso il quale è stato inserito l’ordine di vendita, ad esempio 'Web', 'Vendita diretta' o 'Partner'. | ||
Descrizione L’attributo Sales Channel categorizza gli ordini in base al canale di origine. Ciò consente analisi comparative delle prestazioni di processo tra canali differenti. È fondamentale per la dashboard 'Confronto prestazioni dei canali di vendita'. Filtrando o confrontando per canale, le aziende possono individuare i canali più efficienti, quelli con più rilavorazioni e dove servono interventi di standardizzazione per allineare le prestazioni. Perché è importante Consente di confrontare le performance tra diversi canali di business, aiutando a individuare le migliori pratiche e le aree per armonizzare i processi. Dove trovare Di norma è un campo picklist personalizzato sull'oggetto 'Order' o 'Opportunity'. Consultare la documentazione o lo schema di Salesforce Sales Cloud. Esempi Vendita direttaPortale WebRete partnerVendite interne | |||
Consegna puntuale IsOnTimeDelivery | Un indicatore che segnala se la merce è stata consegnata alla data richiesta dal cliente o prima. | ||
Descrizione Questo attributo booleano misura direttamente le prestazioni di consegna rispetto alle aspettative del cliente. È calcolato confrontando il timestamp dell'attività 'Goods Delivered' con 'RequestedDeliveryDate'. È il calcolo alla base del KPI 'On-Time Delivery Rate'. L'analisi di questo flag aiuta le organizzazioni a comprendere affidabilità e rispetto degli impegni, fattori chiave della soddisfazione del cliente. Combinato con altri attributi, può rivelare se determinati metodi di spedizione o regioni hanno tassi di puntualità inferiori. Perché è importante Offre una misura chiara e binaria delle prestazioni rispetto agli impegni presi con il cliente, supportando direttamente il KPI di puntualità di consegna. Dove trovare Calcolato durante la trasformazione dei dati. La logica è: IF ('Goods Delivered' EventTime <= 'RequestedDeliveryDate') THEN true ELSE false. Esempi truefalse | |||
Durata dell'incasso PaymentCollectionDuration | Il tempo trascorso tra l’invio della fattura al cliente e la ricezione del pagamento. | ||
Descrizione Questa metrica calcolata misura l'efficienza della fase finale e cruciale del ciclo dall'ordine all'incasso: incassare il pagamento. È la durata tra l'attività 'Invoice Sent to Customer' e l'attività 'Payment Received'. Questa metrica supporta direttamente la dashboard 'Payment Collection Duration' e il KPI 'Payment Realization Time'. Analizzare questa durata aiuta la funzione Finance a individuare 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 incasso crediti (contabilità clienti), con impatto diretto sul flusso di cassa dell'azienda. Dove trovare Calcolato durante la trasformazione dei dati sottraendo il timestamp dell'evento 'Invoice Sent to Customer' da quello di 'Payment Received' per ciascun caso. Esempi 30 giorni15 giorni e 8 ore45 giorni | |||
È Automatizzato IsAutomated | Un indicatore che specifica se l'attività è stata eseguita da un processo di sistema o da un utente umano. | ||
Descrizione Questo attributo booleano distingue tra eventi attivati dall'automazione di sistema, come un aggiornamento di stato automatico, e quelli eseguiti manualmente da un utente. È cruciale per comprendere il livello di automazione del processo. Analizzare questo attributo aiuta a quantificare l'impatto dell'automazione su efficienza e coerenza. Consente di confrontare i percorsi automatizzati con quelli manuali e può evidenziare opportunità di ulteriore automazione per ridurre lo sforzo manuale e il potenziale di errore. Perché è importante Aiuta a distinguere tra azioni di sistema e azioni utente, elemento cruciale per analizzare l’automazione e individuare opportunità per ridurre il lavoro manuale. Dove trovare Derivato durante la trasformazione dei dati verificando se 'UserPerformingAction' è un utente di sistema designato o tramite regole basate sul tipo di attività. Esempi truefalse | |||
È una Rilavorazione IsRework | Un indicatore che segnala se l'ordine di vendita ha subito una rilavorazione, ad esempio un'attività ripetuta o un ciclo nel processo. | ||
Descrizione Questo attributo calcolato identifica i casi che deviano da un avanzamento lineare. Si ha rilavorazione quando un'attività si ripete o quando il processo torna a una fase precedente, spesso per errori, informazioni mancanti o approvazioni respinte. Questo flag viene utilizzato per calcolare il KPI 'Sales Order Rework Rate' e per alimentare la dashboard 'Sales Order Rework and Error Rate'. Aiuta a quantificare frequenza e impatto delle inefficienze, indicando le aree che richiedono controlli di qualità più efficaci o chiarimenti sul processo. Perché è importante Quantifica le inefficienze di processo segnalando gli ordini che richiedono lavoro extra e non pianificato, con impatto diretto su costi e tempo di ciclo. Dove trovare Calcolato dal software di Process Mining o durante la trasformazione dei dati rilevando nomi di attività ripetuti o flussi di processo a ritroso per un determinato caso. Esempi truefalse | |||
Famiglia di prodotti ProductFamily | La categoria o famiglia a cui appartengono i prodotti presenti nell’ordine. | ||
Descrizione La Product Family fornisce una classificazione di alto livello degli articoli inclusi nell’ordine di vendita. Consente di analizzare il processo in base al tipo di prodotto venduto. Questo attributo può essere usato per segmentare il processo e capire se alcune famiglie di prodotto seguono percorsi diversi, hanno tempi di ciclo più lunghi o tassi di rilavorazione più elevati. Ad esempio, i prodotti complessi e configurabili possono seguire un processo di approvazione ed evasione più articolato rispetto ai prodotti standard a catalogo. Perché è importante Consente un'analisi del processo per categoria di prodotto, evidenziando se tipologie diverse generano variazioni nell'efficienza del processo. Dove trovare Recuperato dall’oggetto 'Product2', collegato a 'Order' tramite l’oggetto di giunzione 'OrderItem'. Richiede la join Order -> OrderItem -> PricebookEntry -> Product2. Esempi HardwareLicenze softwareServizi professionaliContratti di supporto | |||
ID Fattura InvoiceId | L’identificativo univoco della fattura associata all’ordine di vendita. | ||
Descrizione L’Invoice ID 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 è cruciale per tracciare il processo dall’evasione dell’ordine al pagamento. 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, consentendo il tracciamento accurato delle attività finanziarie e dei tempi del ciclo di pagamento. Dove trovare Spesso è un campo lookup personalizzato sull'oggetto 'Order' che punta a un oggetto 'Invoice' standard o personalizzato. L'implementazione esatta varia. Esempi INV-001234INV-001235INV-001236 | |||
Metodo di spedizione ShippingMethod | Il metodo di spedizione selezionato per la merce, ad esempio 'Terrestre standard', 'Express' o 'Internazionale'. | ||
Descrizione Questo attributo indica il livello di servizio logistico scelto per la consegna dell'ordine. Incide direttamente su tempi di consegna e costi. Nella dashboard 'Shipping Method Efficiency Analysis', questo attributo si utilizza per confrontare le prestazioni delle diverse opzioni di spedizione. Aiuta a capire se le spedizioni express rispettano gli impegni sui tempi e come i diversi metodi influenzano la durata complessiva da 'Goods Shipped' a 'Goods Delivered'. Perché è importante Consente di analizzare le performance logistiche, aiutando a valutare costi ed efficienza delle diverse opzioni di spedizione. Dove trovare È probabilmente un campo personalizzato sull'oggetto 'Order' o su un oggetto 'Shipment' personalizzato correlato. Consultare la documentazione o lo schema di Salesforce Sales Cloud. Esempi Terrestre standardExpress 2 giorniSpedizione aerea overnightPriorità internazionale | |||
Ora Fine Evento EventEndTime | La data e l’ora esatte in cui l’attività è stata completata. | ||
Descrizione L’Event End Time indica il completamento di un’attività. Sebbene molti strumenti di Process Mining lo deducano dall’orario di inizio dell’attività successiva, rilevarlo in modo esplicito consente una misurazione più accurata della durata, soprattutto per attività di lunga durata. Questo attributo serve a calcolare con precisione il tempo di lavorazione di un’attività. È particolarmente utile per analizzare attività con durata significativa, come 'Credit Check Performed' o 'Inventory Allocated', aiutando a distinguere il tempo di lavorazione attiva dai tempi di attesa. Perché è importante Consente di calcolare con precisione i tempi di esecuzione delle singole attività, fondamentale per individuare i colli di bottiglia e le fasi ad alta intensità di risorse. Dove trovare Può essere derivato dallo 'StartTime' dell'evento successivo nella sequenza per un dato 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 | Il Paese di destinazione della spedizione dell’ordine di vendita. | ||
Descrizione Questo attributo specifica il Paese verso cui l'ordine viene spedito. È una dimensione chiave per l'analisi geografica del processo dall'ordine all'incasso. Analizzare per Paese di destinazione può mettere in luce differenze regionali nelle prestazioni di processo, come tempi di consegna più lunghi per gli ordini internazionali o variazioni nei cicli di incasso. Consente di segmentare il processo per comprendere e affrontare criticità specifiche per area. Perché è importante Consente la segmentazione geografica del processo, mettendo in evidenza differenze di performance regionali, temi di conformità o sfide logistiche. Dove trovare È il campo 'ShippingCountry' sull'oggetto standard 'Order' di Salesforce. Esempi Stati UnitiGermaniaGiapponeBrasile | |||
Proprietario dell'ordine OrderOwner | L’utente principale responsabile della gestione dell’ordine di vendita. | ||
Descrizione L’Order Owner è il commerciale o l’account manager con responsabilità primaria sull’ordine. Si distingue dall’utente che esegue una specifica azione, poiché l’owner è responsabile dell’avanzamento complessivo dell’ordine. L’analisi per owner aiuta a valutare carichi di lavoro e prestazioni, a livello di team o individuali, nella gestione del portafoglio ordini. Può evidenziare quali owner hanno ordini che si bloccano spesso o richiedono rilavorazioni, indicando possibili opportunità di coaching. Perché è importante Identifica il responsabile del buon esito dell’ordine, consentendo di analizzare carico di lavoro e prestazioni per proprietario. Dove trovare È il campo 'OwnerId' sull'oggetto 'Order'. Questo ID può essere collegato all'oggetto 'User' per ottenere il nome del proprietario. Esempi Jane DoeJohn SmithTeam vendite Est | |||
Stato della verifica del credito CreditCheckStatus | L’esito del processo di verifica del credito relativo all’ordine. | ||
Descrizione Questo attributo indica l'esito della valutazione del credito del cliente, spesso un passaggio critico nel processo d'ordine. I valori più comuni sono 'Approved', 'Rejected' o 'Pending'. È essenziale per la dashboard 'Credit Check Bottleneck Analysis'. Tracciando quando un ordine entra ed esce dalla fase di verifica del credito e il suo stato finale, le organizzazioni possono misurare la durata e l'esito di questo passaggio, individuandolo come potenziale fonte di ritardo. Perché è importante Supporta direttamente l'analisi della fase di verifica del credito, aiutando a misurarne la durata, il tasso di successo e l'impatto sul tempo di ciclo complessivo. Dove trovare È probabilmente un campo personalizzato sull'oggetto 'Order' o 'Account'. Consultare la documentazione o lo schema di Salesforce Sales Cloud. Esempi ApprovatoRifiutatoIn attesa di revisioneNon Richiesto | |||
Tempo di Elaborazione ProcessingTime | La durata di una singola attività, che rappresenta il tempo di lavoro attivo. | ||
Descrizione Il tempo di lavorazione è il tempo speso lavorando attivamente su un’attività, calcolato come differenza tra l’ora di fine e quella di inizio. Si distingue dal tempo di attesa, cioè l’intervallo inattivo tra attività. Questa metrica è fondamentale per l’analisi dei colli di bottiglia, ad esempio per l’attività 'Credit Check Performed'. Isolando il solo tempo di lavorazione, gli analisti possono capire se i ritardi sono causati da un’esecuzione inefficiente del task oppure da lunghe code prima dell’avvio dell’attività. Perché è importante Isola il tempo di lavoro effettivo di una specifica attività, aiutando a distinguere attività poco efficienti da lunghi tempi di attesa. Dove trovare Calcolato durante la trasformazione dei dati sottraendo 'EventTime' (StartTime) da 'EventEndTime'. Esempi 5 minuti2 ore 15 minuti45 secondi | |||
Dall'ordine all'incasso - Attività di gestione degli ordini di vendita
| Activity | Descrizione | ||
|---|---|---|---|
Fattura Creata | Rappresenta la generazione della fattura fiscale per l’ordine di vendita. Può essere rilevato dalla creazione di un oggetto 'Invoice' correlato, nativamente tramite Salesforce Billing o tramite un’integrazione. | ||
Perché è importante Questa tappa segna l'inizio della fase di incasso. Il tempo tra consegna e fatturazione può far emergere colli di bottiglia amministrativi che impattano sul flusso di cassa. Dove trovare Deducibile dalla data di creazione di un oggetto 'Invoice' (standard o personalizzato) collegato all’oggetto 'Order'. Acquisisci Utilizzi il '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 vettore e viene riportata in Salesforce. | ||
Perché è importante Questo evento è essenziale per calcolare il KPI 'On-Time Delivery Rate' e misurare i tempi di ciclo effettivi lato cliente. Conferma che il processo di evasione si è concluso. Dove trovare Deducibile dalla compilazione del campo 'Delivery Date' sull’oggetto 'Order' o su un oggetto personalizzato 'Shipment'. Questi dati sono in genere forniti tramite un’integrazione con un operatore di logistica per le spedizioni. Acquisisci Utilizzi il timestamp nel momento in cui viene valorizzato un campo data di consegna. Tipo di evento inferred | |||
Merce spedita | Rappresenta il momento in cui l’ordine è stato fisicamente spedito dal magazzino al cliente. Quasi sempre questo evento viene acquisito tramite un aggiornamento da un sistema di spedizione o ERP esterno in Salesforce. | ||
Perché è importante È una tappa fondamentale per misurare la "Percentuale di spedizioni puntuali" e l'efficienza complessiva dell'evasione degli ordini. Segna l'inizio della fase di consegna del percorso del cliente. Dove trovare Si deduce dalla compilazione del campo 'Shipped Date' o del campo 'Tracking Number' sull'oggetto 'Order' o su un oggetto personalizzato correlato, 'Shipment'. I dati provengono da un sistema di evasione ordini. Acquisisci Utilizzi il timestamp quando viene valorizzato per la prima volta il campo data di spedizione o numero di tracciamento. Tipo di evento inferred | |||
Ordine attivato | Un evento standard di Salesforce che indica che l'ordine è finalizzato e può procedere all'evasione e alla fatturazione. L'attivazione blocca la maggior parte delle modifiche e viene tracciata da una specifica modifica di stato. | ||
Perché è importante L'attivazione è una tappa critica e irreversibile che conferma la validità dell'ordine. È il passaggio ufficiale dalle vendite alle operations ed è fondamentale per misurare i tempi di ciclo del processo di vendita. Dove trovare Si deduce dalla modifica del campo standard 'Status' dell'oggetto 'Order' a 'Activated'. Il timestamp è registrato nello storico dei campi di 'Order'. Acquisisci Monitori lo storico dei campi dell'oggetto 'Order' per rilevare il passaggio allo stato 'Activated'. Tipo di evento inferred | |||
Ordine chiuso | Rappresenta il completamento con esito positivo e la chiusura definitiva dell’ordine di vendita nel sistema. Viene inferito da un aggiornamento finale di stato sull’ordine, che indica che non sono necessarie ulteriori azioni. | ||
Perché è importante È l'evento di fine principale del "percorso ideale" del processo. Misurare il tempo totale fino a questa attività fornisce il KPI "Tempo medio dall'ordine alla chiusura". Dove trovare Deducibile da una modifica del campo 'Status' dell’oggetto 'Order' a un valore finale come 'Closed', 'Completed' o 'Fulfilled'. Il timestamp è disponibile tramite tracciamento della cronologia dei campi. Acquisisci Monitori lo storico dei campi dell'oggetto 'Order' per rilevare il passaggio a uno stato finale, completato. Tipo di evento inferred | |||
Ordine Creato | Indica la creazione iniziale del record dell'ordine di vendita nel sistema. Questo evento è rilevato in modo esplicito quando una nuova istanza dell'oggetto 'Order' viene salvata per la prima volta in Salesforce. | ||
Perché è importante È l'evento di avvio principale del processo Order to Cash. Analizzare il tempo da questo punto alle attività successive è fondamentale per comprendere i tempi di ciclo complessivi. Dove trovare L’evento di creazione dell’oggetto 'Order'. Il timestamp è il valore del campo standard 'CreatedDate' nel record Order. Acquisisci Direttamente dal timestamp 'CreatedDate' dell'oggetto 'Order'. Tipo di evento explicit | |||
Pagamento ricevuto | Indica la conferma che il pagamento del cliente è stato ricevuto e riconciliato. Questa informazione viene aggiornata in Salesforce da un sistema finanziario, di solito come variazione di stato. | ||
Perché è importante Questo evento è l'ultimo passo per trasformare la vendita in incasso. Analizzare il tempo da 'Invoice Sent' a questo momento è fondamentale per gestire il flusso di cassa e il DSO (days sales outstanding). Dove trovare Deducibile da un cambio di stato sull’oggetto 'Invoice' a 'Paid' o 'Closed'. L’aggiornamento è determinato da un’integrazione con un sistema contabile o di gestione dei pagamenti. Acquisisci Tracci le variazioni di stato sull'oggetto 'Invoice' provenienti da un'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 è rilevato come un cambio di stato sul record della fattura. | ||
Perché è importante È l'evento che attiva il KPI "Tempo di incasso". Qualsiasi ritardo tra la creazione e l'invio della fattura posticipa direttamente l'inizio dei termini di pagamento. Dove trovare Deducibile da un cambio di stato sull’oggetto 'Invoice' a 'Sent' o valore analogo. Si può anche usare una voce del registro delle attività relativa all’email inviata. Acquisisci Monitori il campo 'Status' sull'oggetto correlato 'Invoice' oppure cerchi attività nei log delle email. Tipo di evento inferred | |||
Ordine annullato | Indica che l’ordine è stato annullato prima del completamento dell’evasione. È tracciato da un cambio di stato finale sul record dell’ordine. | ||
Perché è importante Si tratta di un'eccezione critica e di un evento di fine processo. Analizzare perché e quando gli ordini vengono annullati può far emergere problemi nel processo di vendita, nella disponibilità dei prodotti o nel credito del cliente. Dove trovare Deducibile da una modifica del campo 'Status' dell’oggetto 'Order' a 'Cancelled'. Il timestamp è reperibile nella cronologia del campo 'Status'. Acquisisci Monitori lo storico dei campi dell'oggetto 'Order' per rilevare il passaggio allo stato 'Cancelled'. Tipo di evento inferred | |||
Ordine approvato | Indica che l’ordine di vendita è stato approvato formalmente da tutte le parti richieste e può passare alla fase successiva. Viene rilevato osservando l’ultimo passaggio di approvazione in un Workflow oppure tramite un corrispondente aggiornamento di stato. | ||
Perché è importante È una tappa chiave che sblocca l'evasione dell'ordine. Ritardi nell'approvazione possono incidere in modo significativo sul tempo di ciclo complessivo dell'Order to Cash. Dove trovare Deducibile da una modifica del campo di stato sull’oggetto 'Order' a un valore come 'Approved'. Può essere ricavato anche dalla data di completamento del record 'ProcessInstance' associato. Acquisisci Monitori il campo 'Status' sull'oggetto 'Order' oppure il completamento registrato nello storico del processo di approvazione. Tipo di evento inferred | |||
Ordine inviato all'evasione | Indica il passaggio dell'ordine attivato al magazzino o al sistema di evasione per picking e packing. Di norma è registrato come cambio di stato dell'ordine, generato da un'integrazione. | ||
Perché è importante Questo evento separa le parti commerciale e logistica del processo. Tracciare il tempo dall'attivazione fino a questo punto aiuta a isolare i ritardi amministrativi da quelli di magazzino. Dove trovare Deducibile da una modifica dello stato di 'Order' a un valore come 'Sent to Fulfillment' o 'Awaiting Shipment'. Questo cambio di stato è spesso attivato da un’integrazione con un ERP/WMS. Acquisisci Monitori il campo 'Status' sull'oggetto 'Order' per valori specifici che indicano il passaggio all'evasione. Tipo di evento inferred | |||
Ordine inviato per approvazione | Rappresenta il momento in cui un ordine in bozza viene inviato in un workflow di approvazione formale. In genere è inferito da un cambio di stato sull’ordine o dalla creazione di un record nella cronologia dei processi di approvazione di Salesforce. | ||
Perché è importante Tracciare gli invii consente di misurare il tempo in cui gli ordini restano in attesa di approvazione e l'efficienza del processo di revisione. Mette in evidenza i colli di bottiglia pre-approvazione. Dove trovare Deducibile da un cambio di stato sull’oggetto 'Order' (es. da 'Draft' a 'Submitted for Approval') o tracciando la data di invio nell’oggetto 'ProcessInstance' correlato all’ordine. Acquisisci Tracci le modifiche al campo di stato oppure interroghi l'oggetto 'ProcessInstance'. Tipo di evento inferred | |||
Scorte assegnate | Indica che i prodotti dell’ordine sono stati riservati nel sistema di inventario. Questo evento nasce in genere in un ERP o in un sistema di inventario esterno e aggiorna Salesforce, rilevato tramite una modifica di campo. | ||
Perché è importante Questa attività è cruciale per analizzare il KPI 'Inventory Allocation Lead Time'. I ritardi in questa fase incidono direttamente sulla capacità di spedire gli ordini puntualmente. Dove trovare Richiede un’analisi del sistema. Spesso è inferito da un aggiornamento di stato sugli oggetti 'Order' o 'OrderItem', oppure dalla valorizzazione di un campo personalizzato 'Allocation_Date__c' gestita da un’integrazione. Acquisisci Tracci le modifiche ai campi di stato o data sugli oggetti 'Order' o 'OrderItem' provenienti da un'integrazione ERP. Tipo di evento inferred | |||
Verifica del credito eseguita | Rappresenta il completamento della verifica di solvibilità per il cliente associato all’ordine. Spesso è un evento inferito, rilevato quando un campo personalizzato, ad esempio 'Credit Check Status', viene aggiornato a 'Passed' o 'Completed'. | ||
Perché è importante Questa attività è spesso fonte di ritardi rilevanti. Misurarne la durata e i tempi di attesa è fondamentale per l'analisi nella dashboard 'Credit Check Bottleneck Analysis' e per migliorare il flusso di cassa. Dove trovare Deducibile da un timestamp o da un cambio di stato in un campo personalizzato sull’oggetto 'Order' o sull’oggetto 'Account' correlato, ad esempio 'Credit_Check_Date__c' o 'Credit_Status__c'. Acquisisci Tracci gli aggiornamenti ai campi personalizzati che indicano il completamento del controllo del credito. Tipo di evento inferred | |||
Guide all'Estrazione
Fasi
- Prerequisito: configurare il Field History Tracking: Prima di creare i report, l'Amministratore Salesforce deve verificare che il Field History Tracking sia attivato per l'oggetto Order. Tracci in particolare il campo Status e gli eventuali campi personalizzati che rappresentano eventi, ad esempio Credit_Check_Status__c o Fulfillment_Status__c. L'impostazione si trova in Setup > Object Manager > Order > Fields & Relationships > Set History Tracking.
- Creare un tipo di report personalizzato: Per affiancare ai dettagli dell'ordine i dati sulle modifiche di campo, crei un tipo di report personalizzato. Vada in Setup > Report Types. Crei un nuovo report type con Orders come Primary Object, quindi colleghi Order History come oggetto secondario. Si assicuri che la relazione sia impostata su "'A' records may or may not have related 'B' records." In questo modo potrà creare report su tutti gli ordini, anche quelli che non hanno ancora una cronologia. Salvi questo report type come "Orders with History".
- Creare il report principale 'Events': Acceda alla scheda Reports e faccia clic su New Report. Selezioni il report type "Orders with History". Questo report raccoglie tutte le attività basate su modifiche di campo.
- Configurare le colonne del report Events: Aggiunga le seguenti colonne: Order: Order Number (per SalesOrderId), Edit Date (per EventTime), User (per UserPerformingAction), Field/Event (il campo modificato), Original Value e New Value. Aggiunga anche colonne dall'oggetto Order padre, come Order: Total Amount, Account: Account Name e Order: Company Authorized By Date (come proxy per RequestedDeliveryDate, se applicabile).
- Filtrare il report Events: Imposti il filtro Show Me su All orders e il Date Field su Created Date con l'intervallo desiderato (es. ultimi 3 mesi). Aggiunga un filtro sulla colonna Field/Event per includere solo le modifiche ai campi che corrispondono alle attività da analizzare (ad es. Status, Credit_Check_Status__c).
- Creare il report 'Order Created': Crei un secondo report, più semplice, usando il report type standard Orders. L'obiettivo è catturare solo l'evento di creazione. Aggiunga le colonne Order Number, Created Date, Created By, Status, Total Amount e Account Name. Filtri per Created Date nell'intervallo temporale desiderato.
- Esportare entrambi i report: Esegua i due report e usi l'opzione Export. Scelga il formato Details Only e Comma Delimited .csv.
- Unire e trasformare i dati: Apra i file CSV esportati in un foglio di calcolo come Microsoft Excel oppure usi un linguaggio di scripting come Python.
- Per il report 'Events', crei una nuova colonna ActivityName. Usi formule o uno script per mappare le modifiche di campo ai nomi delle attività desiderati. Per esempio, se Field/Event è 'Status' e New Value è 'Activated', imposti ActivityName su 'Order Activated'.
- Per il report 'Order Created', aggiunga una nuova colonna ActivityName e imposti il valore 'Order Created' per tutte le righe. Rinomini le colonne secondo lo schema dell'Event Log (es. Order Number -> SalesOrderId, Created Date -> EventTime).
- Unire in un unico Event Log: Accodi le righe trasformate di 'Order Created' ai dati trasformati di 'Events'. Otterrà un elenco unico e completo di tutte le attività.
- Finalizzare per l'upload: Aggiunga le colonne richieste rimanenti: SourceSystem (con valore statico 'Salesforce Sales Cloud') e LastDataUpdate (con il timestamp corrente). Controlli tutte le intestazioni di colonna e i formati prima di salvare il file finale in CSV, pronto per l'upload.
Configurazione
- Tipi di report: Un tipo di report personalizzato che unisce Orders e Order History è essenziale per registrare i cambi di stato e gli altri aggiornamenti dei campi come eventi distinti.
- Tracciamento storico dei campi: L'intero approccio dipende dall'abilitare il tracciamento della cronologia dei campi per l'oggetto Order prima di iniziare l'estrazione dei dati. È fondamentale tracciare campi chiave come Status e qualsiasi campo personalizzato che rappresenti le fasi del processo.
- Filtri per intervallo di date: Utilizzi Created Date sull'oggetto Order come filtro principale per analizzare un insieme coerente di ordini. Per l'analisi iniziale si consiglia un intervallo di 3–6 mesi.
- Data Export Service: In alternativa, negli ambienti ad alto volume di dati, il Data Export Service può essere programmato (settimanale o mensile) per esportare tutti i dati degli oggetti specificati (Order, OrderHistory, Account). Fornisce dati grezzi che richiedono elaborazioni esterne e join più onerosi, ma evita i timeout e i limiti di righe del Report Builder interattivo.
- Autorizzazioni: Gli utenti che eseguono l'estrazione devono disporre delle autorizzazioni Run Reports, Export Reports e View All Data per gli oggetti Order e Account. La configurazione del Data Export Service richiede privilegi di System Administrator.
- Struttura del report: Imposti i report su Tabular Format per semplificare l'export e l'elaborazione. Eviti formati di riepilogo o a matrice.
a Query di Esempio config
/*
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.
*/