Enable Dark Mode!
By: Faseela Kasim

Sales Return and Refund in Odoo 12

Functional Odoo 12 Sales

Odoo makes it easy to return the products and goods which are already sold, thus keeping your customers closer. The product return is the process of returning a product which is previously purchased by a customer, and thus, in turn, receiving the refund in the form of original payment. In Odoo,  a customer can return the purchased product even if it is paid or not yet paid. By using the return feature, the customer feels more relaxed in terms of purchasing a product. There are several reasons to return a product such as the product doesn’t match its description, the product is no longer needed, the product was damaged upon its arrival and so forth.

In this blog, I will be explaining the process with respect to return and refund of the product in terms of sales. Let’s see how we can return and refund the ordered product in Odoo.

Return not invoiced product 

Firstly install the sales module and create a new quotation or sales order via choosing a customer and product. One can either use the already created customer and product or newly create customer and product. Let’s create a new sales order and confirm it.


In the above image, a new sales order is created, with ordered quantity 10. Let's check the quantity on hand of the product.

The quantity on hand is set as 100. You can see them marked in the below image.


Receive the products and validate the inventory. Now the customer has received the product,  but not yet paid for the product (eg- cash on delivery). However, if the customer doesn’t like the product and wants to return the product, he can use the option, ”return” as shown in the below image.


Click on return. This action will trigger a pop-up notification to choose the number of quantities to be returned. The customer can return full ordered quantities or partial quantities. By default, the quantity is set as the ordered quantity, however, one can change the quantity.


Let’s set the return quantity as 5. Later click on the return button. Now the quantity on hand will not be changed, but the forecasted quantity is added with 5. So the current forecasted quantity is 95 (90+5).


Now validate the inventory, so that the return is confirmed and the quantity on hand is added with 5 returned quantity (90+5).


Return the invoiced product 

Create an invoice for the sale order by choosing invoiceable lines after validating the inventory. The created invoice amount is the same as the customer bought. Later register the payment and pay for the invoice. Then return the product via choosing return in delivery options. If a customer has already made the payment for the product,  then, in that case, one has to refund the amount to the customer. So here comes the case of the Add credit note. In Odoo, the refund is initiated through Add credit note.

Let’s check how the return and refund of the product happen in sales if the product is paid.

Firstly, create a return of product (partial or full ordered quantity) and confirm the return as mentioned in the above case. Later, go to the invoice and choose the Add credit note option for a refund.


By choosing the Add credit note option,  a pop-up notification will be displayed. There are mainly three methods in credit note.

1. Create a draft credit note.

2. Cancel: Create a credit note and reconcile.

3. Modify: Create credit note, reconcile and create a new draft invoice.

Reason tab is used to specify the particular reason for the product return.


Now let's discuss the three methods in credit note.

1. Create a draft credit note

By using this method, one can create, edit and validate the credit note or keep the draft credit note on wait, until the document of refund is issued. By clicking on Add credit note, a draft credit note will be created. One can pay for the bill or let it wait until the document is getting ready.


The draft credit is shown in the below image,


Here, one can see that the amount is in negative format because the amount is a refund to the customer.

Now the credit note is a new draft,  here one can change the quantity, price, tax, delivery charge of the ordered product and validate the return quantity. The partial return and full ordered quantity return is possible. Here, one can go for partial returns (now ordered quantity is set as 5)


Validate the refund, now the draft is in an open state. Register the payment and pay the refund amount using the bank or cash.


Here, one can see only returned quantity of products are marked for refund.ie only 5 quantities are getting refunded. This is as per the changes made in ordered quantity in the draft credit note. Validate the payment. Now the refund is complete.

Now the amount due in the created invoice will be 0.00 as we have paid for the refund.


In the above image, one can see an option unreconcile upon clicking the information symbol right, left on the paid on the date. Let's discuss reconciliation. One cannot create another credit note on the same order until unreconcile.


The bank reconciliation is the process of matching the balance in an invoice amount with the corresponding bank statement. This process helps to confirm whether the amount in both company ledger and the bank account is the same. Odoo provides a very simple method to link the invoice with the bank statement. There are mainly two types of reconciliation in Odoo.

Two reconciliation processes exist in Odoo.

1. Reconcile open invoice with the bank statement.

2. Directly register the payment on the invoice.

When an invoice is paid using the option register payment, there will be two options to pay -bank or cash. We have chosen the bank as the method, therefore the bank reconciliation happened. Now the invoiced amount is matched with the bank statement. So the amount is reconciled. There is no more matching for that particular bank statement. If one needs to use the same invoice for any further requirements like credit note, we have to first unreconcile using the option “Unreconcile” in the customer invoice. There is an option to view in the same information tab.


The view option is used to show the payment back from the invoice.


2. Cancel: Create credit note and reconcile

This method of the credit note is used in the case of canceling the created invoice that you should not have issued. A new credit note will be created, validated and reconciled with the invoice. But one cannot make any change in the invoice.

Let’s create a new sales order, later confirm the order and validate the inventory. Also, create the invoice and register payment just like the above mentioned.


For refund, click on Add credit note. Choose the second option, cancel. A new credit note will be created the same as the invoice.


Direct refund is happening in this method. Therefore, cannot change the ordered quantity, price, tax, delivery charge. The partial refund is not possible by using this method. The complete ordered quantity will be getting refunded in a single click.


This method can be highly useful in the case of perishable goods. It will help to return food products like bread or eggs which gets expired by the time it reaches the hands of the customer. In a single click, the expired products can be returned back.

3. Modify: Create credit note, reconcile and create a new draft invoice

The third method is used for canceling the created invoices and thereby creating a new draft invoice. The credit note will be created, validated and reconciled with the current invoice. One can edit the newly created draft invoice here.

Let’s create a new sales order and confirm it.


Validate the delivery. Create an invoice and register the payment. Click on Add credit note for the returned product by choosing the third method,


Then the created invoice will be canceled and a new draft invoice will be created the same as that of canceled invoice. In case if the customer wants to purchase again, he can use the draft invoice.


The credit note is used as the refund of the ordered quantity. Here the credit note is in the state of paid. The ordered quantity, price, tax and delivery charge cannot be changed in the credit note. So the partial return is not possible in this case.


This is how the sales return and refund works in Odoo.

If you need any assistance in odoo, we are online, please chat with us.

cybrosys youtube


Leave a comment


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


Cybrosys Limited
Alpha House,
100 Borough High Street, London,
SE1 1LB, United Kingdom


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