Business Process Automation

At the end of last year, the Spanish Odoo Association held a tender for the creation of a marketing process automation module. Seeing its potential, we submitted a bid, but took it a step further, transforming it from a marketing tool into a process automation tool. Fortunately, we won the tender and presented the results at the Odoo Days. Here, we will delve into some of the details.

Why automate business processes?

Business process automation involves using technology to perform repetitive and routine tasks more efficiently and accurately. This frees up human resources to focus on higher value-added activities, while reducing errors and increasing execution speed.

Key Features

Our approach focuses on adaptability and seamless integration with the organization's existing processes.

  1. Customized process management: Our module allows the configuration of customized workflows to meet the specific needs of each company. From equipment management to event coordination, each process can be designed and automated according to particular requirements.
  2. Multifunctional integration: It is designed to act on any type of record in our instance, giving us great flexibility.
  3. Real-time tracking and analysis: This module provides a comprehensive view of process performance. This allows for more informed decision-making and proactive identification of areas for improvement.

Tangible Benefits

  1. Time and resource savings: By automating repetitive tasks, resources can be allocated more efficiently, allowing employees to focus on strategic activities.
  2. Error reduction: Automation eliminates the possibility of human errors, ensuring accuracy and consistency in all operations.
  3. Improved user experience: With optimized processes and faster response times, both employees and partners experience a smoother and more satisfying experience.

How do we do it?

The first step is to go to the automation menu where we can see our configurations.


As we can see, we have four different states:

  • Draft: These configurations do not execute.
  • Periodic: These configurations are executed constantly. They are useful for processes that happen completely automatically, such as sending an email for abandoned cart reminders.
  • On-demand: These configurations are executed manually. It is useful when we want total control over our execution.
  • Done: We have already used this configuration and no longer need it.

The second step is to access one of them and configure it.


As we can see, there is a lot of associated information, although the most important information is as follows:

  • Is periodic: This defines whether we will execute periodically or on demand.
  • Model: The base model we will use. The only condition is that it supports messages.
  • Uniqueness based on: This allows us to avoid generating duplicate processes. An example would be: When we create a contact, we only perform the process if the email has not been processed. This is useful to avoid duplications.
  • Filter and domain: This allows us to specify the minimum conditions of the record to execute the action.

Step-by-step configuration

Depending on the type of step we choose, some things change, but the most important thing we need to configure in each one is:

  • The type of action to be performed
  • The time to wait to execute from the previous step. If it has no parent, it is considered the creation of the main job.
  • Which previous step and under what conditions (email sent, email bounced...). It is important to know that in some conditions we may be suggested to set an expiration time, for example, if the email has not been answered within 3 hours, do not execute this task.
  • Domain: We can filter more by a specific task, which gives us great granularity.

Email step

This type of step allows us to send an email to the contact associated with the record.

In this case, the most important thing is to define an email template and the author who will send the record.

The sent emails will allow us to detect the following scenarios:

  • Email opened or not opened
  • A click has been made in the email or not
  • Email responded (or not)
  • Email bounced

Activity step​

In this case, the objective is to create an activity in the associated record. 


The important thing in this case is to define the type of activity, the deadline, and to whom the task is assigned. It can be a fixed person or found from the record itself, such as the assigned salesperson.

In this case, we will be able to detect when the task has been completed or not.

Server actions

This type of task allows us to perform server-side tasks associated with the record. This type of task can involve editing records, executing state changes, and involving a part of programming. In a previous blog post you can see in detail how it works.



Conclusion

Process automation is a necessity in the modern business world. This module allows us to maximize our effectiveness with minimal human involvement. We invite all organizations using Odoo to discover this tool that helps us improve our efficiency.

Integración de Odoo con herramientas de declaración de impuestos: Simplificación y automatización del proceso.