Odoo
Updated:
Odoo
is one of the leading ERP software
for open source, also previously known as OpenERP
.
Odoo
covers a wide range of Apps and modules such as CRM
, Sales
, Development
,
Project Management
, Sales
, Management of Human Resources
etc. There are different apps
available based on business verticals that can be installed and used by companies.
Some apps are available through the Open Source model for free.
The creation and execution of Odoo enable you to choose from thousands of modules available in the store.
Benefits of using Odoo
-
One solution for your entire business :
Odoo
is a business software suite that can cover all your needs in various modules such asInventory
,Sales
,CRM
,Accounting
,Manufacturing
,Human resources
and many more. -
Low cost of implementation :
Odoo
has a relatively low cost of implementation as well as low recurring costs by providing bothCommunity Version
andEnterprise Edition
. -
Intuitive user interface :
Odoo
is a user-friendly tool since the main page after logging in shows the different modules each user has access to. After selecting one of these modules, users can further navigate by using the navigation bar at the top. -
Easy to implement : Since,
Odoo
has a modular structure(sales, accounting, inventory, etc. split into parts or modules), it can be implemented in a phased approach one module at a time. -
Easy integration : Apart from being customizable,
Odoo
isAPI-friendly
and easy to integrate with any other application.
However, APPSeCONNECT
is a Business Process Automation tool, this will allow you to develop and configure seamless integration between business applications.
Therefore, application configuration is a fundamental activity prior to the process of integration. If your chosen application is
Odoo
, credentials need to be provided for validating them in OP
agent. Here you will find the detailed description on
how to configure the agents for the application Odoo
, Troubleshooting issues, action and its filters.
Pre-requisites for Odoo Configuration
1) Create an account in odoo with necessary credentials.
2) Click here to know the authentication mechanism and APIs of the application along with their structures.
3) Email ID and Password of Odoo
application to login successfully.
4) BaseURL
, Database Name
, UserName
and Password
of the application to validate the credentials in the agent.
On-Premise Agent Configuration
Installation of On-Premise Agent
You need to install the agent on your local server. To Know about On-Premise Agent Configuration, Click here.
How to configure Odoo Application in OP Agent
1) Create a processflow with Odoo
as source or destination application, and deploy the processflow in On-Premise agent.
2) Open the agent and click the checkbox in Settings Panel.
3) Move into the App Configurational Panel of the agent and configure the details of the respective application.
Steps to configure the credentials in the OP agent
1) Open the OP Agent by providing valid credentials.
2) In the App Configurations panel of the agent, click on the +
button, beside the application Odoo
.
The credential panel opens for the application Odoo
.
3)Provide the Base Url
, Database Name
, User Name
and Password
.
4) Click on the “Validate” button, to validate the connection. A message Test Connection Successful
will appear
if all the credentials provided by you for Odoo
is valid. After validating the credentials, click “Save” button to save the credetials.
Following the above processes, you can configure the Odoo
application in the OP agent.
Troubleshooting
ISSUE 1
Some of the basic troubleshooting issue happens due to improper validations or even if it is accurately validated but the
processflows do not sync the data successfully. This basic issue resolves after removing the Temp and Cache
files from the
portal and from your system. Therefore, after clearing the Temp and Cache files, again deploy and execute
your processflow.
ISSUE 2
User validation may fail due to invaild Base URL
, Database Name
, User Name
and Password
.
Check the credentials once again and re-Validate the credentials.
Attributes and Actions
While defining a connection to an API in Odoo
, you require clear understanding about the data requirements and endpoint configurations.
You can refer to this document to find all the endpoint details of Odoo
application. To define the endpoint in APPSeCONNECT
, you need
to define Schemas and Actions. Actions are specifically targeted for an endpoint while schema is the data needed to execute the API. Here is the
list of some of the pre-packaged API actions defined for you which you can easily plug and play while doing your integration.
Endpoint | Action | Action Type | Schema | UI Help | API Path |
---|---|---|---|---|---|
/api/product.template/search | product.template | GET | products | Retrieves a number of products. | - |
/api/res.users/search | res.users | GET | users | Retrieves a number of users. | - |
/api/res.users/create | res.users | POST | users | Creates a new in the application. | - |
/api/product.template/ | product.template | PUT | product | Updates contents of the data of the application | - |
Action Filter Implementation
Data is fetched from source application using APIs
, and as you are aware of, API provides filters
which will allow you to specify a subset of data from the whole bunch of data created in the server,
the same can be specified through Actions and Action filters. The Action generally defines the
endpoint of the application which is being fetched, while the filters define the search criteria
of the data. You can add any parameters in the action filter
to define the search criteria.
The parameters are added in the body section of the action filter. We shall look into, how
you can provide the action filter.
Let us consider that any user wants to fetch registered users
from Odoo
. You need to know the API strcuture
of each such endpoints
to fulfill your request. From the API
structure, we are using domain
keyword as the key and mention the id
of the users in the value field.
{
"success": true,
"message": "Allowed all Models Permission: all",
"responseCode": 2,
"domain": "[('id','in',[10,11,12,13,14])]",
"object_name": "res.users",
"permisssions": {
"read": true,
"write": true,
"delete": true,
"create": true
},
"model_id": 90,
"data": [
{
"partner_id": [
{
"id": 45
}
],
"login": "seek",
"signature": false,
"active": true,
"action_id": [],
"log_ids": [
{
"id": 20
}
],
"share": true,
"company_id": [
{
"id": 1
}
],
"alias_id": [],
"notification_type": "email",
"out_of_office_message": false,
"odoobot_state": "not_initialized",
"sale_team_id": [],
"oauth_provider_id": [],
"oauth_uid": false,
"oauth_access_token": false,
"website_id": [],
"id": 10,
"create_uid": [
{
"id": 2
}
],
"create_date": "2020-05-25T11:28:05.386938",
"write_uid": [
{
"id": 1
}
],
"write_date": "2020-08-10T13:42:06.490660"
},
{
"partner_id": [
{
"id": 48
}
],
"login": "shubham.chandani081@webkul.com",
"signature": false,
"active": true,
"action_id": [],
"log_ids": [
{
"id": 132
}
],
"share": true,
"company_id": [
{
"id": 1
}
],
"alias_id": [],
"notification_type": "email",
"out_of_office_message": false,
"odoobot_state": "not_initialized",
"sale_team_id": [],
"oauth_provider_id": [],
"oauth_uid": false,
"oauth_access_token": false,
"website_id": [],
"id": 13,
"create_uid": [
{
"id": 4
}
],
"create_date": "2020-06-22T08:52:02.479259",
"write_uid": [
{
"id": 1
}
],
"write_date": "2020-11-05T13:04:08.559024"
},
{
"partner_id": [
{
"id": 46
}
],
"login": "test",
"signature": false,
"active": true,
"action_id": [],
"share": true,
"company_id": [
{
"id": 1
}
],
"alias_id": [],
"notification_type": "email",
"out_of_office_message": false,
"odoobot_state": "not_initialized",
"sale_team_id": [],
"oauth_provider_id": [],
"oauth_uid": false,
"oauth_access_token": false,
"website_id": [],
"id": 11,
"create_uid": [
{
"id": 4
}
],
"create_date": "2020-06-02T12:14:33.012711",
"write_uid": [
{
"id": 4
}
],
"write_date": "2020-06-02T12:14:33.012711"
},
{
"partner_id": [
{
"id": 47
}
],
"login": "test32@webkul.com",
"signature": false,
"active": true,
"action_id": [],
"share": true,
"company_id": [
{
"id": 1
}
],
"alias_id": [],
"notification_type": "email",
"out_of_office_message": false,
"odoobot_state": "not_initialized",
"sale_team_id": [],
"oauth_provider_id": [],
"oauth_uid": false,
"oauth_access_token": false,
"website_id": [],
"id": 12,
"create_uid": [
{
"id": 4
}
],
"create_date": "2020-06-15T11:19:16.840137",
"write_uid": [
{
"id": 4
}
],
"write_date": "2020-06-15T11:19:16.840137"
}
]
}
However, while fetching sales order
, you need to use create_date
as the key, specify any operator(<=,<,>,>=)
and the date in the value field such as 2020-10-30
. If you use <=
, then sales orders created before the mentioned date
will be retrieved.