Sales and Invoicing

Last updated: March 25, 2019

Sales and Invoicing


Each business is identified with at least one product. In reality, what is a product? A product can be anything in form that can be offered to a market that may fulfill the customer’s specific want or need. In retailing, products are called stock. In manufacturing, products are purchased as crude materials and are sold as completed merchandise.

The beginning stage of any ERP programming clearly include the product generation task. All the data with respect to a product is put away in the framework for a better management of product. Odoo has a striking product creation office. Utilizing it, the client can determine the subtleties of product like picture, name of the product, type of the product, procurement subtleties, stock subtleties, purchases and bookkeeping subtleties.

A decent ERP programming like Odoo will likewise store the product subtleties like reordering rules, bill of materials if the item is saleable, also draft the manufacturing request if the item is available, and related sales request and buy orders and so on.

The client can set diverse depictions of the product to the provider and the client under Odoo.

As you open the sales module and select the product button, you can see that Odoo has just enrolled couple of items for your need. Anyway one can make another new product in understanding to the business need.

All you need to do is Go to Sales->Product->Create

As soon as you click on the CREATE button, you will be navigated to a new window with a product info.There you can click on the EDIT button and make all the necessary changes to the product and its associated subtilities.

The creation form will look like:

Product name: It is the name which will be displayed on all other screens that refer to this specific product.

Can be Sold: To remove a product from showing up on ‘sales product’ list, uncheck the Can be Sold button. Generally, this is used while creating a raw material or a product for internal consumption.

Product Type: Product Type is the first option on the Information tab. There are three available product types:

  • Services: A service is a non-material product which you provide. This type of product will configure at the time when your company is providing any type of services to your customers. Therefore it does not appear in the various stock operations. In Odoo, the services are also considered as a product. But user can't keep the stock of a service.
  • Consumables: A product for which the user doesn't want to manage the inventory (no quantity on hand or forecasted) but that can be received from the supplier or delivered to the customer. Odoo assumes that the product always has enough stock
  • Stockable: The product which is managed with Inventory. This product is used in stock management and its replenishment is more or less automated by the rules defined in the system. In Stockable product, you can easily maintain your minimum stock level by defining reordering rule for stock in your system, so that your stock will not reach to out of stock. If you do not set Reordering rule, Odoo ERP will show-up warning messages in quotation, if there isn’t enough balance in the stock. Odoo ERP will prevent processing delivery orders that don’t have balances in the stock and it can be processed only by force availability button in the delivery order.

Product Category: User can organize the products under a specific category.

Internal Reference: For the most part, Odoo utilizes the Product Name field and the description when displaying product information. It is very common that a company may have a coding system for its products. The Internal Reference field is useful to enter an alternative product code or number for the product in that case.

Barcode: Especially, when the number of products is more, the probability of human error also increases. Now smartly and effortlessly add/update product quantity by scanning product barcodes while receiving or delivering products in your Odoo.

Version: Defines the current version of the product.

Sales Price: The base sale price of the product, the product may be different if there are variants available.

Consumer Tax: Odoo's tax engine is very flexible and support many different type of taxes: value added taxes (VAT), eco-taxes, federal taxes, retention, withholding taxes, etc. For most countries, the chart of account you setup is automatically pre-configured with the main taxes of the country. One can create a new tax by clicking CREATE AND EDIT BUTTON

The creation form will look like

  • Tax Name: One can set the Tax name in the field.
  • Tax Scope: Sales, Purchases or None (e.g. deprecated tax). If you want to avoid using a tax, you cannot delete it because the tax is probably used in several invoices. So, in order to avoid users to continue using this tax, one should set the field Tax Scope to None.
  • Tax Computation: Taxes allow different computation mechanism: Fixed, example: an eco-tax of $1.34 per battery, Percentage, example: 15% sales tax, Percentage of price, tax included: example in Brazil, Group of taxes: allows to have a compound tax, Python Code: if you need more advanced tax mechanism, you can install the module account_tax_python and you will be able to define new taxes with Python code.
  • Tax Account: Is the account where the tax journal item will be posted. This field is optional, if you keep it empty, Odoo posts the tax journal item in the income account.
  • Tax Account on credit notes: Account that will be set on invoice tax lines for credit notes. Leave empty to use the expose account.

When you click on the advanced option:You will have the following form:

  • Label on invoices: A short text on how you want this tax to be printed on invoice line. For example, a tax named "21% on Services" can have the following label on invoice "21%".
  • Tax Group: defines where this tax is summed in the invoice footer. All the tax belonging to the same tax group will be grouped on the invoice footer. Examples of tax group: VAT, Retention.
  • Tags: Tags are used for custom reports. (usually, you can keep this field empty)
  • Include in Analytic Cost: the tax is counted as a cost and, thus, generate an analytic entry if your invoice uses analytic accounts.

Tax Cloud Category: The Tax Cloud category in Odoo allows you to correctly calculate the sales tax for every address in the United States and keeps track of which products are exempt from sales tax and in which states each exemption applies. TaxCloud calculates sales tax in real-time for every state, city, and special jurisdiction in the United States.

Cost: Cost used for stock valuation in standard price and as a first price to set in average/FIFO.

Product Variants

Configure your products with variations and select optional product items

Product variations are utilized to oversee items having diverse varieties, similar to measure, shading, and so forth. It permits dealing with the item at the layout level (for all varieties) and at the variation level (specific attributes).

For instance, an organization selling shirts may have the accompanying item:

  • B&C T-shirt
  • Sizes: S, M, L, XL, XXL
  • Hues: Blue, Red, White, Black

In this model, B&C T-Shirt is known as the item layout and B&C T-Shirt, S, Blue is a variation. Sizes and shading are properties or attributes.

To enable the choice, go to Sales/Configuration/Settings and Activate Variants and Options under Product Catalog

On the off chance if you click on the attributes button, a window simply like beneath will be showed up.

One can make another new attribute in Odoo or import from the rundown.

Here you can set the trait classification i.e. attribute category starting from the drop menu. One can likewise make another new attribute via clicking CREATE AND EDIT.

One can easily set the trait type, attribute values, and variations in Odoo.

Making Variant to a chosen product

CLICK on VARIANT. There you get to fields: Attribute and Attribute value. As you click the property line, Odoo gives you a drop down rundown. One can either pick the alternative from drop list or make another one.

To make, click CREATE AND EDIT.

One can without much of a stretch set the attribute type, attribute values, and variants in Odoo.

Effects of variants
  • Barcode: The code and standardized tag is related to a variation, not the layout. Each variation may have its own scanner tag/SKU.
  • Price: Every product variation has its own open value that is computed on the layout cost ($20) with a discretionary additional for each variation (+$3 for shading red). However, you can characterize pricelist rules that apply on the format or the variation.
  • Inventory: The stock is overseen by item variation. You don't possess shirts, you just claim "Shirts, S, Red", or "Shirts, M, Blue". For information purpose, on the item layout structure, you get the stock that is the total of each variation. (be that as it may, the real stock is registered by variation)
  • Picture: The image is identified with the variation , each variety of an item may have its own essential picture.
  • Other fields: Most of different fields has a place with the product template. On the off chance that you update them, it automatically updates every one of the variations. (precedent: Income Account, Taxes)

Utilizing variants has the accompanying effects:

  • Ecommerce: In your online shop, the client will just observe product templates in the inventory page. When the guest click on such an item, he will have choices to pick among the variations (hues, sizes, … )
  • Manufacturing: Using variations permits to characterize just a single bill of material for a product template and slight varieties for a portion of the variations. Example: rather than making a Bill of Material for "Shirt, Red, S", you make a bill of material for "Shirt" and include a few lines that are specific to the measurement S, and different lines specific to the shading Red.
  • Pricing: The default price of an item is processed utilizing the cost of the product template and include the discretionary additional value each component of the variation. Along these lines, variation costs are simpler to keep up since you don't need to set the cost for each variation. Be that as it may, it's conceivable to make pricelist guidelines to fix cost per variations as well.


Under Odoo one can choose the customer from the listed option or create a new customer.

Upon clicking CREATE button, you get a creation form like below image:

Under Odoo you have two types of customers:

  • Individual
  • Company

Contact and Address Tab: Here you have the option to completely configure a new customer of yours via adding his name, address, phone, mobile, email id, website, his preferred language( to send invoice) , tags( specializations) to make it more specific etc.

One can also choose whether the selected individual is a customer or a vendor. You can authorize the sales person from the drop down menu or create a new one.

Internal Note Tab: Internal note is a functional feature that you put comment without disturbing followers. If you want to notify a particular seller, rather than disturbing all others, you can insert an internal note in the customer form.

Sales and Purchase Tab: The creation form will look like:

  • Customer: Check this box, if this contact is a customer. It can be selected in a sales order.
  • Vendor: Check this box if this contact is a vendor. It can be selected in purchase order.
  • Delivery method : The delivery method will be used when invoicing from picking. Based on the delivery methods, Odoo enables flexible payment terms. The options are like: Immediate Payment, 15 Days, 30 Net Days, 45 Days, 2 Months, End of the following Month, 30%Advance End of the following month.
  • Bounce: Counter the number of bounced emails for the contact.
  • Payment Terms: This payment term will be used instead of the default one for sales order and customer invoices.
  • Fiscal Position: The fiscal position determines the taxes/accounts used for this contract.
  • Barcode: Use a barcode to identify this contract from the point of sale.
  • Loyalty Points: These are the points that user won as a part of loyalty program.

Accounting Tab: Enables to add the basic accounting details pertaining to the customer. The creation form will look like:

  • Bank: The name of the bank, where the customer holds the account.
  • Account number: The customer’s registered account number.
  • Account Receivable: This account will be used instead of the default one as the receivable account for the current partner.
  • Account Payable: The account will be used instead of the default one as the payable account for the current partner.

Sales Quotations

A sales quote enables an imminent purchaser to perceive what expenses would be included for the work, they might want to have done. Numerous organizations provide services that can't have a forthright cost, as the costs included can differ. This can be because of the materials that would be utilized (which can contrast contingent upon the individual needs of the client), and the labor that would be vital.

In this manner, it is a usual practice for these organizations to give the potential client a statement (or estimate) of the amount it should cost. This quotation will be made by the organization utilizing the data that the potential client gives, with respect to the applicable components that may influence the cost. A quotation can help the potential purchaser when choosing which organization to utilize, and which services they are searching for.

Quotations are the reports sent to prospects posting the assessed cost for a specific arrangement of items or administrations. The prospects can acknowledge the citation, in which case, the vender should issue a sales order, or decline it.

When you select the option QUOTATIONS from Order list in Sales Module, you get a rundown of quotations set default by Odoo. From that point, one can without much of a stretch make his very own quotations as indicated by the prospect's prerequisite and need.

Make your first Quotation in Odoo

To make your first quotation, go to Sales - > Quotations and click on CREATE. At that point, complete your quotation as pursues:

Customer and Products

The essential components to add to any quotation are the prospects or client (the individual you will send your quotation to) and the items you need to sell.

furthermore, under Order Lines, click on Add an item and select your item. Remember to physically include the quantity of things under Ordered Quantity and the Discount if material.

One can add the depiction to the additional product in Odoo

One can likewise design the product under Odoo ERP by means of clicking the alternative Configure a product. One can flawlessly determine the ideal necessities and add them to order lines.

To additionally customize the request, Odoo gets the client with different choices. In the long run, clients can choose their need.

One can likewise set the payment or installation terms in quotation. As a matter of course, Odoo offers numerous alternatives like days after the invoiced date, days after the finish of the invoiced month, days subsequent to following month and so on.

One can additionally tweak the payment terms through choosing the drop down menu. This offers adaptability to both dealer and prospect to choose over the deal.

Optional Products

Enhance the sales via recommending product

One can upgrade the sales by means of offering the alternatives like related and valuable items to clients. For example, a customer obtaining a cellphone could be offered with a defensive case, a screen spread, and headset as recommendations. This will prompt the client to purchase the needful extras from that point itself producing more deals or sales.

Proposed products can be determined to Quotation.

On the template, one can see Optional Products tab where they can include the related items or services.

The seller can also add or modify the optional products on the quotation. The vender can likewise include or change the optional products on the citation/quotation.

Add proposed products to the quotation

When opening the quotation from received email, Odoo empowers the client to add the proposed items to the order.

The product(s) will be in a flash added to their quotation while clicking on any of the little carts.

Depending upon the affirmation procedure, they can either sign or pay to affirm the quotation.

Each move done by the client to the quotation will be tracked in the sales order, giving the sales rep a chance to see it.

Quotation and Orders

Sending Quotations by Email

In customary business process, individuals use to send the citation by dispatch, it isn't effective route as it defers the exchange and quotation affirmation process, Odoo enables you to send the quotation by email and produce constant examine (real-time discussion) through email on the quotation.

Send via mail

Assumed that the quotation is arranged and prepared to be imparted to prospect, click on the SEND BY EMAIL button to send the quotation by email. An automated email will be readied dependent on the predefined layout (set up the wonderful email with substance and attachments). One can without much of a stretch review the email substance and furthermore can include the extra substance in the event that you wish to do. Later send by clicking on the SEND button.

Online customer approval on quotation

Sending an online quotation can accelerate the exchange procedure as the client can negotiate and approve the quotation online without any moment’s delay. Advantage of online approval is that it can help in boosting sales process and limit the sales cycle.

Online signature

Odoo provisions to utilize online signature to get orders consequently confirmed. Both the merchant and the client can spare time by utilizing this component, unlike customary procedure say courier.

To activate Online Signature Option, Go to SALES ‣ Configuration ‣ Settings and activate the Online Signature & Online Payment feature.

Validate an order with a signature

When the quotation is send over the customer, they can acknowledge it and sign online in a flash.

Once quotation gets signed, it denotes the state of confirmation and soon delivery will start.

Confirming order via getting paid

Under Odoo, one can utilize online payments to get the requests automatically affirmed. This activity helps in sparing the time of both client and merchant.

Activate online payment

Go to SALES ‣ Configuration ‣ Settings and activate the Online Signature & Payment feature.

Under the Payment Acquirers menu, one can select and configure the acquirers of choice such as Paypal, Authorize.Net ,Wire Transfer and more.


If you are utilizing quotation templates, one can pick a default setting for every quotation layout.

Registering a payment

From the sent quotation email, the client can easily make payment online.


All the correspondence made regarding this quotation can be followed in the chatter. The messages send over the client or got from the client will be made accessible beneath the quotation. All the correspondence history will be safeguarded and will be made accessible when quotation gets changed over to sales order.

Marking Quotation Deadlines

It is imperative to mark a due date or deadline in the wake of sending the quotation. This practice helps in drawing your client without hesitation with the dread of passing up an offer. Furthermore, deadline helps to shield the vender from satisfying a request that isn't financially savvy.

Set a due date/deadline

On each quotation or sales order, one can include an Expiration Date.

Use due date in templates

You can likewise set a default due date or deadline in a Quotation Template. Each time when the template is utilized in a quotation, that due date is applied.

On the client side, they will see this.

Setting Different Addresses to Delivery and Invoice

Odoo enables the alternative to configure distinctive addresses for delivery and invoicing as not every person will have a similar delivery location as their receipt location.

To activate the aforesaid feature,

Go to SALES ‣ Configuration ‣ Settings and activate the Customer Addresses feature.

Add different addresses to a quotation or sales order

In the event that you select a client with an invoice and conveyance address set, Odoo will automatically utilize those for conveyance or delivery. On the off chance that there's solitary one location set, then in that case Odoo will utilize that one for both conveyance and invoicing. However, one can transform it quickly and make another one ideal from quotation or sales order.

Adding of invoice & delivery addresses to a customer

If you need to add them to a client before a quotation or sales order, they are added to the client form. Go to any customers form under SALES ‣ Orders ‣ Customers.

From that point you can add new addresses to the client.

Different locations on the quotation/sales orders.

These two addresses will at that point be utilized on quotation or sales order you send by email or print.

Adding Terms and Conditions to Quotations

Terms and conditions dependably help in keeping up great relations between the partners. Same like, adding terms and conditions to quotations help in structuring great connection among customer and merchant. Merchant needs to pronounce all information as for products and company policy, so the customer get a thought preceding focusing on anything.

Odoo helps in setting default terms and conditions on each quotation, sales order and receipt. To trigger the activity,

Go to SALES ‣ Configuration ‣ Settings and activate Default Terms & Conditions. Under the box, one can include default terms and conditions. They will at that point show up on each quotation, SO and receipt.

Set up more detailed terms & conditions

One can likewise attach an external record with progressively itemized and organized conditions to the email you send to your client. One can likewise set a default attachment for all quotation mails sent.

Sales Warnings

The Warnings feature enables you to raise alerts or blocking messages on buy orders dependent on a merchant or an item.

For instance, in the event that you frequently have an issue with a merchant, you should need to raise a notice when buying from that seller. On the off chance that an item is going to be suspended, you might need to raise a blocking message on the buy request.


For this feature, go to Sales ‣ Configuration ‣ Settings and activate the Sales Warnings .

Add a warning on a vendor

When you activate the warnings feature, you get another alternative under the Internal Notes tab on merchants. You can choose to compose a basic cautioning or a blocking message.

Add a warning on a product

When you enact the feature, you get another choice under the Purchase tab on the product page where you can include a notice or a blocking message.

While attempting to purchase the products with alerts or blocking messages

In the event that you attempt to approve a Purchase Order from a seller or with an item with a notice, a message will be raised. You can disregard it by clicking OK.

Nonetheless, on the off chance that it is a blocking message, you can't overlook it.

Lock confirmed Sales

When a request is affirmed, you can bolt it counteracting any further altering.


For this feature to work, go to Sales ‣ Configuration ‣ Settings and activate the Lock Confirmed Sales feature

Lock an order

While chipping away at a business request, when you affirm it, you would then be able to bolt the request forestalling any further alteration on the record.

Quotation Template

Create quick quotation using quotation template.

If you frequently pitch similar products or services to a prospect, you can spare a great deal of time by making custom quotation layouts in Odoo. By utilizing a template format you can send a complete citation in a matter of moments.

To avail the feature, go to Sales ‣ Configuration ‣ Settings and activate Quotations Templates.

Create your first template

You will discover the templates menu under Sales ‣ Configuration.

You would then be able to make or alter a current one.

After naming the template, one can without much of a stretch select the product(s) and their amount. Under the quotation template one can likewise set the lapse time for the specific quotation, optional products/items and affirmation mode for the quotation.

Altering Quotation Templates

To edit the quotation templates, go to Sales->Configuration->Quotation Templates. Upon clicking the EDIT Template option, you will be navigated to the quotation editor. One can thereafter edit the template’s customer interface via depicting company, logo, services and products.

Utilizing a quotation template

While making a quotation you can choose a template layout. Every item in that format will be added to your quotation.


To parameter charges, essentially go on the Taxes field of the order line and click on Create and Edit. Fill in the subtleties (for instance that you are liable to a 15% tax on your deals, just fill in the perfect sum in rate) and save.

Changing the Quotation Layout

In the event that you need your archives be it the sales order or invoices to be imprinted on an organization letterhead with legitimate header and footer, no stresses. Odoo gets you 4 different format choices to pick according to the need.

The quotation layout can be transformed from the Settings/General Settings under Document Template area. There you can change the archive design. One can enter the organization data, for example, name, address, cash and logo. Base of the popup windows you can pick the design for all your authoritative report which will be printed with header and footer.

Setting default terms and condition on quotation

Each quotation issued to the prospect need terms and conditions, those terms and conditions are acknowledged by the client at the season of tolerating the citation.

The most well-known terms and conditions incorporates the installment terms, conveyance date, and duty illumination, there are numerous different focuses as underneath can be incorporated into the terms and conditions:

  • Acceptance
  • Payment Terms
  • Taxes
  • Warranty
  • Claims
  • Returns
  • Shipment
  • Security Interest
  • Cancellation
  • Indemnification
  • Governing Law

Product and Taxes

Applying default taxes on products or sales order

Tax/Duties connected in your nation are installed automatically for general confinements say localization. Default charges set in sales order and solicitations originate from every product’s Invoicing tab. Such expenses are utilized when you pitch to organizations that are in a similar nation/state than you.

All the new products/ items made in the Odoo take the default charge set in the Accounting/Invoicing settings.

To change the default charges set for any new item made, go to Invoicing - > Configuration - > Settings.

Applying taxes conditioning customer status or localization

The sales tax is constantly connected to client status or localization. To outline diverse deals charges, Odoo has brought the element Fiscal Positions.

The fiscal position goes about as a lot of principles that maps default charges (as characterized on item structure) into different tax assessments. The fundamental fiscal positions are automatically made agreeing the client confinement/localization. However, one may need to make fiscal positions for explicit use cases. To characterize fiscal positions, go to Invoicing/Accounting ‣ Configuration ‣ Fiscal Positions

Adapt taxes to your customer status

In the event that a client falls into a particular tax collection rule, you have to apply a duty mapping. To do as such, create a fiscal position and allot it to your clients.

Adapt taxes to your customer address (destination-based)

Contingent upon your localization, sales taxes might be origin based or destination based. Most states or nations expect you to gather charges at the rate of the destination (for example your purchaser's location) while some others require to gather them at the rate viable at the point of origin (for example your office or stockroom).

If you are under the destination-based rule, create one fiscal position per tax-mapping to apply.

Check the case Detect Automatically

Select a country group, country, state or city to trigger the duty mapping.

In the event that no fiscal position is determined to the client, Odoo will pick the fiscal position matching to the transportation address on making a request.

Specific use cases

In the event that, for some fiscal positions, you need to evacuate a tax, rather than supplanting by another, simply keep the Tax to Apply field empty/ unfilled.


Discounts on sales order line

change over a prospect into a client, organizations utilize a few strategies. Permitting discounts on quotations is a typical sales practice conveyed by the businessmen.

Under Odoo ERP, on every template, one can determine limits or discounts by means of actuating the choice in the Sales settings. The base price is set in the product configuration and can be adjusted by client pricelists.

Discounts and Pricelists

Applying Discounts on Quotations

Permitting discounts on quotations improves the opportunity of changing over the prospect into a client and furthermore promising the prospect to settle the negotiations rapidly.


If you might want to offer 5% rebate to our client on the sales price, the feature can be enacted or activated from Configuration/Settings, under the Pricing area.

Later make a quotation and apply discount. By default, the markdown won't be connected as we apply manual rebate in the sales order line. The cost will change automatically when you enter the rebate or discount.

Printing quotation

Discount segment will be showed up on the quotation when you have applied discount on any of the product on quotation. Try not to be astonished on the off chance that you don't see the rebate segment on the quotation, which implies that you have not applied on any of the item on quotation as you would prefer not to offer discount to your client.

Manage promotion & coupon programs

In order to ensure the business profit, there should always be a backup or an alternative plan to hold and attract the customers at large. Odoo sales allow you to manage your sales in the most efficient manner. Here Odoo presents a new tool named “Promotion Programs” which helps the end user to create the promotion for their products as per the current needs. Promotional programs can be used as a marketing tool where you can target the specific audience and can implement the loyalty program.

Coupons are used to generate limited discounts. A coupon is a one-time use code that will generate the discount for the customers.

This is the content for Layout P Tag

Coming to promotion programs, there are different fields in Odoo

  • Conditions
      Based on customers
    • This coupon program will be applied to the selected customers only.
    • One can filter the customers according to the need.
    • By default, all the customer records will be taken
      Based on Products
    • On purchase of this selected products rewards will be given
    • We can filter products according to our need.
    • By default, all products records that can be sold will be taken.
    • Minimum required product quantity to get rewarded
      Minimum purchase Of
    • Minimum required the amount to get rewarded
      Promo code Usage
    • Automatically Applied: No code is required. If the rule is met, the reward is applied (Except global discount)
    • Use code: If the program rule is met the valid code needs to add the reward.
Create sale order for the customer

Click on the Apply coupon and the promotion rules will be added to the order. If the promotion rule requires code then there will be a wizard to enter the code.

Adapting product price upon customer segment (e.g. Retailer or Distributor) and applying discounts

Sales and distribution works at the edge of margins; the level of margins are fixed for the wholesaler’s dependent on their turnover. The MRP of the item is chosen including the margins for the retailers, stockiest, wholesalers.

Odoo embeds with powerful pricelist feature to support the pricing strategy needed for your business. A pricelist is a list of prices or price rules that Odoo searches to determine the suggested price. One can seamlessly create a specific pricelist or a price rate for a specific customer. The pricelist or price rate can be for a specific product or for a group of products.

One can set several criteria’s in Odoo to use a specific price: It can be: Periods, Quantity, Quality, Service, Economic environment, Competition, Product demand. By using Odoo pricelist, one can easily manage the product pricing depending on the company needs. As pricelists only suggest prices, they can be overridden by users completing sales orders. One can choose the pricing strategy from Sales ‣ Settings.

One can choose the pricing strategy from Sales settings. Go to the settings of Sales, enable the option Multiple Sales Prices per product via ticking the checkbox. Save changes.

There are 2 types of sales pricelist in Odoo.

1) Multiple prices per product (e.g. customer segments, currencies)

The option can be used for creating pricelists for your customer segments or to set different pricelists with different currencies.

2) Prices computed from formulas (discounts, margins, rounding)

The option allows to set price change rules. Changes can be relative to the public price, product cost price, or to another pricelist. Calculation of changes is made upon the surcharges and discounts making it fit the minimum and maximum margin set by the user. Further, Odoo enables the rounding of prices to the nearest cent or dollar or even the multiple of both.

In order to choose your option that you desire, or to know the working of both options, one need to first select multiple prices per product (e.g. customer segments, currencies) and later go to Products tab and choose Pricelist. There you can see the available list of pricelists.

Sales ->Products -> Pricelists

Apart from the listed, one can also create a new pricelist by clicking the “Create” button. The pricelist form will be like the below image.

Here are some important parameters to know:

Discount Policy

1. Discount included in the price.

It does not show the public price and discounts to the customer

Here discount (%) column shows zero discount, but the unit price will get changed according to the set discount.

2. Show public price & discount to the customer

It shows public price and discounts to the customer.

Here discount (%) column shows the percentage discount, but the unit price column shows the public price of the product.


One can set different currency pricelists. E.g. Public price,(USD)

One can also edit and create a new currency pricelist in Odoo.

Country Groups

Odoo provisions to select the country groups, where one want to restrict the application of that specific pricelist.

Prices per Customer Segment and Currencies

Pricelist can also be used to manage the prices in Foreign Currencies.

Check for allowing the multicurrency option in Accounting module (if not installed, then install the Accounting/invoicing module) -> Settings -> Currencies and activate Multi-currencies.

To activate new currency, select Activate other currencies, select it in the list and activate the currency you want. You can see the currencies drop-down lists.

Set a product’s sales pricelist at public price in your company’s main currency.

One can also set different prices for the same product by using different pricelists having different currencies.

To Segment your customer, open the customer form and change the Sales pricelist in the Sales & Purchase tab. One can manually change the default pricelist by selecting available pricelists from the drop box.

One can also apply temporary price in a period. In order to apply this enter start and end dates.

Min.Quantity: Minimum quantity for which the pricelist will be applied. One can also set prices per minimum quantity.

Prices Computed from Formulas

For enabling the second option Prices computed from formulas (discounts, margins, rounding) go to Sales -> Configuration -> Settings -> Pricing -> Multiple Sales Prices per product

Select Prices computed from formulas (discounts, margins, rounding).

When we enable this option the pricelist form will look like the below image.

Add the pricelist items for the pricelist and add rules for calculating the prices for the products.

Later click Add an item to add the pricelist items. A new window will be opened just like below.

Here are some important parameters that you need to understand before creating a pricelist.

Apply on: One can apply rule by following options.

  • Global– To apply pricelist on all products.
  • Product category– To apply pricelist on selected product category (eg. sealable, fruits, electronics)
  • Product– To apply pricelist on a specific product.
  • Product variants– To apply pricelist on specific product variants.
  • Minimum Quantity– Minimum quantity that is required to apply Pricelist rule.
  • Start Date– Starting date for applying pricelist.
  • End Date– Ending date for applying pricelist.

Price computation: Used for calculating the price in different methods.

  • Fix price– To apply a fixed price for a product or group of products.
  • Percentage (discount) – To define a percentage discount on the sales price of products/product variants/product category.
  • Formula– Price of the product will be calculated by using formula.
  • Public price: Formula will be calculated on Sales price of the product.
  • Cost: Formula will be calculated on cost.
  • Other pricelist: Formula will be calculated on other pricelist.
  • Price Discount– Field to enter percentage discounts to the price.
  • Minimum margin– Option to ensure the minimum profit per product.
  • Maximum margin– Option to set the maximum profit per product.
  • Surcharge– It’s a fixed supplement to the price. An additional charge or discount charge used to calculate the new price. This amount is just added (subtracted if negative) to the amount calculated with the field of price discount.
  • Rounding method– Prices can be rounded to the nearest cent/dollar or multiple of either (nearest 5 cents, nearest 10 dollars)
Sale and Purchase in Different Unit of Measure

Now and again, dealing with products in various unit of measures is vital. For instance, in the event that you purchase items in a nation where the metric measuring standard is of utilization and sell them in a nation where the imperial framework is utilized, you should change over the units. Odoo empowers to work with various units of measure for one item.

For that, go to Sales/Configuration / Settings and Activate Units of Measure under Product Catalog

While doing inter-unit exchanges, the rounding adjustments are automatically done by Odoo.

The unit of measure can be changed all through the entire procedure. The main condition is that the unit of measure is a piece of a similar classification.

Sell items by different of unit # per package

The bundle is the physical holder in which you put one or a few item. Package is the physical holder that secures your item. In the event that you are selling PCs, the package contains the PC with the notice and the power plug. In Odoo, packaging are simply utilized for demonstrative reason.

When to utilize Product Packaging?
For instance, you are selling eggs. In your distribution center, you deal with the eggs independently. Loads of eggs are rejected and you do it egg by egg. The unit of measure is Unit(s).

In the event that you are selling eggs by the dozen, the selling unit of measure ends up dozen. You will set it on your sales order. The cardboard plate that contains the dozen of eggs is the package. When you are selling a few plate, you may wrap all the plate into a container or in a plastic wrapping. It turns into the bundle.

A few bundles may have distinctive items. This is the thing that we state Put in Pack in Odoo. For instance a sales order containing 5 distinct items to a specific client. The items might have diverse amounts. So at the season of conveyance, one can assemble this all into a solitary pack, with the goal that we just need to send a solitary box or bundle to the client.

In Odoo, one can likewise put diverse results of various deals request in a solitary or distinctive bundle appropriately at the season of conveyance from the stock. For instance, If a client requested a PC, it will comprises of various items like CPU, mouse, console, screen, links and so forth. So for this situation, it will be useful in the event that we put every one of these items in a solitary pack.

The third is the Delivery Package. The delivery package of Odoo will be accessible in the setup menu thing under the stock. The motivation behind the delivery package is to make a pack of compartment. How about we investigate an ongoing model. The delivery package can be made relevant if the organization is exchanging a few merchandise to a specific area or to the client itself. On the off chance that every one of the items or item bundles of various clients should be sent to a specific area, at that point every one of the things can be put into a solitary holder for the simpler transportation, at that point this compartment can be named as a conveyance bundle.

To trigger the action, go to Sales/Configuration / Settings and Activate Product Packagings under Product Catalog

To enable the package, one should tick a few choices in settings. One needs to give get to consent to the client for the packages.

Settings -> User & Companies -> Users

At that point pick the client, and in the client settings, tick the two choices,

  • Manage Packages
  • Manage Product Packaging

By this, the end client is offering authorization to the specific client to deal with the product packaging.

After enabling the settings, one has to set up the product. So as to put the products in the packages, one needs to guarantee the kind of the product that it is storable.

Presently in the Inventory tab of the item, the end client can make different packages for this item. As in the picture you can see that there are different bundles or packages for a solitary product, it characterizes that the item can be sold in various packets.

One can likewise get the pdf report of the package list from the print menu.


In many organizations, salesmen make quotations that become sales order when they are approved. Afterward, draft invoices are made dependent on the sales order. You have distinctive alternatives like:

Invoice Manually: use a button on the sales order to trigger the draft receipt.

Invoice before delivery: receipt the full request before setting off the conveyance request

Invoice based on delivery order

Invoice before delivery is normally utilized by the online business application like ecommerce when the client pays at the request and we convey a short time later.

For most other use cases, it's recommended to invoice manually. It allows the salesperson to trigger the invoice on demand with options: For most other use cases, it's prescribed to invoice manually. It enables the sales rep to trigger the receipt on demand with choices: invoice the whole order, invoice a percentage (advance), invoice some lines, and invoice a fixed advance.

This procedure is favorable to both services and physical items.

Invoice based on delivered or ordered quantities

Odoo enables with two options for invoicing:

Invoice what is ordered: invoice the full order as soon as the sales order is confirmed.

Invoice what is delivered: invoice on what you delivered even if it's a partial delivery.

The two choices depend on the business and what the dealer needs to send. The advantages of utilizing Invoice based on delivered amount relies upon your sort of business, when you sell material, fluids or sustenance in expansive amounts the amount may separate a smidgen and it is in this manner better to receipt the real conveyed amount.

Send the invoice

When you affirm the deal, you can see the delivered and invoiced amounts.

On the off chance that one set it in ordered quantities, they can invoice when the sales is affirmed. However if you select the delivered quantities, the end client will initially need to approve the delivery. When the items are delivered, it tends to be invoiced to the client. Odoo will consequently add the amounts to the invoice dependent on what number of deliveries (in the event that you completed a fractional conveyance).

Automatic Invoice

Odoo enables to generate the invoice automatically when the online payment is confirmed.

To trigger the action, go to Sales/Configuration / Settings and Activate Automatic Invoicing under Invoicing

Requesting Down payment

Under Odoo, when you confirm a deal, you can make an invoice and select an initial payment alternative. The download payment can either be a fixed sum or a level of the aggregate sum.

The first occasion when you demand an upfront payment you can choose a pay account and a tax setting that will be reused for next up front installments.

Change the income account and customer taxes

From the items list, look for Down Payment.

You can then edit it, under the invoicing tab.

Sending Pro-forma Invoice to Customer

The pro-forma invoice is mainly utilized as an essential receipt with quotations ahead of time of a product delivery. It takes note of the kind and quantity of merchandise, their esteem, and other significant data, for example, weight and transportation charges. The pro-forma invoice contrast from a typical invoice in not being an demand or request for installment.

To trigger the action

Go to SALES ‣ Configuration ‣ Settings and activate the Pro-Forma Invoice feature.

Send a pro-forma invoic

One can send the pro-forma invoice from any quotation or sales order.

When you click on send, Odoo will send an email with the pro-forma invoice in attachment.


In Odoo, it's impractical to change an invoice that has been approved and sent to the client. On the off chance that a mistake was made on an approved receipt, the legitimate method to deal with that is to refund the receipt, reconcile it with the first invoice receipt to close them and make another receipt.

Altering an approved invoice

In the event that you have to change a current invoice, utilize the Refund Invoice button on the receipt. In the discount strategy field, select "Change: make a discount, accommodate, and make another draft receipt".

Odoo will automatically:

Create a refund for your invoice

Reconcile the refund invoice with the original invoice (marking both as Paid)

Create a new draft invoice you can modify

Later the end client can alter the draft invoice and approve it once it's correct.

Cancelling an invoice

If you need to cancel an existing invoice, use the Refund Invoice button on the invoice. In the refund method field, select "Cancel: create a refund and reconcile".

One can send the refund via mail to the customer.

Refunding part of an invoice

If case if you require to refund an existing invoice partially, go for the option Refund Invoice button on the invoice. In the refund method field, select "Create a draft refund".

Odoo automatically compose a draft refund. The end client can thereby modify the refund and validate it. Later send the refund via mail to the customer.


Compute shipping costs on orders

Product Delivery whenever it might suit client is an unavoidable factor in the present business condition. The Ecommerce sites as well as a large portion of the disconnected retailers additionally embraced this procedure for giving better shopper experience. The shipment and conveyance are commonly done by the outsider specialist co-ops like DHL, FedEx, and so forth.

Odoo can deal with different delivery methods, however it is not activated default. Odoo ERP gives the alternative to arrange different delivery techniques in it. It will rearrange the tasks like transportation mode, conveyance cost figuring, shipment tracking and so forth. Odoo delivery integration is accessible for DHL, FedEx, Temando, UPS, USPS and the sky is the limit from there. Delivery Methods enable you to deal with the transportation company, the cost and the destination. You can even integrate Odoo with outside shippers to compute the genuine cost and the packaging.

If you go to Sales->Configuration->Settings->Shipping costs,

One can seamlessly compute their shipping costs on orders. Meanwhile the end client need to choose their delivery methods from the enlisted option.

Right off the bat, name the new delivery method. Next is the supplier field, which can be either fixed price or Based on Rules. On the off chance that we set the fixed price, at that point the delivery cost will be a fixed sum (Or it very well may be without invalid conveyance). On the other hand if it is based on rules , it enable you to set the expense dynamically. In view of rules, it is for processing the conveyance cost based on certain guidelines. The conditions, for example;

  • Weight
  • Volume
  • Weight *volume
  • Price
  • Quantity

For eg: If the product weight is greater than some esteem, sales price will be certain sum.

Utilizing this choice one can characterize distinctive standards for the delivery method according to the business needs. One can likewise set limitations on our delivery methods. The delivery destination can be confined to explicit nations, states or even postal divisions. It will redo delivery method as indicated by geographic area.

Make a sales order and select the delivery method. On the off chance that you need to invoice the delivery cost on sale order, click on Set Price button, it will include a line with the name of the delivery method as a product at that point of confirming the request.

As you select the delivery methods, Odoo provisions to additionally alter the delivery method, through various setting process. Here the vender can pick the supplier from the default choices or introduce more suppliers in the event that he needs.

Further he can give the level of the margin rate to the item and furthermore set a rate for offering free delivery service, if the rate is above than the referenced.


One need to constantly monitor the team's performance in order to take accurate and relevant decisions for the business good. The Reporting section of Odoo Sales represents a very important tool that helps in getting the complete insight of the company's sales.



Cybrosys Technologies Pvt. Ltd.
Neospace, Kinfra Techno Park
Kakkancherry, Calicut
Kerala, India - 673635



Cybrosys Technologies Pvt. Ltd.
1st Floor, Thapasya Building,
Infopark, Kakkanad,
Kochi, India - 682030.



Cybrosys Techno Solutions
The Estate, 8th Floor,
Dickenson Road,
Bangalore, India - 560042

Send Us A Message