Purchase Order from Scheduler in Odoo (OpenERP)

Procurement is most useful in Odoo (OpenERP), here I described some of steps that show your flow.

Here steps that might be useful to you.

Step 1 : Warehouse
– Create New Product
– Update Quantity on Hand
– Set Sale price and cost price
– Create Supplier for that particular product
– Create minimum stock rules for that particular product

Step 2 : Sale Order
– Create one sale order(select product and set related quantity available)
– Confirm order

Step 3 : Warehouse
– Create Delivery order
– check availability
– Process
– Validate

Step 4 : Scheduler
– Run Scheduler

Step 5 : Purchase Order
Now , you can look there is one purchase order created with related quantity.


What is Product and How to Configure Product in Odoo (OpenERP)

We will discuss about the product and how to configure product in Odoo (OpenERP).


Product Module in Odoo (OpenERP)

What is product :

A product is the item offered for sale. A product can be a service or an item. It can be physical or in virtual form.In short it will offered and serves the basic business needs like sales, purchase, manufacture and services.

We can also say product is key of ERP. To unlock the ERP with the key of product we should know about the product and how to configure product If product is not properly configured then it will creates so many issue and ERP flow is break down.


Product kanban View in Odoo (OpenERP)

How to configure product in Odoo (OpenERP) :

In Odoo (OpenERP) Product Form, There are three fields are important for stock management when you are configuring a new product

Product Type
Procurement Method
Supply Method

1] Product Type :

The Product Type determines how the product will be managed in stock management.

In Odoo (OpenERP) three distinct product types are:

(a) Stockable Product : This product is used in stock management and it will demanded in stock less or more based on it’s defined reordering rule [minimum stock rule] in the system. Examples:- Computer, shoes, beg

(b) Consumable : This product is not used in stock management. once you receive it and delivery it because this type of product stock is not maintain in the system . it just like a stock of some time of duration. Examples:- Fruit, Milk, Food …

(c) Service : This product is not used in stock management. This type of product will configure when your company is providing any type of services. Examples:- Man Power, a consulting service.

2] Procurement Method :

The procurement method determines how the product will be replenished.

In Odoo (OpenERP) two distinct procurement method are:

(a) Make to Stock : when stock is needed then the product will take from the stock, If the quantities in stock is too low to fulfill the order then it will set a quantity based on the reordering rule [minimum stock rule] in Procurement and generate purchase or manufacturing order [depends on supply method] to meet the needs of product

(b) Make to Order : when sale order is confirmed, it will not check the stock level and immediately it will generate the purchase or manufacturing order [depends on supply method] with the same quantity of ordered.

3] Supply Method :

The supply method determines the purpose of the product either it will be buy or produce.

In OpenERP two distinct supply method are:

(a) Produce : when the product is manufactured or the service is supplied from internal resources.

(b) Buy : when the product is bought from a supplier

Incoming Mail Server Setting in Odoo (OpenERP)

I would like to serve How to set-up Incoming mail server in Odoo (OpenERP) 8.0

Required module for Installation:


Go thorough Settings/Technical/Email/Incoming Mail Servers


server: imap.gmail.com
SSL Port : 993
Please make sure, that IMAP access is enabled in the account settings. Login to your account and enable IMAP.
Server: imap.mail.yahoo.com
SSL Port: 993


How to Add an Image Icon to Odoo (OpenERP) Custom Module In Odoo (OpenERP)


I would like to share with you that How to add an image icon to Odoo (OpenERP) Custom module In Odoo (OpenERP).

when you develop a custom module make a following directory in your custom module in Od00 (OpenERP).



You need to save your icon as ‘icon.png’ and place it under


Example :


Odoo (Openerp) will automatically select the icon from the static/src/img path


Custom Module Icon

Send Mail in OpenERP with Mail Templates

Now a days Mailing mechanism is to fast for any communication. Here I would like to serve you how to send mail in Odoo (OpenERP) and how to use a custom templates for sending mail.

Required module for Installation:

  • Email_templates
    First of all you need to configure outgoing email server.
    For Outing Mail Servers:
    Settings/Technical/Email/Outing Mail Servers


SSL Port 465
StartTLS Port 587

SSL Port 465

If you success to configure Odoo (Openerp) outgoing email server then lets see how to use a custom templates for sending mail.

Here First of all you need to install email_template module.This module is used to specify the format in which the email has to be send.

For Templates:


In templates need to set required field

Name : Name of the template
Applies to: Model to which the template is related [Ex: sale order]
Form: sender address
To: Destination mail address
Reply To : Preferred Reply address
Subject : Subject of the mail
Body : Body of the email [either plain text or an HTML format]
Add signature: predefine signature for all.

Main important feature of email_templates is dynamically value builder tab where you can fetch your required field from related document model and also use the field value in [Form,TO,Subject,Body] anywhere in mail template.


Field Description:

Field : Select field from Applies to model
In our Example:we select sale order modele in applies to so all sale order filed display here like [name, ref, company_id, partner_id, etc]

Sub-Model : When a relation field like many2one is selected, this field specify the Related model.
Example: partner_id is many2one field which related with res.partner

Sub-field : When a relation field is selected, this field let us select the target field inside the Sub-Model
Ex: In sub-model if you select partner_id than you can use all partner table field as sub field

Placeholder Expression : This is the resulting expression generated when the fields are selected in Dynamic Value Builder. This can be copy pasted in fields in email template.
ex: ${object.partner_id.email}

In Advanced tab you can find this many field:


Language: language of the mail
Outgoing mail server: Outgoing Mail Server configured before
Auto Delete : Permanently delete the email after sending it to save space
Attachment: to attach files on email.


Button events:

Preview: preview of mail_template
  Add context action: this creates a links in [more] in the related document model form view which helps in sending email any time from the form view.
example: I have created a template for the sale.order and a link is created by clicking “Add Context action” button in template, a link will be created as shown below screen-shot:


When you click on this link, a wizard pops up using from which we can send email to clicking send button:


Secure your Ubuntu

Quick post of a script worth using. If your openerpserver is running on a Linux server, this server should be secured. Linux is a more secure server than Windows, but still is vulnerable to attacks. If you are new to the security field in Linux, there is a tool you should try, Bastille Unix. If you are using an
Ubuntu distribution, you can install this tool with the following command:
# sudo apt-get install bastille
After running the command bastille, you will see a wizard like window interface which will guide you through the different steps of hardening your system. These steps involve setting file permissions, disabling FTP,Firewall, Printing, disabling unnecesary services and accounts. Not only this is a very good tutorial on Linux security, but also a tool for hardening your system.
Be aware that your security obligations do not end here, this is just a very good first step.


Outlook Plugin of OpenERP

Sometimes its needed to how to install plugin , we have plugin but we don’t know the way from where we install it, So, i hope this will be useful to you .  OpenERP.

–  First you need MSI file of the plugin to install this file you can find from the below path of your

– addons :

–  For 32 bit machine addons/plugin_outlook/static/openerp-outlook plugin/OpenERPOutlookPluginSetup32.msi *
–  For 64 bit machine addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup64.msi

– Double click on msi file and click on next next and finish as you install exe in windows.
Once it is installed, If office 2007 You can see the OpenERP menu.

What is landed cost in Odoo?

Basically landed cost means Product Price + Extra Price.

Ultimately, we have to calculate cost price with all extra cost(customs, duties, taxes, insurance,..) then only we able to calculate correct stock valuation.

Let’s take one example for better idea,

Suppose, i have 2 iPad mini, each priced at 150/unit.

– Selling price : 300 Euro in Belgium
– Transport charge : 9 Euro
– Duty : 11 Euro

Total Landed cost : 320 Euro at receipient address.

So here for 2 iPad mini i have total cost 320 Euro.

Product Cost price       : 300
+ Landed cost(9 + 11) :  20

Now, in my business how can i allocate landed cost charges, so for that we have different spiting methods(equally, by quantity,…)

equal : we want to allocate cost equally. So here iPad mini 160/unit

In Odoo :

Configuration :

  • install landed cost module
  • Set Costing Method : Real Price (on product category OR generic setting)
    • Inventory Valuation : Perpetual (automated) [real]
    • Stock Input Account
    • Stock Output Account
    • Stock Valuation Account

That’s it.

Full Test Case :

  • Create one product iPad Mini (stock able type)
  • Now on product category(v9) define costing method : Real Price
    • Inventory Valuation : Periodic, Stock Input A/c(asset type), Stock Output A/c(expense type), Stock Valuation A/c(asset type).


  • Create one landed cost type product(transport charge) : product type- service, Landed Costs : True
  • Create Purchase order for “2 iPad Mini” product and complete flow(receive)
  • Create Landed cost and select above incoming picking and add cost lines(transport charges) choose split method equal
  • Click on compute to calculate “Valuation Adjustments”.
  • Now simply validate

To see updated cost price of your stock :
Go to Inventory > Reports > Stock Valuation and in Inventory Value you can see the updated cost price.
Here, you can see original inventory value of your business.

Landed cost type have different split methods,

Equal : Equally allocate the landed cost to products
By Quantity : Allocate cost based on the quantity of each products
By current cost : Allocate landed cost based on current cost of each products(after multiplying qty)
By weight : Allocate landed cost based on weight of each products
By Volume : Allocate landed cost based on value of each products

How to change currency or how to configure multiple currency ?

When we are dealing with multiple currencies we need to configure those rate correctly in system.

To do, first make sure you have multiple currency activated(To activate Go to Accounting > Setting under Accounting & Finance find out “Allow multi currencies” and activate it)

After Activate go to debug mode (To do this click on your Username in the top right of the backend (in my case it was ‘Administrator’) then click on About and then Activate the Developer mode)

Now, you can see new menu added in Accounting > Configuration > Multi Currencies. You can see list of currencies, now first of all find out your company currency and set currency rate 1.0. now for the rest of currencies find out currency rate against your company currency and add it(If you have enterprise version then you can use auto update currency rate using yahoo finance,…).

That’s it.

Ex. My company currency INR, so i change current rate of INR to 1.0 and for rest of currency like EUR, USD i can set rate against INR means
1 INR = ? EUR, 1 INR = ? USD .

Landed Cost Calculation Using Various split method Odoo

Landed cost calculation based on different Split Method,

Let’s take one example and check different split method and Stock valuation.

When Sales UoM and Purchase UoM same(When Purchase UoM Different keep in mind landed cost always calculate based on Purchase UoM and inventory valuation always display in Sales UoM).

Configuration :


To work with Landed Cost first need to activate landed cost feature, to do go to Inventory > Configuration > Settings.

Configure Warehouse   Odoo

Now we need to configure Product Category to define Costing method.

Wooden   Odoo 10

Products :


Wooden Table => Cost : 100, Weight : 5, Volume : 2, Category : Wooden

Wooden Chair => Cost : 200, Weight : 8, Volume : 8, Category : Wooden

Purchase Order :


Wooden Table => with Qty : 1, cost : 100

Wooden Chair => with Qty : 2, cost : 200

PO00005   Odoo

Landed cost Type :


Transportation => Cost:  20

Duties => Cost:  15



Result with Different Split methods in Landed cost :


Equal :

Transportation = 20 / (no. of products 2) = 10

Duties = 15 / (no. of products 2) = 7.5

LC 2016 0014   Odoo

   Valuation :

    Wooden Table => 100 + Transportation(10) + Duties(7.5) = 117.5

    Wooden Chair => 200 * qty(2) + Transportation(10) + Duties(7.5) = 417.5

By Quantity :

Allocate cost based on qty, here we have wooden table with qty 1 and wooden chair with qty 2 so we have to allocate cost among 1:2 ratio.

Transportation = 20

                       So, For Wooden Table = (20 * 1)/3 = 6.67

                        For Wooden Chair = (20 * 2)/3 = 13.33

Duties = 15

              So, For Wooden Table = (15 * 1)/3 = 5

                  For Wooden Chair = (15 * 2)/3 = 10

LC 2016 0002   Odoo   

Valuation :

    Wooden Table => 100 + Transportation(6.67) + Duties(5) = 111.67

    Wooden Chair => 200 * Qty(2) + Transportation(13.33) + Duties(10) = 423.33

By Current Cost :

Allocate cost based on products cost 100:400 ratio (1:4).

      Wooden Table Cost: 100 *1 (qty)

      Wooden Chair cost : 200 *2 (qty)

Transportation = 20

                    So, For Wooden Table = (20 *1)/ 5 = 4

                    For Wooden Chair = (20 * 4)/5 = 16

Duties = 15

                    So, For Wooden Table = (15 *1)/ 5 = 3

                    For Wooden Chair = (15 * 4)/5 = 12

Landed Cost 3 (1)

   Valuation :

    Wooden Table => 100 + Transportation(4) + Duties(3) = 107

    Wooden Chair => 200 * Qty(2) + Transportation(16) + Duties(12) = 428

By Weight :

Wooden Table = 5 weight and Wooden Chair = 8 weight.

So the ratio 5:8 but here for chair we have 2 qty so ratio 5:(8*2) => 5: 16

   Transportation = 20 allocate based on weight of products.

                    So, For Wooden Table = (20 *5)/ 21 = 4.76

                    For Wooden Chair = (20 * 16)/21 = 15.24        

   Duties = 15

                    So, For Wooden Table = (15 *5)/21 = 3.57

                        For Wooden Chair = (15 *16)/21 = 11.43

Landed Cost 4

Valuation :

    Wooden Table => 100 + Transportation(4.76) + Duties(3.57) = 108.35

    Wooden Chair => 200 * Qty(2) + Transportation(15.24) + Duties(11.43) = 426.65

By Volume :

   Wooden Table = 2 Volume and Wooden Chair = 8 Volume.

                  So the ratio 2:8

Transportation = 20 allocate based on Volume of products.

                    So, For Wooden Table = (20 *2)/ 10 = 4

                    For Wooden Chair = (20 * 8)/ 10 = 16

Duties = 15

                    So, For Wooden Table = (15 *2)/10 = 3

                    For Wooden Chair = (15 *8)/10 = 12

Landed Cost 5

   Valuation :

    Wooden Table => 100 + Transportation(4) + Duties(3) = 107

    Wooden Chair => 200 * Qty(2) + Transportation(16) + Duties(12) = 428

To check valuation of products first validate Landed cost and go to Inventory > Reports > Inventory Valuation.