Introduzione
In Odoo, i modelli definiscono come i dati sono strutturati e memorizzati nel database. Ogni pezzo di dati aziendali con cui lavori, dagli ordini di vendita alle fatture fino ai lead, vive in un modello.
Comprendere i modelli di Odoo è essenziale sia per gli sviluppatori che per i consulenti funzionali. I modelli sono la base dell'architettura dei dati di Odoo. Definiscono i campi di Odoo, le relazioni e la logica aziendale.
Questo articolo si concentra sul modello crm.lead. Alimenta il pipeline di vendita in Odoo CRM. Che tu stia costruendo moduli personalizzati, integrando sistemi esterni o configurando flussi di lavoro di vendita, lavorerai con questo modello.
Cos'è il modello crm.lead
Il modello crm.lead rappresenta i lead e le opportunità in Odoo. È il luogo centrale in cui vengono memorizzati i dati del pipeline di vendita. Un singolo modello in Odoo gestisce sia i lead nelle fasi iniziali che le opportunità qualificate.
Questo modello è utilizzato dal modulo CRM. I moduli di vendita, marketing e sito web lo estendono o lo fanno riferimento. Quando un visitatore compila un modulo sul tuo sito web, quando un venditore crea un'opportunità o quando un lead viene convertito in cliente, stai lavorando con crm.lead.
Il modello utilizza l'ereditarietà dei modelli Odoo per aggiungere funzionalità. Il modulo CRM di base definisce la struttura principale. Altri moduli come crm_iap_lead_enrich o website_crm aggiungono campi e comportamenti. Ogni modulo estende ciò di cui ha bisogno senza duplicare il nucleo.
Campi chiave nel modello
Ecco i campi Odoo più importanti nel modello crm.lead. Comprendere questi ti aiuterà a lavorare in modo efficace con i lead e le opportunità.
1. name
Tipo: Char. Questo campo memorizza il nome o il titolo del lead o dell'opportunità. È il principale identificatore mostrato nelle viste elenco e kanban. Per un lead, potrebbe essere "Richiesta dal sito web." Per un'opportunità, potrebbe essere "Affare aziendale - Acme Corp."
2. contact_name
Tipo: Char. Il nome della persona di contatto. Utilizzato quando il lead non è ancora collegato a un res.partner. Quando converti un lead, questo valore viene spesso copiato nel nuovo record del partner.
3. email_from
Tipo: Char. L'indirizzo email principale del lead. Odoo utilizza questo per le comunicazioni prima della conversione. È il principale modo per identificare e deduplicare i lead.
4. phone
Tipo: Char. Il numero di telefono principale. Visualizzato nel modulo del lead e utilizzato per la registrazione delle chiamate e delle attività di follow-up.
5. mobile
Tipo: Char. Numero di telefono cellulare. Spesso utilizzato per SMS o follow-up urgenti quando diverso dal numero principale.
6. partner_id
Tipo: Many2one (res.partner). Collega al contatto o all'azienda quando il lead è qualificato o convertito. Prima della conversione, questo campo è vuoto. Dopo la conversione, collega al partner creato o corrispondente.
7. user_id
Tipo: Many2one (res.users). Il venditore responsabile del lead. Utilizzato per l'assegnazione, la reportistica e la pianificazione delle attività. Guida le dashboard "Le mie opportunità" e del team.
8. team_id
Tipo: Many2one (crm.team). Il team di vendita. Organizza i lead per team per assegnazione a rotazione e reportistica basata sul team.
9. stage_id
Tipo: Many2one (crm.stage). L'attuale fase nel pipeline. Le fasi definiscono il funnel: Nuovo, Qualificato, Proposta, Negoziazione, Vinto, Perso. Il passaggio tra le fasi guida l'automazione e la reportistica.
10. type
Tipo: Selezione. Indica se il record è un Lead o un'Opportunità. I lead sono nelle fasi iniziali. Le opportunità sono qualificate e hanno un fatturato atteso. Il tipo influisce su quali viste e fasi sono disponibili.
11. ricavi_attesi
Tipo: Float. I ricavi attesi se l'opportunità viene vinta. Utilizzato per la reportistica del valore del pipeline e per le previsioni. Spesso calcolato a partire dalla probabilità e da un importo dell'affare.
12. probabilità
Tipo: Float. La probabilità di vincita espressa in percentuale (0 a 100). Utilizzata nei calcoli del pipeline ponderato. Può essere manuale o automatizzata in base alla fase.
13. company_id
Tipo: Many2one (res.company). In configurazioni multi-azienda, indica a quale azienda Odoo appartiene il lead. Influisce sulla visibilità dei record e sulla valuta.
14. descrizione
Tipo: Testo. Note e descrizione del lead o dell'opportunità. Utilizzato per note interne, riassunti di incontri e contesto di cui i venditori hanno bisogno durante il follow-up.
15. data_creazione
Tipo: Datetime. Memorizza la data e l'ora in cui il record è stato creato. Gestito automaticamente da Odoo. Utile per la reportistica sull'età del lead e l'analisi del tempo di conversione.
16. data_modifica
Tipo: Datetime. Memorizza la data e l'ora dell'ultima modifica. Anch'esso gestito automaticamente. Aiuta a tenere traccia di quando il lead è stato aggiornato per l'ultima volta.
17. date_open
Tipo: Datetime. Quando il lead è stato assegnato per la prima volta a un utente. Impostato quando user_id è compilato. Utilizzato per misurare il tempo fino al primo contatto e la velocità di assegnazione.
18. date_closed
Tipo: Datetime. Quando il lead è stato chiuso (vinto o perso). Impostato quando la fase passa a una fase chiusa. Utilizzato per l'analisi delle conversioni e la lunghezza del ciclo di vendita.
19. date_deadline
Tipo: Data. La data di chiusura prevista. Utilizzato per previsioni e pianificazione delle attività. I venditori impostano questo per tenere traccia di quando si aspettano di chiudere l'affare.
20. active
Tipo: Boolean. Flag di soft delete. Quando è False, il record è archiviato e nascosto dalle visualizzazioni predefinite. I lead persi o fusi vengono spesso archiviati piuttosto che eliminati.
21. street, street2, city, zip
Tipo: Char. Campi indirizzo. Utilizzati quando il lead ha un indirizzo prima della conversione. Copiati al partner quando il lead viene convertito.
22. country_id
Tipo: Many2one (res.country). Il paese. Utilizzato per reportistica regionale e formattazione degli indirizzi. Filtrare i lead per paese aiuta nella gestione del territorio.
23. state_id
Tipo: Many2one (res.country.state). Lo stato o la provincia. Il dominio è filtrato per paese. Utilizzato per la segmentazione regionale.
24. source_id
Tipo: Many2one (utm.source). La fonte del lead. Traccia da dove proviene il lead: Sito web, Referral, Campagna, ecc. Importante per l'attribuzione di marketing.
25. campaign_id
Tipo: Many2one (utm.campaign). La campagna di marketing. Collega il lead a una campagna specifica per l'analisi del ROI. Utilizzato quando i lead provengono da campagne email o pubblicitarie.
26. activity_ids
Tipo: One2many (mail.activity). Le attività programmate. Compiti, chiamate e riunioni collegate al lead. Guida il widget delle attività e i promemoria di follow-up.
27. color
Tipo: Intero. Indice di colore per le visualizzazioni kanban e lista. Utilizzato per distinguere visivamente i lead in base a priorità, fonte o criteri personalizzati.
28. message_ids
Tipo: One2many (mail.message). Il chatter. Note interne, email e cronologia delle attività. Odoo memorizza tutta la comunicazione nel chatter per un contesto completo.
Come questo modello viene utilizzato nei flussi di lavoro aziendali
1. Cattura Lead del Sito Web
Quando un visitatore invia un modulo di contatto sul tuo sito Odoo, viene creato un nuovo record crm.lead. I campi email_from, contact_name e description vengono compilati dal modulo. Il lead appare nel pipeline CRM per il team di vendita per un follow-up.
2. Qualificazione e Conversione dei Lead
I venditori spostano i lead attraverso le fasi. Quando un lead è qualificato, cambiano il tipo in Opportunità e impostano expected_revenue. Quando l'affare è vinto, convertono il lead. Odoo crea o collega un res.partner e, facoltativamente, un sale.order.
3. Reporting del Pipeline di Vendita
I manager utilizzano i dati crm.lead per i report del pipeline. Il fatturato atteso, la probabilità e la fase guidano il valore ponderato del pipeline. I filtri per user_id e team_id mostrano le performance per venditore e team.
4. Attribuzione del Marketing
I campi source_id e campaign_id collegano i lead agli sforzi di marketing. Quando i lead provengono da campagne email o annunci, i parametri UTM popolano questi campi. I team di marketing utilizzano questo per misurare l'efficacia delle campagne.
5. Gestione delle Attività e dei Follow-up
I venditori pianificano attività sui lead. Il campo activity_ids memorizza chiamate, riunioni e compiti. La activity_date_deadline guida la colonna "Prossima Attività" nelle viste elenco e ricorda agli utenti di seguire.
Come gli sviluppatori estendono questo modello
Gli sviluppatori estendono crm.lead utilizzando diversi modelli. L'ereditarietà del modello Odoo è il meccanismo principale.
Ereditarietà del Modello
Usa _inherit = 'crm.lead' per estendere il modello. Aggiungi nuovi campi Odoo, sovrascrivi metodi o aggiungi vincoli. Il modello ereditato in Odoo mantiene le tue modifiche in un modulo separato per facilitare gli aggiornamenti.
Aggiunta di Campi
Definisci nuovi campi Odoo nel tuo modello ereditato. Usa il tipo di campo corretto: Char, Many2one, Boolean, Integer, Text, Selection. Le aggiunte comuni includono fonti di lead personalizzate, interesse per i prodotti o settore. Considera i campi dipendenti dall'azienda per multi-azienda.
Estensioni Python
Sovrascrivi create, write o il metodo action_convert per aggiungere logica. Usa super() per chiamare l'originale. Fai attenzione ai cambiamenti di fase e alla logica di conversione. I decoratori del modello api in Odoo (@api.depends, @api.onchange) aiutano con i campi calcolati e il comportamento dell'interfaccia utente.
Odoo Studio
Odoo Studio ti consente di aggiungere campi senza codice. Ottimo per personalizzazioni rapide come menu a discesa extra o campi di testo. Per logica complessa, automazione delle fasi o aggiornamenti, i moduli personalizzati sono più manutenibili.
Migliori pratiche
- Configura le fasi per adattarle al tuo processo di vendita. Usa sequenze di fase separate per lead e opportunità se necessario.
- Imposta source_id e campaign_id dai parametri UTM sui moduli del sito web. Questo abilita l'attribuzione di marketing.
- Usa team_id per l'assegnazione round-robin o basata su territorio. Definisci le regole di assegnazione in crm.team.
- Quando costruisci integrazioni API, usa l'API XML-RPC o JSON-RPC. Il modello crm.lead è completamente esposto. Mappa gli ID CRM esterni a un campo personalizzato come ref per la sincronizzazione.
- Per campi personalizzati, usa il prefisso
x_o un prefisso di modulo per evitare conflitti con le future versioni di Odoo.
Errori comuni
- Creare lead duplicati invece di cercare per email_from. Usa
email_normalizedo un controllo di deduplicazione prima di creare. - Confondere il tipo (Lead vs Opportunità) e stage_id. Il tipo determina il tipo di record. Lo stage determina la posizione nel funnel. Entrambi sono importanti per la reportistica.
- Dimenticare di impostare user_id o team_id. I lead non assegnati si perdono. Configura l'assegnazione automatica o assicurati di effettuare l'assegnazione manuale.
- Sovrascrivere la logica di conversione senza chiamare super(). Il metodo action_convert svolge un lavoro importante. Estendilo, non sostituirlo ciecamente.
- Aggiungere campi personalizzati richiesti senza valori predefiniti. I lead esistenti falliranno la validazione quando aggiorni il modulo.
Conclusione
Il modello crm.lead è centrale per Odoo CRM. Memorizza lead e opportunità e guida il pipeline di vendita. Comprendere i suoi campi e come i moduli lo estendono ti aiuterà a configurare, personalizzare e integrare Odoo in modo efficace.
Che tu sia un consulente funzionale che mappa i processi di vendita o uno sviluppatore che costruisce moduli CRM personalizzati, una solida comprensione di crm.lead ti farà risparmiare tempo e prevenire errori.
Hai bisogno di aiuto con la tua implementazione di Odoo?
Dasolo aiuta le aziende a implementare, personalizzare e ottimizzare Odoo. Siamo specializzati in integrazioni API e sviluppo Odoo. Il nostro team ha una profonda esperienza con l'architettura dei dati di Odoo e modelli come crm.lead.
Se hai bisogno di aiuto con la tua implementazione di Odoo, moduli CRM personalizzati o integrazioni, siamo qui per aiutarti. Prenota una demo per discutere del tuo progetto.