Inleiding
In Odoo definiëren modellen hoe gegevens zijn gestructureerd en opgeslagen in de database. Elk stuk bedrijfsdata waar u mee werkt, van verkooporders tot facturen tot leads, bevindt zich in een model.
Het begrijpen van Odoo-modellen is essentieel voor zowel ontwikkelaars als functionele consultants. Modellen zijn de basis van de Odoo-gegevensarchitectuur. Ze definiëren Odoo-velden, relaties en bedrijfslogica.
Dit artikel richt zich op het crm.lead-model. Het drijft de verkooppipeline in Odoo CRM. Of u nu aangepaste modules bouwt, externe systemen integreert of verkoopworkflows configureert, u zult met dit model werken.
Wat is het crm.lead Model
Het crm.lead-model vertegenwoordigt leads en kansen in Odoo. Het is de centrale plek waar gegevens van de verkooppipeline worden opgeslagen. Een enkel model in Odoo behandelt zowel leads in een vroeg stadium als gekwalificeerde kansen.
Dit model wordt gebruikt door de CRM-module. Verkoop-, marketing- en website-modules breiden het uit of verwijzen ernaar. Wanneer een bezoeker een formulier op uw website invult, wanneer een verkoper een kans creëert, of wanneer een lead wordt omgezet naar een klant, werkt u met crm.lead.
Het model maakt gebruik van Odoo-modelerfelijkheid om functionaliteit toe te voegen. De basis CRM-module definieert de kernstructuur. Andere modules zoals crm_iap_lead_enrich of website_crm voegen velden en gedrag toe. Elke module breidt uit wat het nodig heeft zonder de kern te dupliceren.
Belangrijke Velden in het Model
Hier zijn de belangrijkste Odoo-velden in het crm.lead-model. Het begrijpen hiervan zal u helpen om effectief met leads en kansen te werken.
1. naam
Type: Char. Dit veld slaat de naam of titel van de lead of kans op. Het is de belangrijkste identifier die wordt weergegeven in lijstweergaven en kanban. Voor een lead kan het "Vraag van de website" zijn. Voor een kans kan het "Enterprise deal - Acme Corp." zijn.
2. contact_name
Type: Char. De naam van de contactpersoon. Gebruikt wanneer de lead nog niet is gekoppeld aan een res.partner. Wanneer u een lead omzet, wordt deze waarde vaak gekopieerd naar het nieuwe partnerrecord.
3. email_from
Type: Char. Het primaire e-mailadres van de lead. Odoo gebruikt dit voor communicatie vóór de omzetting. Het is de belangrijkste manier om leads te identificeren en te dedupliceren.
4. telefoon
Type: Char. Het belangrijkste telefoonnummer. Weergegeven op het leadformulier en gebruikt voor het loggen van gesprekken en follow-upactiviteiten.
5. mobiel
Type: Char. Mobiel telefoonnummer. Vaak gebruikt voor SMS of dringende opvolging wanneer dit verschilt van het hoofdtelefoonnummer.
6. partner_id
Type: Many2one (res.partner). Verbindt met de contactpersoon of het bedrijf wanneer de lead is gekwalificeerd of geconverteerd. Voor conversie is dit veld leeg. Na conversie verwijst het naar de gemaakte of overeenkomende partner.
7. user_id
Type: Many2one (res.users). De verkoper die verantwoordelijk is voor de lead. Gebruikt voor toewijzing, rapportage en het plannen van activiteiten. Stuwt de "Mijn Kansen" en teamdashboards.
8. team_id
Type: Many2one (crm.team). Het verkoopteam. Organiseert leads per team voor ronde-robin toewijzing en teamgebaseerde rapportage.
9. stage_id
Type: Many2one (crm.stage). De huidige fase in de pijplijn. Fasen definiëren de trechter: Nieuw, Gekwalificeerd, Voorstel, Onderhandeling, Gewonnen, Verloren. Beweging tussen fasen stimuleert automatisering en rapportage.
10. type
Type: Selectie. Geeft aan of het record een Lead of een Kans is. Leads zijn in een vroeg stadium. Kansen zijn gekwalificeerd en hebben verwachte inkomsten. Het type beïnvloedt welke weergaven en fasen beschikbaar zijn.
11. verwachte_omzet
Type: Float. De verwachte omzet als de kans wordt gewonnen. Gebruikt voor rapportage van pipelinewaarde en prognoses. Vaak berekend op basis van waarschijnlijkheid en een dealbedrag.
12. waarschijnlijkheid
Type: Float. De kans om te winnen als percentage (0 tot 100). Gebruikt in gewogen pipelineberekeningen. Kan handmatig of automatisch zijn op basis van de fase.
13. bedrijf_id
Type: Many2one (res.company). In multi-company setups geeft dit aan tot welk Odoo-bedrijf de lead behoort. Beïnvloedt de zichtbaarheid van records en valuta.
14. beschrijving
Type: Text. Notities en beschrijving van de lead of kans. Gebruikt voor interne notities, vergaderingssamenvattingen en context die verkopers nodig hebben bij het opvolgen.
15. aanmaakdatum
Type: Datetime. Slaat de datum en tijd op wanneer het record is aangemaakt. Automatisch beheerd door Odoo. Nuttig voor rapportage over de leeftijd van leads en analyse van conversietijd.
16. wijzigingsdatum
Type: Datetime. Slaat de datum en tijd van de laatste wijziging op. Ook automatisch beheerd. Helpt bij het bijhouden wanneer de lead voor het laatst is bijgewerkt.
17. date_open
Type: Datetime. Wanneer de lead voor het eerst aan een gebruiker werd toegewezen. Ingesteld wanneer user_id is ingevuld. Gebruikt om de tijd tot de eerste contactmoment en de snelheid van toewijzing te meten.
18. date_closed
Type: Datetime. Wanneer de lead werd gesloten (gewonnen of verloren). Ingesteld wanneer de fase naar een gesloten fase gaat. Gebruikt voor conversieanalyse en de lengte van de verkoopcyclus.
19. date_deadline
Type: Datum. De verwachte sluitingsdatum. Gebruikt voor prognoses en activiteitplanning. Verkopers stellen dit in om bij te houden wanneer ze verwachten de deal te sluiten.
20. active
Type: Boolean. Soft delete-vlag. Wanneer False, wordt het record gearchiveerd en verborgen voor standaardweergaven. Verloren of samengevoegde leads worden vaak gearchiveerd in plaats van verwijderd.
21. street, street2, city, zip
Type: Char. Adresvelden. Gebruikt wanneer de lead een adres heeft vóór conversie. Gekopieerd naar de partner wanneer de lead wordt geconverteerd.
22. country_id
Type: Many2one (res.country). Het land. Gebruikt voor regionale rapportage en adresopmaak. Het filteren van leads op land helpt bij het beheer van territoria.
23. state_id
Type: Many2one (res.country.state). De staat of provincie. Het domein is gefilterd op land. Gebruikt voor regionale segmentatie.
24. source_id
Type: Many2one (utm.source). De leadbron. Volgt waar de lead vandaan komt: Website, Verwijzing, Campagne, enz. Belangrijk voor marketingtoeschrijving.
25. campaign_id
Type: Many2one (utm.campaign). De marketingcampagne. Verbindt de lead met een specifieke campagne voor ROI-analyse. Gebruikt wanneer leads afkomstig zijn van e-mail of advertentiecampagnes.
26. activity_ids
Type: One2many (mail.activity). De geplande activiteiten. Taken, oproepen en vergaderingen gekoppeld aan de lead. Stuurt de activiteitwidget en follow-up herinneringen.
27. color
Type: Integer. Kleurnummer voor kanban- en lijstweergaven. Gebruikt om leads visueel te onderscheiden op basis van prioriteit, bron of aangepaste criteria.
28. message_ids
Type: One2many (mail.message). De chatter. Interne notities, e-mails en activiteitengeschiedenis. Odoo slaat alle communicatie op in de chatter voor volledige context.
Hoe Dit Model Wordt Gebruikt in Bedrijfsworkflows
1. Website Lead Capture
Wanneer een bezoeker een contactformulier op uw Odoo-website indient, wordt er een nieuw crm.lead-record aangemaakt. De email_from, contact_name en beschrijving worden vanuit het formulier ingevuld. De lead verschijnt in de CRM-pijplijn voor het verkoopteam om op te volgen.
2. Lead Qualification and Conversion
Verkopers verplaatsen leads door verschillende fasen. Wanneer een lead gekwalificeerd is, veranderen ze het type naar Opportunity en stellen ze de verwachte_omzet in. Wanneer de deal is gewonnen, converteren ze de lead. Odoo maakt een res.partner aan of koppelt deze en optioneel een sale.order.
3. Sales Pipeline Reporting
Managers gebruiken crm.lead-gegevens voor pijplijnrapporten. Verwachte omzet, waarschijnlijkheid en fase bepalen de gewogen pijplijnwaarde. Filters op user_id en team_id tonen de prestaties per verkoper en team.
4. Marketing Attribution
De velden source_id en campaign_id koppelen leads aan marketinginspanningen. Wanneer leads afkomstig zijn van e-mailcampagnes of advertenties, vullen UTM-parameters deze velden in. Marketingteams gebruiken dit om de effectiviteit van campagnes te meten.
5. Activity and Follow-up Management
Verkopers plannen activiteiten op leads. Het activity_ids-veld slaat oproepen, vergaderingen en taken op. De activity_date_deadline stuurt de "Volgende Activiteit"-kolom in lijstweergaven aan en herinnert gebruikers om op te volgen.
Hoe Ontwikkelaars Dit Model Uitbreiden
Ontwikkelaars breiden crm.lead uit met verschillende patronen. Odoo-modelovererving is het belangrijkste mechanisme.
Model Overerving
Gebruik _inherit = 'crm.lead' om het model uit te breiden. Voeg nieuwe Odoo-velden toe, overschrijf methoden of voeg beperkingen toe. Het erfmodel in Odoo houdt je wijzigingen in een aparte module voor gemakkelijke upgrades.
Velden Toevoegen
Definieer nieuwe Odoo-velden in je geërfde model. Gebruik het juiste veldtype: Char, Many2one, Boolean, Integer, Text, Selection. Veelvoorkomende toevoegingen zijn aangepaste leadbronnen, productinteresse of industrie. Overweeg bedrijfsspecifieke velden voor meerdere bedrijven.
Python Uitbreidingen
Overschrijf create, write of de action_convert methode om logica toe te voegen. Gebruik super() om de originele aan te roepen. Wees voorzichtig met fasewijzigingen en conversielogica. De api-modellen in Odoo-decorators (@api.depends, @api.onchange) helpen met berekende velden en UI-gedrag.
Odoo Studio
Odoo Studio stelt je in staat om velden toe te voegen zonder code. Goed voor snelle aanpassingen zoals extra dropdowns of tekstvelden. Voor complexe logica, faseautomatisering of upgrades zijn aangepaste modules beter onderhoudbaar.
Beste Praktijken
- Configureer fasen om overeen te komen met je verkoopproces. Gebruik afzonderlijke fasevolgordes voor leads en kansen indien nodig.
- Stel source_id en campaign_id in op basis van UTM-parameters op websiteformulieren. Dit maakt marketingtoeschrijving mogelijk.
- Gebruik team_id voor ronde-robin of op gebied gebaseerde toewijzing. Definieer toewijzingsregels in crm.team.
- Bij het bouwen van API-integraties, gebruik de XML-RPC of JSON-RPC API. Het crm.lead-model is volledig blootgesteld. Koppel externe CRM-ID's aan een aangepast veld zoals ref voor synchronisatie.
- Voor aangepaste velden, gebruik de
x_prefix of een moduleprefix om conflicten met toekomstige Odoo-versies te vermijden.
Veelvoorkomende Fouten
- Dupliceer leads creëren in plaats van te zoeken op email_from. Gebruik
email_normalizedof een deduplicatiecontrole voordat je aanmaakt. - Type verwarren (Lead vs Opportunity) en stage_id. Type bepaalt het recordtype. Stage bepaalt de positie in de funnel. Beide zijn belangrijk voor rapportage.
- Vergeten om user_id of team_id in te stellen. Niet-toegewezen leads raken verloren. Configureer automatische toewijzing of zorg voor handmatige toewijzing.
- De conversielogica overschrijven zonder super() aan te roepen. De action_convert-methode doet belangrijk werk. Breid het uit, vervang het niet blindelings.
- Vereiste aangepaste velden toevoegen zonder standaardwaarden. Bestaande leads zullen falen in de validatie wanneer je de module upgrade.
Conclusie
Het crm.lead-model is centraal in Odoo CRM. Het slaat leads en kansen op en stuurt de verkooppipeline aan. Begrijpen van de velden en hoe modules het uitbreiden zal je helpen Odoo effectief te configureren, aan te passen en te integreren.
Of je nu een functionele consultant bent die verkoopprocessen in kaart brengt of een ontwikkelaar die aangepaste CRM-modules bouwt, een goed begrip van crm.lead zal tijd besparen en fouten voorkomen.
Hulp Nodig Bij Uw Odoo Implementatie?
Dasolo helpt bedrijven bij het implementeren, aanpassen en optimaliseren van Odoo. We zijn gespecialiseerd in API-integraties en Odoo-ontwikkeling. Ons team heeft diepgaande ervaring met de Odoo-gegevensarchitectuur en modellen zoals crm.lead.
Als je hulp nodig hebt bij je Odoo-implementatie, aangepaste CRM-modules of integraties, zijn we hier om te helpen. Boek een demo om je project te bespreken.