Netcerto RSS Feed

Netcerto Twitter

Our references

Recent visitors



A visitor from Ontario, United States visited "Calendar-Gant-sharing"  54 seconds ago

A visitor from Indonesia visited "Warehouse modules"  1 hour ago

A visitor from United States visited "Project - Task modules"  3 hours ago

A visitor from Berlin, Germany visited "Home"  4 hours ago

A visitor from Lagos, Nigeria visited "Document management (DMS)"  4 hours ago

PDF Print E-mail

CRM module (leads)


bron: openerp.com

The Sales department is the engine of your company. Sales success drives staff motivation and boosts
your company’s dynamics, which in turn enables you to keep innovating and lay the foundations for
future success.

The key to continued sales success is effective Customer Relationship Management (most often
known as CRM). OpenERP’s CRM features are flexible and highly developed to assist you in manag-
ing all aspects of partner relationships. Analytic tools help you understand your performance drivers,
and the automation of data and processes drives your company to new levels of efficiency.

OpenERP can share information through its interfaces to the most common email clients, calendars
and mobile phones, minimizing disruption to your operations when you first install it.  Your staff
can build on their previous productivity by continuing to use their email and office systems, now
connected to OpenERP, transferring to the OpenERP interface only if they need to.

This book will help you value your customer and partner relations even more.

 

TRACKING LEADS & OPPORTUNITIES

Whatever business your company is doing, every single sales act is related to your Customer. Time to come up to
your Customer’s Expectations!

1.1  What is in it for you?
Track, drive and optimize your sales activities! Handle your full sales workflow, from lead to invoice.
Access all information such as partners (accounts) & contacts in one place, directly at hand when you need
it, even when you are working at home!
Offer an excellent Customer Service by improving issues management and automating follow up.
Be Mobile and sync your Calendars with your mobile device.
Link important e-mails to the CRM directly from your current mailbox (Outlook & Thunderbird). Easily
integrate your e-mails with OpenERP so that you can reply from your own mailbox and have the answer
stored in your CRM automatically.
Complete history of every action and transaction related to your valued customers and partners.
Drive your Marketing Campaigns!
Measure your business through up-to-date dashboards and reporting!

Use the OpenERP CRM application as from the very first business contact - either personal, by e-mail, through
a contact form on your website, ...  OpenERP allows your sales team to concentrate on their deals and manage
the full sales flow (lead qualification -> opportunity tracking -> quotation -> sales order) while keeping a global
vision of each stage.

1.1.1  Terminology

Lead  A lead represents a prospect (potential customer) or a future sales opportunity. A lead usually is not qual-
ified and not assigned to a sales person for follow-up.  Example: a business card, a database of potential
customers.

Opportunity  A sales opportunity represents a potential contract.  Each opportunity has to be followed up by a
salesperson spending time to make a quotation or cancel the opportunity.

OpenERP Customer Relationship management helps you boost the pre-sales activities of managing leads and
opportunities. Manage complex relationships between partners and contacts, be mobile, and automate your sales
flow as much as possible.  We will also develop some business cases to show you an example of how to use
OpenERP in your company.

Managing your Potential Customer Contacts

The standard way of representing partners and contacts throughout OpenERP and many other enterprise systems
(such as phone contact applications) is a partner with multiple contacts. Partner is the word for any entity that
you do business with - a supplier, a customer, a prospect, ... In other CRM applications, a partner is also referred
to as Account. The example below illustrates OpenERP default way of handling Partners and their Contacts.


Default Partner & Contact Relationship

According to your Business, the standard way of linking several contacts to one partner may not be flexible enough
for you. Of course, OpenERP provides an alternative, the base_contact module. This allows you to share the
same contact, holding different positions, with several partners. You only need to enter the contact once and link
it to the partners concerned. Any changes to contact information only need to be applied once.

The two figures Default Partner & Contacts Relationship and Base_contact module installed show the structure
of partners and contacts in the form of UML classes both without and with the base_contact module. This is
a clear way to illustrate the complexities that may be accomplished.


Base_contact module installed

The concrete example may even better illustrate the concept of multiple relationships between contacts and part-
ners (companies).  The figure Base_contact module installed shows two companies having several addresses
(places of business) and several contacts attached to these addresses.

In this example you will find the following elements:

  • The ABC bank has two places of business, represented by the addresses of ABC Belgium and ABC Lux-
    embourg,
  • The addresses of Dexey France and Dexey Belgium belong to the Dexey company,
  • At the office of ABC Luxembourg, you have the contacts of the director (D. Smith) and the accountant (A.
    Doe),
  • Mr Doe holds the post of accountant for ABC Luxembourg and Dexey France,
  • Mr D. Smith is director of Dexey France and Dexey Belgium and we also have his private address which is
    not attached to a partner.

According to your Configuration, OpenERP provides three menus to access the same information:

  • List of partners: Sales → Address Book → Customers,
  • List of Addresses: Sales → Address Book → Addresses,
  • List of contacts: Sales → Address Book → Contacts,

If you correct or change a contact name in the contact form, the changes will be applied to all the posts occupied
in the different companies.

The screen below represents a partner form. You can see several possible addresses there and a list of contacts
below each address. For each contact you see a name, a function, a phone number and an email.


A partner form with the base_contact module installed

If you click the line, you can get more details about the function (such as start date, end date and fax) or enter
into the contact form (such as personal phone, different posts occupied, and personal blog). You can also add a
photo to your contact form.


Detail of a job post occupied by a contact at a partner


Detail of a partner form with several contacts

Partner management is included in the OpenERP base modules. To manage partner relations you have to install
the Sales Management module. Then configure the system to meet your needs.

For this chapter you should create a new database with demo data through the Configuration Wizard. Select
Customer Relationship Management and configure the CRM according to your needs by selecting the
appropriate modules. OpenERP’s modularity enables you to install only the CRM module if your requirements
are limited to customer relationships.


Creating a new database

When creating the new database, OpenERP suggests that you configure it using a series of questions:

  • Simplified or Extended mode: select simplified and click OK,
  • Select the Customer Relationship Management functionality to install.


Selecting the CRM functionality to install

OpenERP proposes a selection from preconfigured functions for CRM:

  • managing a prospect database,
  • managing and tracking opportunities,
  • managing meetings and the company calendar,
  • managing presales,
  • managing phone calls,
  • managing after-sales service,
  • managing technical service,
  • tracking bugs and new functional requests,
  • share sales knowledge.

You see that OpenERP’s CRM module is not limited just to Customer Relationships but is designed to generate
all types of relations with a partner: such as suppliers, employees, customers, prospects. This part will focus on
customer relationships. The other CRM functions are similar to use, so you should not have huge problems with
understanding those functions.

The following cases will be looked at in this chapter:

  • Prospect Management,
  • Opportunity Management,
  • Management of the Company Calendar,
  • Management of Phone Calls.

The figure Selecting parameters for CRM modules for the reader of this chapter shows the CRM module
configuration screen that appears when you selected the CRM to be installed.


Selecting parameters for CRM modules for the reader of this chapter

If you have installed the management of prospects and opportunities, OpenERP implements the following
workflow for the qualification of prospects and future opportunities.


Process of converting a prospect into a customer or opportunity

Lead Management

A lead represents a possible business or sales.  Usually it is the first step in your sales cycle, and therefore it
contains valuable information.  However, the most common mistake is that this information too often gets lost
because it is registered nowhere, or such key information is not accessible when you need it.

Often leads are not registered centrally, which makes it very difficult to find the appropriate information.

Leads can be assigned to a Sales Team for follow up (see Sales → Configuration → Sales → Sales Teams). Each
user can be added to a default Sales team which can be specified in the Preferences. You can also escalate a lead
to another Sales team, according to the tree structure you defined for your sales teams. Per sales team, you can
assign a responsible user and a generic e-mail address that will be used. You can also assign specific stages.

When a lead requires follow up, it will be converted to a sales opportunity. OpenERP checks whether a partner
with the e-mail address from the lead form already exists, and then proposes to link the contact to the existing
partner.

The following events could result in the creation of one or several leads, either manually or automatically:

  • An email sent to one of your company’s generic email addresses, such as sales@mycompany.com,
  • A business card from a prospective customer met briefly at an exhibition: you have to contact him again to
    qualify the lead and to know if there is any possibility of a key sales opportunity,
  • A database of potential customers in a given sector and region. The potential customers have to be contacted
    again individually or through a mass mailing to determine which contacts require further follow-up,
  • An interesting contact that you met during a business networking event.  You have to qualify it before
    assigning a salesperson to the contact,
  • A form completed on your website directly integrated into OpenERP. Before converting the form into a
    sales proposition or opportunity, you should read and handle the person’s request.

Employees in the presales department will usually work on leads. Once these leads are converted into customers
or sales opportunities the sales department pays individual attention to each opportunity.

Storing your Business Cards effectively

New prospects are usually entered as a lead in the system. This means that you do not create a partner form or sales
opportunity until you have qualified whether the lead is interesting or not. If the new contact is indeed interesting
you then enter the data on into a partner form and, eventually, a sales opportunity.

To enter a lead manually use the menu Sales → Sales → Leads and click the New button. A form opens to let you
enter data about this new contact.


Creating a new lead

Leads have a status that depends on the qualification work that has been carried out:

  • Draft : the lead data has been entered, any work has not yet been done and a salesperson has not yet been
    assigned to the request,
  • Open : the lead is being handled,
  • Closed : the lead has been converted into a partner and/or a sales opportunity,
  • Waiting : the lead is waiting for a response from the customer,
  • Cancelled : the lead has been cancelled because the salesperson has decided that it is not worth following
    up.

You can use the arrows (even from List view) to change the status (qualification) of a lead.

On the Communication & History tab in the Lead form, you can see the action history for this lead. You can also
add internal notes and change the status while adding such a note.

Importing a Leads Database

You can also import a huge list of leads. That may be useful if you have bought a database of potential prospects
and you want to load them all into the system to handle them all at the same time.

To do that you should start with a list of leads in CSV format. If your prospects are provided in another format it
is easy to convert them to the CSV format using Microsoft Excel or OpenOffice Calc. Open the leads list using
the menu Sales → Sales → Leads. At the bottom of the list click on the Import link. OpenERP opens a form for
importing the data.


Importing leads into the system

You then define which columns are present in your CSV file in the correct order.  Select your file and click on
Import. Check in the chapter about system administration, Configuration & Administration, for more information
on import and export.

There are other methods of generating leads automatically or semi-automatically:

  • through a Contact Form on your Website;
  • Using the Outlook or Thunderbird plugin to insert new leads directly from an e-mail client when a salesper-
    son sees promising e-mails ,
  • Using the e-mail gateway for each incoming e-mail from a certain address (such as info@mycompany.com)
    which allows you to create a lead automatically from the contents of the e-mail,
  • Using OpenERP’s XML-RPC web-services to connect to a form on your website.

These different methods are described later in this book.

Organizing leads

To help the users organize and handle leads efficiently, OpenERP provides several menus in the CRM system that
can be used depending on the needs of each:

The Sales → Sales → Leads can be used for several things:

  • Click New to start creating a new lead.
  • This view displays a list of all the leads (both open and not) which you are linked to,
  • You can display a list of all your leads that you still need to handle (your open, draft and pending leads),
  • You can display a list of all your leads that are still waiting for a customer response (usually in Pending
    status). This enables you to check periodically on your work to do,
  • You can display a list of all the leads assigned to different salespeople. This menu (as those beneath it) are
    used by managers to check each person’s work.


List of leads to be handled

Leads are prioritized. Salespeople should ideally start working on leads from the top of the list. Open a form to
describe the lead. At this stage, they contact the suspected customer by email or phone and enter the result of the
contact on the lead form.

They can then change the status of the lead to a state that depends on the response from the suspect:

  • Cancelled : not to be followed as a lead,
  • Waiting : waiting for a response from the suspect.

Converting Leads into Customers or Opportunities

If a lead is interesting, you convert it into a partner / opportunity in the system.

You can do this in one step (convert to opportunity, and if partner does not exist, OpenERP will create it or merge
it) or in two steps (first create partner, then convert to opportunity).

Click the button Create next to the Customer field to create a new partner or link to an existing partner.

OpenERP shows a window allowing you to select:

  • whether you want to create a new partner,
  • whether you want to add this contact to an existing partner (merge).

Then OpenERP opens a partner form with the information from the lead entered into it. At this stage you can add
more information such as the exact partner address and the contact details.

The partner created is automatically attached to the lead, which enables you to keep complete traceability from
the lead. Have a look at the Communication & History tab in the lead.

If the salesperson thinks that there is a real opportunity with the lead, following the contact he had with the
prospect, he can convert it into a sales opportunity using the button Convert to Opportunity.

OpenERP opens a window allowing you to select:

  • whether you want to create a new opportunity,
  • whether you want to add this lead to an existing opportunity (merge).

OpenERP then opens a window with the title of the opportunity (lead description) and the partner. Fill out the
estimated revenue and the success rate of converting to a sale.


Converting a lead into a sales opportunity

Some companies have more advanced processes for the qualification of a lead. They pass through several steps,
such as first call, renewing contact, waiting for a verbal agreement. You can easily configure this by creating your
own stages through Sales → Configuration → Leads & Opportunities → Stages.  Use the sequence number to
determine the order of the stages, i.e. 10 for First Call, 20 for Renewing Contact and so on.

You can then use your own stages through the Stage field that is found up to the right of the lead definition. To
move it automatically to the next step, you can use the button that looks like a right arrow.

Tracking your Opportunities

While a lead represents the first contact with a prospect yet to be qualified, a sales opportunity represents a potential
contract. Each opportunity must be followed up by a salesperson spending time to qualify the opportunity, either
by making a quotation or cancelling the opportunity.

Leads are generally handled en masse, with the automation of certain responses or emails. Opportunities, on the
contrary, are usually tracked one by one by the salespeople because an opportunity involves a negotiation process.

Just like for leads, OpenERP provides specific menus to handle sales opportunities efficiently. All opportunities
can be found in the menu Sales → Sales → Opportunities.

To quickly create a new opportunity, use the menu Sales → Sales → Opportunities and click the New button. You
usually do this when the opportunity is direct and has not been generated from a lead.  It can also be useful to
create a shortcut to this menu so that you can quickly open a new opportunity form when you need to – after a
phone call, or an email, that needs followup.

In other cases, an opportunity may be generated from a lead. Fill out the Next Action Date to ensure good follow-
up. Use the filters to group by Priority and then click the Next Action Date column to sort by next action date.

The salesperson uses the menu Sales → Sales → Opportunities to track his opportunities by applying proper
filters. After various customer contacts, the salesperson can enter the information into the form to describe the
activity. The Communication & History tab provides a history of all the information about the activity. The
activities are automatically reported on the partner form of the associated customer. To see this, click the History
tab in the partner form.


History of events in a partner form

When a lead has been converted into an opportunity, the latter can be assigned to any salesperson. Then you des-
ignate an opportunity manager in the company who is responsible for assigning the new opportunities to different
salespeople to suit their speciality, location or availability.

You can also use Automated Rules to automatically assign opportunities or change their status.

Also the sales manager can use the menu Sales → Sales → Opportunities and click the Salesman or Group By
tab. This gives you a list of all opportunities assigned to a salesperson. The manager can easily find unassigned
opportunities, then enter the salesperson responsible for the opportunity into the field Salesman.

When you answer to an opportunity from the Communication & History tab, you can directly have the status of
the opportunity changed. You can also add a Global CC, even with multiple email addresses separated by ‘;’. This
makes sure that when any email regarding this opportunity is sent, all the persons defined in Global CC will be
notified.

Geolocalize your Opportunities

You can geolocalize your opportunities by using the module crm_partner_assign.

Install the crm_partner_assign module to use geolocalization when assigning opportunities to partners.

  • Through Sales → Configuration → Leads & Opportunities → Partner Grade, create Partner grades, such
    as Gold Partner, Silver Partner, Ready Partner. These grades will be used to determine who gets assigned
    which kind of opportunities.
  • Assign the grades to the partners on the Geo Localization tab of the partner form. Also assign a weight to
    determine the probability of assigning opportunities to a partner.
  • Click the Geo Localize button to determine the GPS coordinates according to the address of the partner.

Opportunities / Assignation tab

  • Convert a lead from a partner nearby to an opportunity. Press the Geo Assign button on the Assignation tab
    of the opportunity. The most appropriate partner will be assigned.

  • Click the Forward button to automatically send a mail to the assigned partner with all the details of the
    opportunity and the prospect.
  • On the Geo Localization tab of the partner form, the assigned opportunity will be displayed. Of course, you
    can reassign the opportunity to another partner.
  • Use the Opportunity Assignment Analysis for your reporting.

In the partner form, the Geo Localization tab gives you the information you need.


Geo Localization in partner form

Planning your Meetings effectively

There are several methods for entering a new meeting with a partner.  The first method is to enter the meeting
directly in the company calendar. To do that, use the menu Sales → Meetings → Meetings.

You can use the monthly, weekly or daily views to plan a meeting. To move between one mode and another use
the buttons above and to the right of the calendar.


Meeting calendar in weekly view

In the calendar you distinguish between multi-day (recurring) events and events that last only for a few hours.
Multi-day events have a colored background whereas single events have a colored font.  Each event has a color
that represents the user that created the meeting. You can filter the different users by selecting them from the list
at the left of the screen.

To enter a new meeting into the system you can click the day and the hour for a new meeting. In the weekly and
daily views you can also press the left mouse button on the calendar and slide the mouse along to create an event
of several hours. OpenERP then opens an entry screen for a new meeting.

You can also add reminders to your meetings and send invitations, either to persons from your own company,
partner contacts or external people (just specify the email address directly in the invitation).


Entering a new meeting

Track your Phone Calls

OpenERP allows you to manage incoming and outgoing calls.

Call management can be used for particular needs, such as:

  • Entering customer calls so that you keep a record of the communication attached to a partner or a sales
    opportunity,
  • Managing a call centre with operators who handle lists of calls to carry out one after another.

To enter details of a phone call, use one of the two following menus:

  • Sales → Phone Calls → Inbound to register incoming calls,
  • Sales → Phone Calls → Outbound to register outgoing calls,

The phone call will then be visible in the History tab of the Partner form to give you complete visibility of the
events for a customer or supplier.

Of course, OpenERP also allows you to schedule a phone call directly from an opportunity form through the
related Schedule/Log Call button.

 

KEEP TRACK OF YOUR CUSTOMERS & SUPPLIERS

It is often said that the customer is king. You would treat all your customers as royalty, at the center
of your attention if you had a way of keeping your eyes on them at all times. OpenERP’s CRM module
is designed to make this aim a reality, helping employees of the business understand their customers’
needs better, and automating their communication efforts.

If you want to focus on your customers, you need tools to make that focus easy.  Tools that will capture all the
knowledge you have available, tools that will help you analyze what you know, and tools that will make it easy to
use all of that knowledge and analysis.

A crucial advantage that OpenERP gives you over other CRM applications is that OpenERP knows more about
your customers and your ability to supply them because it is handling all of your accounting, sales, purchases,
manufacturing and fulfilment as well as linking to all of your internal staff. OpenERP’s crm business application
uses that information and offers several significant features that enable you and your staff to monitor and control
your supplier and customer relationships effectively, such as delegating issues to the most appropriate people,
keeping a history of communications and events, qualifying prospects and detecting problems.

It also uses several statistical tools that can analyze relationships quantitatively – your customer service perfor-
mance and the quality of your suppliers, for example. Using performance analysis, you can easily put a policy of
real continuous improvement in place by developing an automatic rules-based system in OpenERP.

To minimize re-typing work, OpenERP provides an email gateway that links your emails to the databases. This is
a significant feature – many of your staff members can then use OpenERP automatically through their email client
without ever logging into it themselves and having to learn a new system.

Finally, at the end of this chapter you will see an efficient method of qualifying prospects or customers that enables
you to offer a service tailored to the potential value of different prospects.

For this chapter you should start with a fresh database that includes demo data, install the Customer Relationship
Management application.

2.1  Organize your Partners

In OpenERP, a partner represents all the entities that you can do business with. Some possible types of partners
are:

  • suppliers,
  • manufacturers,
  • customers,
  • employees,
  • prospects.

The concept of a partner here is much more flexible than in many other management applications because a partner
can correspond to one type or a combination of several of these types. This avoids double data-entry and provides
greater flexibility in the features available.

So a partner can be both your supplier and your customer at the same time. This feature is particularly important
when you have subsidiaries or franchises since transactions between the parent and its subsidiaries in these cases
will generally be two-way.

2.1.1  Creating and Updating Partners

To create a new customer or get a list of customers using demonstration data, use the menu Sales → Address
Book → Customers.


A customer form

To create a new partner in OpenERP (a company, customer, supplier, ...) you should at least enter the company’s
Name in the partner form.

Documentation to be completed.

2.1.2  Customizing Partner Fields

In the web version, click Manage Views if you want to customize the Partner view to your needs. You can add
fields, delete fields or change the order of fields.

2.1.3  Performing Actions on Partners

To the right of the customer form you will find all of the actions, reports and shortcuts available for the selected
partner.

Print a reminder letter from the Action bar, or create a new opportunity for a customer.

Another Action enables you to quickly send an SMS message.

To send an SMS message to a partner or a selection of several partners, first select the partners then click the Send
SMS Action icon.

2.1.4  Filtering your Partners

Open the Customer list view to discover the search options allowing you to easily filter your partners.  You can
group by Salesman to see which customers have already been assigned to a salesman or not. Click the button at
the right (the icon of the person) to see the customers you are responsible for.

These filters also allow you to quickly set lists of customers for which you want to do specific actions.

2.1.5  Contacts / Addresses

You can have several contacts for one partner.  Contacts represent company employees that you are in contact
with, along with their address details. For each address you can indicate the address type (Default , Invoice
, Delivery , Contact or Other ). Based on this, OpenERP can supply an address that matches the contact’s
function when generating documents in various stages through an Order process.

Contacts can be entered into the first (General) tab of the Customer form, or you can get direct access to the list
of addresses through the Sales → Address Book → Addresses menu.

You can search for a subset of Partners and Contacts using the search view.

2.1.6  Partner Categories

OpenERP uses hierarchical categories to organize all of its partners. To reach the list of available partner
categories, use the menu Sales → Configuration → Address Book → Partner Categories.


List of Partner Category

Double-click one of the categories in the partner category structure to get a list of the partners in that category. If
you click on a category that has subcategories you will get a list of all of the partners in the main category and in
all of its subcategories.

Because categories are structured in a hierarchical manner, you can apply an action at any level of the structure: a
marketing promotion activity, for example, can be applied either to all customers, or selectively only to customers
in one category and its subcategories.

The tree structure is also very useful when you are running the various statistical reports. You can structure reports
at any level of the hierarchy using this partner segmentation.

In the following sections you will see how to assign partners to categories manually (perhaps for a newsletter
subscription or as a hot prospect), or automatically using segmentation rules.

Use the menu Sales → Configuration → Address Book → Partner Categories and click the New button to define
a new category.

2.2  Advanced Customer Relations

OpenERP also supplies several tools to improve and automate relationships with partners.  They will not be
described in detail here, just briefly introduced.
The Web client allows you to define specific access rules to allow your customers to access useful information,
such as orders or deliveries.

2.2.1  Fetchmail

The Fetchmail functionality lets you interface the CRM with incoming and outgoing e-mails. You can install this
feature when you configure the CRM or by installing the fetchmail module.  It also allows you to create an
object in OpenERP from an e-mail you receive. Simply define the generic mail address you want to use, such as
sales@openerp.com, and link it to the crm.lead object. Every mail that is sent to this address, will automatically
created as a lead for you to qualify. The Outlook and Thunderbird plugins let you easily create contacts from your
mail client in OpenERP. You can also link e-mails (with attachments) to OpenERP, to avoid information getting
lost. Both plugins enable you to create sales leads based on exchanges you have with the customer.

2.2.2  Automated Actions

The rules for automating actions enable you to send emails automatically based on the event, such as assigning
opportunities to the most appropriate person. To access the CRM rules, use the menu Sales → Configuration →
Automated Actions → Automated Actions.

2.2.3  Profiling

The segmentation tools let you create partner groups and act on each segment differently according to question-
naires. For example you could create pricelists for each of the segments, or start phone marketing campaigns by
segment.  To enable the management of segmentation you should install the module crm_profiling, which
can also be achieved from the Configuration Wizard.

2.2.4  Report Designer

The base_report_designer module enables you to create letter templates in OpenOffice and automate
letters for different prospects. OpenERP also has e-mail templates to simplify the creation of mass mailing.

2.3  Helpdesk Calendars

The OpenERP client can display any type of resource in the form of a timetable. You can generate calendar views
for each of your cases as you create menus for those cases.

So if you want to implement a shared calendar for your calendar in OpenERP all you need to use the menu Sales
→ Meetings → Meetings.

You will get menus enabling you to manage calendars for each employee, and you will also get a shared calendar
for the company. This calendar view is totally dynamic. You can move an event or change its duration just using
your mouse.


Monthly view of the meeting calendar for cases

You can change the view and return to the list view, forms or graphs by using the buttons at the top right.
Open ERP’s usual search tools and filters enable you to filter the events displayed in the calendar or, for example,
to display the calendar for only some employees at a time.


Weekly view of the meeting calender for cases

2.4  Analyzing Performance

Since all of your customer communications are integrated into the OpenERP system, you can analyse the perfor-
mance of your teams in many ways.

You can use menu Sales → Reporting to view different statistical reports.

As for example statistical analysis of HelpDesk can be seen using the menu Sales → Reporting → Helpdesk
Analysis and switch to Graph view.


Analyzing the performance of your Helpdesk support team

The system shows you statistics per user and it is possible to filter on each section and use other criteria for
searching.  For example, you can type in a date range, click Filter, and see the graph change to reflect the new
data.

By default, the system provides a list containing the following information for each month, user and section, and
an indication of the state of each set of information:

  • number of cases,
  • average delay for closing the request,
  • estimated revenue for a business opportunity,
  • estimated cost,
  • estimate of revenue multiplied by the probability of success, to give you an estimated weighted revenue
    figure.

You can specify that the graph view, say, appears by default so that you can consistently present the information
more visually.

2.5  Automating actions using rules

Analyzing figures gives you a better basis for managing all of your services and customer and supplier relation-
ships. But you can do more than just display the figures graphically from time to time.

If the performance of a section, a user or a category of a case is beginning to cause concern then you can use
OpenERP’s rules system to monitor the situation more closely. Rules enable you to automatically trigger actions
depending on criteria you define for each case. They provide a good way of implementing a proper continuous
improvement policy for your customer relations and quality of service.

Using these rules you could:

  • automatically send emails to the client during different phases of a support request, to keep the client up to
    date with progress,
  • assign the case to another person if the the case manager is on holiday,
  • send a reminder to the supplier if their response is delayed too long,
  • always mark a case as urgent if it is from a major client,
  • transfer the case to technical services if the request is about a technical fault.

To define new rules use the menu Sales → Configuration → Automated Actions → Automated Actions and click
the New button.


Form to enter the Automated Action

The criteria for activating this rule are defined on the main part of the screen. These criteria are:

  • a condition about the initial state (for example during the creation of a case – initial state: None , eventual
    state: Draft ),
  • a condition about the destination state (for example at the closure of a case to send a confirmation or thank
    you e-mail),
  • the case section to which the rule applies,
  • the category for the case,
  • a condition about the manager of the case (for example to send copies of case progress to a manager if the
    client request is handled by a trainee),
  • a condition about the priority level (for example to provide different types of reaction depending on the
    urgency of the request),
  • a partner or a category to be applied to the rule,
  • a date for the trigger
    –  reporting by the date of creation
    –  reporting by date of the last action
    –  reporting by the length of time that it is been active.

If you have defined several criteria OpenERP will apply the rule only if all of the criteria are valid.

You define the action that will be taken if the rule is met in the second tab of the lower part of the setup window.
The following actions are included:

  • change the state of the case,
  • move the case to a new section,
  • assign the case to a system manager,
  • change the priority of a case,
  • send a reminder to the case manager or a partner,
  • attach information (or not) to a reminder,
  • send copies of the case discussion to specified email addresses,
  • send a predefined email.

2.6  Using the e-mail gateway

To automate the creation of current cases you can install the e-mail gateway.

The e-mail gateway enables you to use OpenERP’s CRM without necessarily using the OpenERP interface.
Users can create up-to-date cases just by sending and receiving emails. This system works with the major current
email clients such as Microsoft Outlook, Thunderbird and Evolution.


Schematic showing the use of the e-mail gateway

2.6.1  Installation and Configuration

To use the e-mail gateway you must install the Fetchmail module. You might need a system administrator to carry
out this work.

Install the Fetchmail module from the Configuration Wizard (CRM Configuration Wizard, Synchronization, Fetch
Emails), or install it from the modules list.

Step 1

Go to Tools → Configuration → Email Template → Email Accounts to define the e-mail smtp settings.

In the Description field, type the visible name you would like to use for the account.

In Server, type the mail server, i.e. smtp.googlemail.com.

Type the SMTP port (e.g. 587), configure the other settings according to the specifications of your server.

Add  the  User  Information,  such  as  e-mail  address  for  which  the  mails  will  enter  OpenERP,  i.e.    sup-
port@mycompany.com, the user name and the password. Configure the other settings to your needs.

Save and click the Test  Outgoing  Connection button to check whether the settings are correct.

When everything is correctly configured, Approve the account. OpenERP will automatically create a Scheduler
for the mails. You can also send/receive mails manually by clicking the Send/Receive button.

Step 2

Go to Sales > Configuration > Emails > Email Servers to define the e-mail server settings.

Assign a Name and select the Server  Type, i.e. IMAP Server.

Click Add  Attachments if you want to include attachments for the mails received / sent.

Enter the Server Information, check SSL if necessary, i.e. imap.googlemail.com and the Login Information.

You can also choose to send an automatic reply on receipt of the mail. You can configure the mail here from the
Email  Server  Action field.

Assign the Model to use when a new e-mail arrives, i.e. choose Helpdesk (crm.helpdesk) if you want every new
e-mail that arrives to be created as a helpdesk case.

Click Confirm to confirm the account settings.

On every e-mail check, OpenERP will create a new helpdesk case, or any other object according to the model you
specified. You can of course create as many accounts as you want and link them to different objects.

2.6.2  Creating and maintaining cases

Each time you start fetchmail it downloads all the e-mails and creates or updates the cases in CRM. You can turn
fetchmail into a daemon to check all new emails every five minutes by using the OpenERP scheduler.

If you want to receive customer requests by e-mail you must first create a rule that automatically assigns new
cases to a specified user.  You must then verify that this user possesses a suitable e-mail address in the Address
field within OpenERP.

To find out if the new e-mail should create a new case or update an existing case, OpenERP analyzes the subject
line of the email. Existing cases are identified by the case number in the subject line, for example

Re: [101] Problem with ...

When a customer sends a new request by e-mail the case is automatically created and the e-mail is transferred by
the gateway to the user responsible for new cases, changing the subject line to add the case identifier. The user can
then respond by emailing or by using the OpenERP interface to the case. If the user responds by e-mail the case
can be automatically closed in OpenERP, keeping the responses in the history list. If the partner responds again,
the case is reopened.

2.7  Supplier relationship management

To manage supplier relations, you should install the crm_claim module.  You will then be able to manage
supplier complaints and integrate them with your emails and document management.

To do that, use the Reconfigure wizard. Ensure Customer Relationship Management is installed. Once you have
installed the crm module, check the checkbox by the Claims option during configuration. OpenERP will then
create a menu in your working database for managing supplier complaints.


Selection of the management of complaints in the CRM installation

Once the module is installed you can use the menu Sales → After-Sales Services → Claims.


Data entry screen for a supplier complaint

The CRM module has many reports predefined. Through the menu Sales → Reporting → Claims Analysis you
can analyse:
the number and the severity of the complaints by supplier or user,
the response time of your suppliers to your requests,
the supplier problems by type.

2.8  Profiling

2.8.1  Using Call Center Features

You can manually encode calls that happen or you can pass them into OpenERP. But for mass campaigns, you can
import a list of phone calls to make. To do this, click the import link at the bottom of the list of phone calls. On
the GTK client use the toolbar button Form → Import data... at the top.

The different operators can be assigned calls and handle them one by one using the menu Sales → Phone Calls →
Outbound.

The operator can open the calls one by one. For each call, after having contacted the customer, the operator can
click on one of the following buttons:

  • Cancel: you cancel the call. For example you could cancel the call if you have tried to call them more than
    three times.
  • Held: you have spoken to the customer by phone. In this case the operator can change the case section and
    send it to sales opportunities, for example. You could alternatively leave it in this state if you do not need to
    carry out any more actions with this customer.
  • Not Held: the customer has not been called, you will try to call him again later.

2.8.2  Establishing the profiles of prospects

During presales activities it is useful to qualify your prospects quickly. You can pose a series of questions to find
out what product to offer to the customer, or how quickly you should handle the request.

As an illustration, take the case of the OpenERP company which offers a service based on the OpenERP software.
The company goes to several exhibitions and encounters dozens of prospects over a few days. It is important to
handle each request quickly and efficiently.

The products offered by OpenERP at these exhibitions are:

  • training on OpenERP – for independent people or small companies,
  • partner contract – for IT companies that intend to offer an OpenERP service,
  • OpenERP as SaaS – for small companies,
  • a meeting in conjunction with a partner to provide a demonstration aimed at providing a software integration
    – for companies that are slightly larger.

The OpenERP company has therefore put a decision tree in place based on the answers to several questions
posed to prospects. These are given in the following figure Example of profiling customer prospects by the
OpenERP company:


Example of profiling customer prospects by the OpenERP company

The sales person starts by asking the questions mentioned above and then with a couple of minutes of work can
decide what to propose to the prospective customer.

At the end of the exhibition prospects’ details and their responses to the questionnaire are entered into OpenERP.
The profiling system automatically classifies the prospects into appropriate partner categories.

This enables your sales people to follow prospects up efficiently and adapt their approach based on each prospect’s
profile. For example, they can send a letter based on a template developed for a specific partner category. They
would use Open ERP’s report editor and generator for their sales proposition, such as an invitation to a training
session a week after the show.

2.8.3  Using profiles effectively

To use the profiling system you will need to install OpenERP’s crm_profiling module. It is part of the core
OpenERP system in version 6.0.0 so you do not have to download it separately from addons-extra.

You can also use the Reconfiguration Wizard and add Profiling.

Once the module is installed you can create a list of questions and the possible responses through the menu Sales
→ Configuration → Leads & Opportunities → Questions.

To obtain the scheme presented earlier you can create the following questions and responses:

Questionnaire for defining profiles

For instance, a sales person specializing in large accounts for the service sector could have a profile defined like
this:

  • Budget for integration: Unknown , 100k-300k or >300k ,
  • Already created a specification for the work? Yes ,
  • Industry Sector? Services .

When entering the details of a specific prospect, the prospect’s answers to various questions can be entered in the
Profiling tab of the partner form. OpenERP will automatically assign prospects to the appropriate partner category
based on these answers.

Customers corresponding to a specific search profile can be treated as a priority. The sales person can access the
profile of the large active accounts easily.

 

COMMUNICATION TOOLS

OpenERP provides all the information you need to pursue your company’s business opportunities
effectively.  But to stay productive with all the information you have to handle it is essential that
you can keep using your normal communication tools by interfacing them with OpenERP, and not be
limited just to OpenERP’s interface.

OpenERP can do most things you need to pursue your business opportunities. But there can be quite a bit to learn,
which reduces your efficiency while you are learning. And if that is true for a heavy user of the system, it is double
true for an occasional user or someone who already makes heavy use of standard mail clients and cannot easily
change.

So for those who need to continue using their traditional mail clients to maintain their efficiency, OpenERP can
be connected to Outlook and Thunderbird.  Your users can participate in many OpenERP-maintained processes
without ever leaving their familiar environment, and can avoid double data entry yet easily link information to
OpenERP’s database automatically.

The two following modules are described:

  • Mozilla Thunderbird Interface,
  • Microsoft Outlook Interface.

The chapter is a mix of installation and configuration instructions, and basic interaction exercises.

For this chapter you should start with a fresh database that includes demo data, with sale and crm and their
dependencies installed and no particular chart of accounts configured.

You will also need to have administrator access to your Windows PC to install the Outlook adapter described in
the chapter.

3.1  Microsoft Outlook interface

The Microsoft Outlook plugin enables you to carry out a series of OpenERP operations directly from the Outlook
e-mail client:

  • create a contact or partner from an e-mail,
  • save an e-mail and its attachments in OpenERP,
  • send any attachment to an OpenERP document (such as proposals, projects, and tasks).

This might be useful for sending documents about a customer project to the corresponding project in OpenERP, at-
taching documents to an order (such as proof of payment and order receipts), attaching documents to an employee
file (such as a CV or annual appraisal).

3.1.1  Installing the Outlook plugin

Step 1: install the Outlook plugin in OpenERP

Use the OpenERP Configuration Wizard and install the Customer  Relationship  Management applica-
tion. In the CRM Application Configuration dialog under Plug-In, select MS-Outlook. Then the Outlook Plug-In
wizard appears.  Next to the Outlook  Plug-in field, click the Save  As button to save the plugin to your
desktop (or any other location on your computer).

You can also download the installation manual by clicking the green arrow next to Installation  Manual.

Another way to use the Outlook plugin, is by installing the OpenERP module outlook. When you install this
module, the same Configuration Wizard as explained before will be displayed. Follow the same instructions.

Step 2: Prerequisites

1. Install Python 2.6+
Download from http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi
or for 64bit system http://www.python.org/ftp/python/2.6.6/python-
2.6.6.amd64.msi. Run the .exe file to install the software.

2. Python for Windows extensions -
PyWin32, this module for python must be installed for the appropriate version of Python.
http://sourceforge.net/projects/pywin32/files/pywin32/Build%20214/pywin32-214.win32-
py2.6.exe/download or for 64bit system
http://sourceforge.net/projects/pywin32/files/pywin32/Build%20214/pywin32-214.win-amd64-
py2.6.exe/download

3. Specify the python folder in the system path (typically with this installer C:Python26)

How to set the path in Windows XP
For Windows XP: http://www.computerhope.com/issues/ch000549.htm

How to set the path in Windows 7
To change the system environment variables, follow the steps below.

- From the Windows button, select Control  Panel, then click System.
- Click Remote  Settings to open the System Properties window.
- In the System Properties window, click the Advanced tab.
- In the Advanced section, click the Environment  Variables button.
- Finally, in the Environment Variables window (as shown below) under System Variables, highlight the Path di-
rectory,
click Edit and add ;C:Python26.
See also http://geekswithblogs.net/renso/archive/2009/10/21/how-to-set-the-windows-path-in-windows-7.aspx

4. If you are using MS Outlook 2007 than you are required to install ”Microsoft Ex-
change Server MAPI Client and Collaboration
Data Objects 1.2.1 (CDO 1.21)” from
http://www.microsoft.com/downloads/en/details.aspx?FamilyId=2714320D-C997-4DE1-986F-
24F081725D36&displaylang=en.
Double-click Exchange Cdo to install it.

5. If you are using MS Outlook 2003, be sure to install the builtin Cdo component.

Step 3: install the OpenERP extension in Outlook.

1.  Double-click the file ‘‘OpenERP-Outlook-addin.exe‘‘that you saved on your desktop. Confirm the
default settings.
2.  Double-click the file ‘‘Register plugin‘‘in the OpenERP Outlook Addin folder (typically in
C:Program Files).
3.  Start Outlook.

3.1.2  Configuring the Outlook plugin

When you have executed Installation Step 1, Step 2 and Step 3, the first thing to do is connect Outlook to
OpenERP. A little configuration needs to be done.

  • Go to the menu Tools and select Configuration. If this raises an error, make sure to check the rights to that
    particular folder.

A configuration window appears enabling you to enter configuration data about your OpenERP server.


How to Connect to the Server

1.  On the Configuration  Settings tab, under Connection Parameters click the Change button and type your
server settings and xml-rpc port, e.g. http://127.0.0.1:8069,
2.  Select the database you want to connect to, and type the user and the password required to log in to the database,
3.  Click the Connect button,
4.  On the Configuration  Settings tab, under Webserver Parameters click the Change button and type your web
server settings, e.g. http://localhost:8080,
5.  Click the Open button to test the connection.

When your connection has succeeded, you would typically want to configure Outlook to fit your needs.

To define extra document types, go to the Document Settings tab. This is the place where you can add objects
from OpenERP that you wish to link mails to. The default installation comes with a number of predefined
documents, such as Partners, Leads and Sales Orders.

Here is an example of how to configure extra document types. Suppose you would like to link mails to a meeting.
1.  In the Title, type Meeting,
2.  In the Document, type the object from OpenERP, in this example crm.meeting,
3.  In the Image, select an icon you would like to use,
4.  Click the Add button to actually create the document type.

3.1.3  Using the Outlook plugin

You can use the menu Tools for several things.

The Push option allows you to archive e-mails to OpenERP, either to new document types or to existing ones. It
also allows you to create a new contact.

The Partner allows you to open the Partner in OpenERP according to the e-mail (i.e. contact e-mail address)
selected.

With Document, you can open the document concerned in OpenERP. Make sure you are logged in to the web
version to use this functionality.

  • Link a mail to an existing document in OpenERP


How to Access OpenERP from Outlook?

To archive an e-mail in OpenERP from Outlook, select the e-mail and click the Push button. Alternatively you
can open the menu Tools → Push: the Push  to  OpenERP screen will open.

In the Link  to  an  Existing  Document section, select an object to which you like to add to your email
and its attachments. You can select any object you defined in the Document  Settings section and attach the
selected mail to the selected record. The plugin also allows you to select several documents at once, simply by
selecting a document and pressing the ctrl button when selecting the next document.

Do not forget to click the Search button to refresh the Documents list when you have selected a different
document type.

  • Create a New Document

This feature can be used to create any of the configured document types in the Document  Settings tab.
Suppose you would like to create a new lead from an e-mail. In the Create  a  New  Document section, select
CRM  Lead, then click the Create button. A new lead will be created in OpenERP from the selected e-mail.

  • Create a New Contact / Partner

If you cannot find a partner or contact for your e-mail in OpenERP, the Outlook plugin allows you to create one
on the fly simply by using the information contained in the e-mail.
Select the e-mail from which you want to create a new contact, then click the Push button. In the Create  a
New  Contact section, click the New  Contact button. This option offers two possibilities: either you just
create a contact (address), or you create a partner with the contact linked to it.

  • When you just want to create a new contact, complete the address data in the dialog box and click the
    Save button. The contact will then be created in OpenERP.
  • When you also want to create a new partner, complete the contact data. Then click the Create
    Partner button, add the partner’s name and click the Save button.
  • You can also add a new contact to an existing partner. Click the Search button next to the Partner field
    and select the corresponding partner from the list. Then complete the contact data and click the Save
    button.


Creating a contact on the fly from Outlook

  • Open the Document created in OpenERP

To access archived data from different documents in OpenERP you can use the menu Tools → Document which
allows you to access the document in OpenERP directly from your e-mail.

3.2  Mozilla Thunderbird interface

With the Mozilla Thunderbird plugin you can carry out a series of OpenERP operations directly from
Thunderbird, such as:

  • create a contact or partner from an e-mail,
  • save an e-mail and its attachments in OpenERP,
  • send any attachment to an OpenERP document (such as proposals, projects, and tasks).

This might be useful for sending documents about a customer project to the corresponding project in OpenERP,
attaching documents to an order (such as proof of payment and order receipts), attaching documents to an
employee file (such as a CV or annual appraisal).

3.2.1  Installing the Thunderbird plugin

  • Step 1: install the Thunderbird plugin in OpenERP

Use the OpenERP Configuration Wizard and install the Customer  Relationship  Management
application. In the CRM Application Configuration dialog under Plug-In, select Thunderbird. Then the
Thunderbird Plug-In wizard appears. Next to the Thunderbird  Plug-in field, click the Save  As button
to save the plugin to your desktop (or any other location on your computer).

You can also download the installation manual by clicking the orange arrow next to Installation  Manual.
Another way to use the Thunderbird plugin, is by installing the OpenERP module thunderbird. When you
install this module, the same Configuration Wizard as explained before will be displayed. Follow the same
instructions.

  • Step 2: install the OpenERP extension in Thunderbird.

To do that, use the file ‘‘openerp_plugin.xpi‘‘that you saved on your desktop.

Then proceed as follows:
1.  From Thunderbird, open the menu Tools → Add-ons.
2.  Click Extensions, then click the Install button.
3.  Go to your desktop and select the file openerp_plugin.xpi. Click Open.
4.  Click Install Now then restart Thunderbird.

Once the extension has been installed, a new OpenERP menu item is added to your Thunderbird menubar.

3.2.2  Configuring the Thunderbird plugin

When you have executed Installation Step 1 and Step 2, the first thing to do is connect Thunderbird to OpenERP.
A little configuration needs to be done.

Go to the OpenERP menubar and select ‘ Configuration‘.

A configuration window appears enabling you to enter configuration data about your OpenERP server.


How to Connect to Server

1.  On the Configuration  Settings tab, under Connection Parameters click the Change button and type your
server settings and xml-rpc port, e.g. http://127.0.0.1:8069,
2.  Select the database you want to connect to, and type the user and the password required to log in to the database,
3.  Click the Connect button,
4.  On the Configuration  Settings tab, under Webserver Parameters click the Change button and type your web
server settings, e.g. http://localhost:8080,
5.  Click the Open button to test the connection.

When your connection has succeeded, you would typically want to configure Thunderbird to fit your needs.

To define extra document types, go to the Document Settings tab. This is the place where you can add objects
from OpenERP that you wish to link mails to. The default installation comes with a number of predefined
documents, such as Partners, Leads and Sales Orders.

Here is an example of how to configure extra document types. Suppose you would like to link mails to a
purchase order.
1.  In the Title, type Purchase Order,
2.  In the Document, type the object from OpenERP, in this example purchase.order,
3.  In the Image, select an icon you would like to use,
4.  Click the Add button to actually create the document type.


How to Add Extra OpenERP Document Types to Thunderbird?

3.2.3  Using the Thunderbird plugin

You can use the menu OpenERP for several things.

The Push option allows you to archive e-mails to OpenERP, either to new document types or to existing ones. It
also allows you to create a new contact.

The Partner allows you to open the Partner in OpenERP according to the e-mail (i.e. contact e-mail address)
selected.

With Document, you can open the document concerned in OpenERP. Make sure you are logged in to the web
version to use this functionality. You have to open the mail to use this feature.

  • Link a mail to an existing document in OpenERP


How to access OpenERP from Thunderbird?

To archive an e-mail in OpenERP from Thunderbird, select the e-mail and click the Push button. Alternatively
you can open the menu OpenERP → Push: the Push  to  OpenERP screen will open.

In the Link  to  an  Existing  Document section, select an object to which you like to add to your email
and its attachments. You can select any object you defined in the Document  Settings section and attach the
selected mail to the selected record. The plugin also allows you to select several documents at once, simply by
selecting a document and pressing the ctrl button when selecting the next document.

Do not forget to click the Search button to refresh the Documents list when you have selected a different
document type.

  • Create a New Document

This feature can be used to create any of the configured document types in the Document  Settings tab.
Suppose you would like to create a new lead from an e-mail. In the Create  a  New  Document section, select
CRM  Lead, then click the Create button. A new lead will be created in OpenERP from the selected e-mail.

  • Create a New Contact / Partner

If you cannot find a partner or contact for your e-mail in OpenERP, the Thunderbird plugin allows you to create
one on the fly simply by using the information contained in the e-mail.

Select the e-mail from which you want to create a new contact, then click the Push button. In the Create  a
New  Contact section, click the New  Contact button. This option offers two possibilities: either you just
create a contact (address), or you create a partner with the contact linked to it.

  • When you just want to create a new contact, complete the address data in the dialog box and click the
    Save button. The contact will then be created in OpenERP.
  • When you also want to create a new partner, complete the contact data. Then click the Create
    Partner button, add the partner’s name and click the Save button.
  • You can also add a new contact to an existing partner. Click the Search button next to the Partner field
    and select the corresponding partner from the list. Then complete the contact data and click the Save
    button.


Creating a contact on the fly form Thunderbird

  • Open the Document created in OpenERP

To access archived data from different documents in OpenERP you can use the menu OpenERP → Document
which allows you to access the document in OpenERP directly from your e-mail.

3.3  Marketing Campaigns

OpenERP offers a set of modules allowing you to easily create and track your Marketing Campaigns. With the
Marketing application you define your direct marketing campaigns, which can be displayed in List or Diagram
view (process).

To use the email functionality, you have to configure your email account. Go to Sales > Configuration > Emails
> Email Servers. Configure your server (i.e. Google), example below. The object defines where you want the
emails to enter (e.g. as a Lead). (See Using the e-mail gateway)

Click the Fetch email button to get the emails directly. OpenERP also automatically creates a Scheduled Action
to fetch the mails every 5 minutes. The email is automatically created as a lead (according to the object used).

3.3.1  Automate your leads with Marketing Campaigns

Example with the email marketing campaign we follow at OpenERP for our SAAS offer.

Whenever someone subscribes to OpenERP online he/she fills a form which becomes the lead of OpenERP SaaS
offer Campaign. Our SaaS salesperson triggers the marketing campaign by sending an introductory email of
services we offer and thanking for subscribing for the one month free trial. Based on the response, we plot
whether the lead is interested in OpenERP SAAS offer, Training or buying the OpenERP book. Significantly
these are our subsets and based on their cues we send them email catering that respective needs. If they respond
back, they are converted into an opportunity and thereby on subscription of our services they become our partner.
In lack of response, we sent them another reminder regarding the offer after a weeks duration. If they still did not
respond, our salesperson gives a voluntary call inquiring their needs. Hence like a flowchart we can trigger a
respective activity for every possible cues. The chances of leads going unattended becomes very low, and for
every lead we have a predefined method of treating it and we could measure it with our goals. Based on the goals
we can also evaluate the effectiveness of our campaign and analyze if there is a room of improvement.

What are the questions you should focus on?

Designing every marketing campaign is mostly a long term process and the success of any campaign depends on
the research and the effectiveness in the selection of customers in the campaign. There are certain questions that
every marketeer always asks while designing a campaign.

  • What would be our marketing campaign?
  • Who would be the target audience?
  • How would we measure the effectiveness of our campaign?

The OpenERP campaign works on the basic principle of lead automation. A lead is created based on a specific
response by a customer towards a stimuli. E.g: Filling the subscription form on your website. The first step is
defining the campaign i.e. the sequence of steps to be performed. On defining the campaign we trigger a set of
activities in the marketing campaign module of OpenERP. Based on the lead automation we define the sequence
of steps we ought to follow, the modes of creating and processing these activities and the cost involved with these
campaign. Thus after each activity and based on its respective stimuli we can trigger the next event of the
respective campaign.

Why is the Segment important?

The two most important points for any successful campaign are the adoption of a concrete methodology of
execution and choosing the right segment: a target loop of customers to whom our campaign would be directed.
Inappropriate focus on segment would result in the campaign being misfired and our efforts would reach deaf
ears.

Through the Segment tab in the Campaign module we can define our segment for the Campaign activity, since it
is possible that with every step downwards our segment gets narrowed in terms of number. You can also
synchronize the entire campaign steps based on our defined segments.

How is Marketing Campaign related to CRM?

The Marketing Campaign module is closely synchronized with the Sales Management Business Application
(CRM). Initially,let us consider the segment we cater in the campaign as Leads. Goals are set for each campaign
which would be considered as a desired state. Once a lead accomplishes our objective criteria of goals we change
their status by converting them into Opportunity (i.e. we should give focused attention to those leads). Once the
lead satisfies our final objective we would consider them as a partner/customer and close that lead.

Email Templates

For each email template, you can have OpenERP generate a Wizard Action / Button that will be related to the
object. So if you choose to do marketing campaigns for leads, the action will be added to the right side panel of
the Lead form.

3.3.2  Defining a Marketing Campaign in OpenERP

Please notice that it requires some technical knowledge to configure Marketing Campaigns. To be able to see,
create, edit campaign, users need to be in the Marketing / User group.

0.  Introduction

A campaign defines a workflow of activities that items/objects entering the campaign will go through. Items are
selected by segments. Segments are automatically processed every few hours and inject new items into the
campaign, according to a given set of criteria. It is possible to watch the campaign as it is running, by following
the campaign “workitems”. A workitem represents a given object/item passing through a given campaign
activity. Workitems are left behind when the item proceeds to the next activities. This allows an easy analysis and
reporting on the running campaign. Each activity may execute an action upon activation depending on a dynamic
condition. When the condition is not met, the workitem is cancelled/deleted; if the condition is met, the action is
executed, the workitem is marked as Done, and propagated to the next activities.

1.  Campaigns (Marketing → Campaigns → Campaigns)

Campaign  Each campaign is made of activities and transitions, and must be defined on any specific object the
system knows about (e.g. Leads, Opportunities, Employees, Partners).

Mode

A campaign can be in one of 4 modes:

  • Test Directly: process the whole campaign in one go, ignoring any delay put on transitions, and does
    not actually execute the actions, so the result is simply the set of corresponding campaign workitems
    (see below). Any time a segment adds new items in the campaign they will be processed in the same
    manner.
  • Test in Real time: process the campaign but does not actually execute the actions, so the result is
    simply the set of corresponding campaign workitems (see below). Any time a segment adds new
    items in the campaign they will be processed in the same manner.
  • Manual confirmation: No action will be executed automatically, a human intervention is needed to let
    workitems proceed into the flow. It is like a step-by-step manual process using the Campaign
    Followup menu. You can ignore the time delays and force any step of the campaign, implementing
    the campaign at your pace i.e. (you have a test email and want to see if the steps and templates work
    to your liking). You will see that the actions set are defined as to do and Done and the page has to be
    refreshed to see the next activities defined by tthe campaign note: the campaign sends real messages
    to the actual targets, be warned.
  • Normal: the campaign is processed normally, all actions are executed automatically at the scheduled
    date. Pay attention that in this status, the campaign sends real messages to the actual targets.

Regardless of the current mode of the campaign, any workitem can be manually executed or cancelled at any
time (even if it is scheduled in the future) through Campaign Followup.

Resource  Specifies where the campaign will get the information from, i.e. the OpenERP object linked (e.g.
Leads, Opportunities, Employees, Partners).

Activities  Activities are steps in the campaign. Each activity is optionally linked to previous and next activities
through transitions.
Each activity has:

  • one optional condition that stops the campaign,
  • one action to be executed when the activity is activated and the condition is True (could be a ‘do nothing’
    action),
  • one optional signal (ignore it),
  • a start flag (see below).

Start Activity

Activities that have the Start flag set will receive a new workitem corresponding to each new resource/object
entering the campaign. It is possible to have more than one Start Activity, but not less than one.

Activity Conditions

[a Boolean expression, made of clauses combined using boolean operators: AND, OR, NOT] Each condition is
the criterion that decides whether the activity is going to be activated for a given workitem, or just cancelled. It is
an arbitrary expression composed of simple tests on attributes of the object, possibly combined using or, and &
not operators.

See section 6.1 at bottom for reference on Comparators.

The individual tests can use the “object” name to refer to the object/resource it originates from (e.g the lead),
using a “dot notation” to refer to its attributes. Some examples on a CRM Lead resource:

  • object.name == ‘GTK Survey Lead’ would select only leads whose title is exactly “GTK Survey Lead”,
  • object.state == ‘pending’ would select Pending leads only,
  • object.country_id.code == ‘be’ would select leads whose country field is set to Belgium,
  • object.country_id.name == ‘Belgium’ would select leads whose country field is set to Belgium.

Tests can also use a ‘workitem’ name to refer to the actual item denoting the position of the object in the
campaign. This can be useful to access some specific attributes, such as the segment that selected this item. Some
examples:

  • workitem.segment_id.name == ‘GTK Survey EU Zone1 - Industry Consulting/Technology’ would select
    leads that entered this campaign through the “GTK Survey EU Zone1 - Industry Consulting/Technology”
    segment,
  • ‘EU Zone1’ in workitem.segment_id.name would select only leads that entered the campaign through a
    segment that has “EU Zone1” in its name.

You can also use the special formula re.search(PATTERN_TO_SEARCH, ATTRIBUTE_TO_SEARCH) where
PATTERN_TO_SEARCH is a character string delimited with quotes, and ATTRIBUTE_TO_SEARCH uses the
dot notation above to refer to a field of the object. For example for CRM leads:

  • re.search(‘Plan to sell: True’, object.description) would be true if the Notes on a Lead contain this text:
    “Plan to sell: True”. Be careful that all spaces etc. do matter, so you may use the special pattern characters
    as detailed at the bottom to account for small variations,
  • re.search(‘Plan to.*True’, object.description) would be true if the Notes on a Lead contain this text: “Plan
    to” followed later on by “True”.

You can combine individual tests using boolean operators and parentheses. Some examples on a CRM Lead
resource:

  • object.state != ‘pending’ and ( re.search(‘Plan to sell:.*True’,object.description) and not re.search(‘Plan to
    use:.*True’,object.description) ) would be true if the lead is NOT in Pending state and it contains “Plan to
    sell” but not “Plan to use”

3.3.3  Guidelines for creating a campaign

  • It is a good idea to have an initial activity that will change some fields on the objects entering the campaign
    to mark them as such, and avoid mixing them in other processes (e.g. set a specific state and Sales Team on
    a CRM lead being processed by a campaign). You can also define a time delay so that the campaign seems
    more human (note if the answer comes in a matter of seconds or minutes it is computer generated).
  • Put a stop condition on each subsequent activity in the campaign to get items out of the campaign as soon
    as the goal is achieved (e.g. every activity has a partial condition on the state of the item, if CRM Leads
    stops being Pending, the campaign ends for that case).

2.  Email Templates (Marketing → Configuration → Email Template → Templates)

Email templates are composed of the following information:

  • The Email headers: to, from, cc, bcc, subject
  • The raw HTML body, with the low-level markup and formatting
  • The plaintext body

Headers and bodies can contain placeholders for dynamic contents that will be replaced in the final email with
the actual content.

3.  Campaign Segments

Segments are processed automatically according to a predefined schedule set in the menu Administration →
Configuration → Scheduled Actions. It could be set to process every 4 hours or every minute for example. This is
the only entry point in a campaign at the moment.

Segment filters

Segments select resources via filters, exactly the same kind of filter that can be used in advanced search views on
any list in OpenERP. You can actually create them easily by saving your advanced search criteria as new filters.
Filters mainly consist in a domain expressing the criteria of selection on a model (the resource). See the section
10.3 at the bottom for more information on the syntax for these filters.

For Leads, the following filter would select draft Leads from any European country with “Plan for use: True” or
“Plan for sell: False” specified in the body: | [ (‘type’,’=’,’lead’), | (‘state’, ‘=’, ‘draft’), | (‘country_id.name’, ‘in’,
[’Belgium’, | ‘Netherlands’, | ‘Luxembourg’, | ‘United Kingdom’, | ‘France’, | ‘Germany’, | ‘Finland’, |
‘Denmark’, | ‘Norway’, | ‘Austria’, | ‘Switzerland’, | ‘Italy’, | ‘Spain’, | ‘Portugal’, | ‘Ireland’, | ]), | ‘|’, |
(‘description’, ‘ilike’, ‘Plan for use: True’), | (‘description’, ‘ilike’, ‘Plan for sell: False’) | ]

6.  Miscellaneous References, Examples

6.1 Reference of Comparison Operators:

  • ==: Equal
  • !=: Not Equal
  • <: Bigger than
  • >: Smaller Than
  • <=: Bigger than or equal to
  • >=: Smaller than or equal to
  • in: to check that a given text is included somewhere in another text. e.g “a” in “dabc” is True

6.2 Reference of Pattern/Wildcard characters

  • . (dot) represents any character (but just one)
  • * means that the previous pattern can be repeated 0 or more times
  • + means that the previous pattern can be repeated 1 or more times
  • ? means that the previous pattern is optional (0 or 1 times)
  • .* would represent any character, repeated in 0 or more occurencies
  • .+ would represent at least 1 character (but any)
  • 5? would represent an optional 5 character

6.3 Reference of filter domains

Generic format is: [ (criterion_1), (criterion_2) ] to filter for resources matching both criterions. It is possible to
combine criterions differently with the following operators:

  • ‘&’ is the boolean AND operator and will make a new criterion by combining the next 2 criterions (always
    2). This is also the implicit operator when no operator is specified.
    –  for example: [ (criterion_1), ‘&’, (criterion_2), (criterion_3) ] means criterion_1 AND (criterion_2
    AND criterion_3)
  • ‘|’ is the boolean OR operator and will make a new criterion by combining the next 2 criterions (always 2)
    –  for example: [ (criterion_1), ‘|’, (criterion_2), (criterion_3) ] means criterion_1 AND (criterion_2 OR
    criterion_3)
  • ‘!’ is the boolean NOT operator and will make a new criterion by reversing the value of the next criterion
    (always only 1)
    –  for example: [ (criterion_1), ‘!’, (criterion_2), (criterion_3) ] means criterion_1 AND (NOT
    criterion_2) AND criterion_3

Criterion format is: ( ‘field_path_operand’, ‘operator’, value )
Where:

  • field_path_operand specifies the name of an attribute or a path starting with an attribute to reach the value
    we want to compare
  • operator is one of the possible operator:
    –  ‘=’ , ‘!=’ : equal and different
    –  ‘<’, ‘>’, ‘>=’, ‘<=’ : greater or lower than or equal
    –  ‘in’, ‘not in’ : present or absent in a list of value. Values must be specified as [ value1, value2 ], e.g. [
    ‘Belgium’, ‘Croatia’ ]
    –  ‘ilike’ : search for string value in the operand
  • value is the text or number or list value to compare with field_path_operand using comparator