Pubblicato il 7 settembre 2026 · 6 min di lettura
Flow o Apex? Quando l'automazione Salesforce ha bisogno di codice
Una guida pratica alla decisione: cosa fa bene Flow, dove si rompe e quando Apex è lo strumento giusto. Con esempi.
Salesforce offre due modi per automatizzare: Flow, lo strumento dichiarativo, e Apex, il linguaggio di programmazione. La guida ufficiale dice "clicks before code", e ha ragione la maggior parte delle volte. Ma "la maggior parte" non è "sempre", e sbagliare in una direzione o nell'altra costa caro. Questa è la guida alla decisione che usiamo sui progetti reali.
Cosa fa bene Flow
Logica scatenata da un record su un singolo oggetto: aggiornare campi, creare record collegati, inviare email e notifiche, pubblicare su Chatter.
Schermate guidate per gli utenti: procedure passo passo, inserimento dati con validazione, richieste di approvazione.
Job schedulati con logica semplice: aggiornamenti notturni, promemoria, cambi di stato.
Orchestrazione di pezzi esistenti: chiamare azioni invocabili, sottoflussi e servizi esterni semplici.
Flow è visibile agli admin, cambia in fretta e non richiede una pipeline di deploy per le piccole modifiche. Quando la logica sta in un canvas leggibile, Flow è la risposta giusta.
Dove Flow si rompe
Logica complessa: condizioni annidate, cicli dentro cicli, molti oggetti toccati nella stessa transazione. Il canvas diventa illeggibile e non testabile.
Grandi volumi di dati: Flow ha limiti propri ed è più difficile da bulkificare correttamente; l'elaborazione batch di centinaia di migliaia di record appartiene ad Apex.
Ordine di esecuzione: quando più flow e trigger scattano sullo stesso oggetto, il debug diventa un indovinello. Un unico trigger handler con un ordine esplicito è più facile da ragionare.
Gestione errori e retry: i percorsi di errore esistono, ma logiche di ritentativo sofisticate, log e rollback parziali sono molto più puliti nel codice.
Riuso e test: Flow non ha test unitari. Apex sì, e Salesforce impone il 75 per cento di copertura per una ragione.
Quando Apex è lo strumento giusto
Logica di business che deve essere affidabile, testata e versionata: motori di prezzo, regole di assegnazione, validazioni complesse tra oggetti.
Integrazioni con sistemi esterni che richiedono autenticazione, retry, paginazione o trasformazione dei payload.
Elaborazioni batch e asincrone ad alto volume.
Interfacce custom con Lightning Web Components che hanno bisogno di logica lato server.
Tutto ciò che un admin non dovrebbe poter cambiare per sbaglio.
Una regola semplice
Se l'automazione si spiega in una frase e tocca un oggetto, usa Flow. Se serve un diagramma per spiegarla, coinvolge più oggetti o un sistema esterno, o deve essere testata, usa Apex, e lascia a Flow il ruolo di strato sottile che lo richiama. Combinare bene i due è una competenza: tieni i trigger in un unico framework, tieni i flow piccoli e documenta chi governa ogni oggetto.
Non sai quale ti serve?
Descrivi l'automazione che hai in mente e ti diciamo, entro 24 ore lavorative, se è un Flow, un job Apex o un po' di entrambi, con un preventivo a prezzo fisso in ogni caso.
Ti serve aiuto su questo tema? Richiedi un preventivo
Richiedi un preventivo gratuito